GNU/Linux >> Linux Esercitazione >  >> Cent OS

Installazione e utilizzo di Perf in Ubuntu e CentOS

Le prestazioni sono una delle parti più complicate dell'amministrazione dei sistemi. Ogni volta che stai cercando di indagare sull'origine delle prestazioni scadenti o sul motivo dell'elevato carico di lavoro, hai bisogno degli strumenti giusti per farlo.

Perf è uno di quegli strumenti. È un contatore delle prestazioni per Linux che puoi utilizzare per raccogliere dati sulle prestazioni del tuo sistema.

Vedremo come installarlo su Ubuntu e Centos e faremo una piccola guida all'utilizzo di base dei comandi.

Installazione di Perf su Ubuntu

Perf fa parte del pacchetto "linux-tools" in Ubuntu ed è installato come qualsiasi altro pacchetto che utilizza apt. Assicurati solo di avere le fonti aggiornate.

sudo apt update

Innanzitutto, installa il pacchetto linux-tools-common:

sudo apt install linux-tools-common

Successivamente, è necessario un pacchetto specifico per il kernel in esecuzione. Per ottenere la versione esatta del tuo kernel, usa il seguente comando:

uname -r

Otterrai la versione esatta del kernel.

Puoi installare il pacchetto linux-tools specifico o se non esiste una versione specifica del pacchetto per il tuo kernel, puoi usare il pacchetto linux-tools-generic. Ma questo potrebbe non funzionare come previsto. Come regola generale, perf non funzionerà o non funzionerà come previsto, se il pacchetto linux-tools non corrisponde all'esecuzione (molto importante! l'esecuzione, non la versione installata) del kernel Linux.

Installazione di Perf su CentOS

Come al solito, i nomi dei pacchetti variano da CentOS a Ubuntu ma la procedura è sostanzialmente la stessa, prime informazioni sul pacchetto di aggiornamento:

yum update

Esiste un pacchetto diretto che attiverà tutte le dipendenze in CentOS.

yum install perf

Utilizzo di base di Perf Command

Vediamo alcuni comandi di base su come usare perf. L'utilizzo più elementare di perf è, ovviamente, la pagina della guida, con il flag "–help" per vedere il riepilogo dei comandi

A seconda della configurazione del sistema, alcuni comandi di perf potrebbero essere limitati dalle politiche di sicurezza. Per disabilitare queste politiche basta usare:

echo 0 > /proc/sys/kernel/perf_event_paranoid

Esistono due grandi gruppi di comandi:comandi eseguiti su un sistema attivo e comandi eseguiti su un record di prestazioni.

Comandi su un sistema attivo

perf list [category]

Il comando precedente elenca tutti i tipi di eventi disponibili nel sistema. Questa è una lunga lista e, a seconda della configurazione del sistema, sarà racchiusa in less/more. Se fornisci un valore di categoria, verranno mostrati solo gli eventi di questa categoria.

Le categorie disponibili sono:hw|sw|cache|tracepoint|pmu|event_glob

perf bench <category> <benchmark>

Il comando precedente crea diversi benchmark sul sistema. Sono suddivisi in diverse categorie (sched, mem, numa, futex, all) e ogni categoria ha un elenco di benchmark diverso.

Se vuoi controllare tutti i test di velocità della memoria, usa il comando seguente:

perf bench mem all
perf stat <command>

Il comando precedente restituirà le statistiche sulle prestazioni. Verrà prodotto qualcosa del genere

perf top

Verrà visualizzata un'analisi in tempo reale del profilo del sistema, come il migliore, ma più perfezionato.

Qui inizia il secondo gruppo di comandi.

Comandi su un record di prestazioni

Puoi registrare un profilo delle prestazioni di qualsiasi comando eseguito utilizzando la seguente riga di comando:

perf record [options]

Ciò produrrà un record grezzo dei registri delle prestazioni. La profondità di questo record dipenderà dall'installazione del tuo sistema. Potresti aver bisogno di pacchetti di debug o di sviluppo per ottenere tutti i dati di profilazione che potresti ottenere. Ci sono anche molti flag che ci permetteranno di controllare cosa verrà profilato, come verrà salvato e con quale frequenza verrà profilato.

Una volta che abbiamo il record delle prestazioni, ci sono diversi comandi per agire con questi dati, il più semplice è il seguente:

perf report -i <perf file> [options]

Questo genererà un rapporto del file delle prestazioni. Possiamo selezionare come dividere o ordinare i dati o quali dati vogliamo nel rapporto.

perf diff <datafile 1> <datafile 2> …

Questo ci consentirà di confrontare due esecuzioni, ad esempio, se vogliamo sapere come funziona il programma dopo aver modificato i parametri rispetto all'esecuzione di base.

perf lock -I <perf file>

Questo analizzerà tutti gli eventi di blocco in un file di prestazioni registrato in precedenza.

perf mem -t <Type> [ record <command> | report ]

Questo registrerà o riporterà da un record, profilando l'accesso alla memoria del tipo selezionato.

perf timechart

Questo creerà un grafico temporale dell'esecuzione della profilazione precedentemente registrata.

Con tutti questi strumenti a nostra disposizione, puoi iniziare a controllare cosa sta succedendo nel tuo server, puoi iniziare a creare profili di esecuzioni per testare diverse configurazioni e sarai armato con un vasto set di strumenti per ottenere il controllo delle prestazioni sul tuo sistema .


Cent OS
  1. Installazione di JAVA 8 JDK su CentOS, RedHat e Fedora

  2. Installazione di PostgreSQL e phpPgAdmin in CentOS

  3. Installazione di PhpMydmin (Centos o Ubuntu)

  4. Impostazione NTP su Centos e Ubuntu

  5. Installazione e configurazione di php 7x su Centos 8

Installa e configura phpLDAPAdmin su CentOS 7 / Ubuntu 16.04

Installazione e utilizzo di Perf in Ubuntu e CentOS

Come svuotare il DNS su Ubuntu e CentOS

Installazione e configurazione di Wazuh Server su CentOS 7

Come installare Firefox 36 su CentOS 7 e Ubuntu 14.04

Installazione di Apache e PHP su CentOS 8