comprendere-il-carico-medio-su-linux | Linuxiano.it
Privacy Policy

comprendere-il-carico-medio-su-linux

comprendere-il-carico-medio-su-linux

Il carico medio è una misura della quantità di lavoro rispetto ai cicli gratuiti della CPU disponibili su un processore di sistema

In questo articolo definirò il termine, dimostrerò come Linux calcola questo valore, quindi fornirò informazioni su come interpretare il carico del sistema.

Diversi metodi di calcolo del carico

Prima di immergerci nelle medie di carico di Linux, dobbiamo esplorare i diversi modi in cui il carico viene calcolato e affrontare la misurazione più comune del carico della CPU: una percentuale.

Windows calcola il carico in modo diverso da Linux e poiché Windows è stato storicamente più popolare sul desktop, la definizione di carico di Windows è generalmente compresa dalla maggior parte degli utenti di computer. La maggior parte degli utenti di Windows ha visto il carico del sistema nel Task Manager visualizzato come percentuale compresa tra 0% e 100%.

In Windows ciò viene ricavato esaminando come “occupato” il processo di inattività del sistema e utilizzando l’inverso per rappresentare il carico del sistema. Ad esempio, se il thread inattivo viene eseguito il 99% delle volte, il carico della CPU in Windows sarà dell’1%. Questo valore è facile da capire ma fornisce meno dettagli generali sul vero stato del sistema.

In Linux, la media del carico è invece rappresentata da un numero decimale che inizia da 0,00. Il valore può essere approssimativamente definito come il numero di processi nel corso dell’ultimo minuto che hanno dovuto attendere il loro turno per l’esecuzione. A differenza di Windows, il carico medio di Linux non è una misurazione istantanea. Il carico viene dato in tre valori: la media di un minuto, la media di cinque minuti e la media di quindici minuti.

Comprensione del carico medio in Linux

In un primo momento, questo ulteriore livello di dettaglio non è necessario se si desidera semplicemente conoscere lo stato corrente del carico della CPU nel sistema. Ma dato che le medie di tre periodi di tempo sono date, piuttosto che una misurazione istantanea, puoi ottenere un’idea più completa del cambio di carico del sistema nel tempo in una sola occhiata di tre numeri

La visualizzazione della media del carico è semplice. Sulla riga di comando, è possibile utilizzare una varietà di comandi. Semplicemente uso il comando “w”:

Terminale
  • w
comprendere-il-carico-medio-su-linux

Il resto del comando mostrerà chi ha effettuato l’accesso e cosa sta eseguendo.

In un sistema ideale, nessun processo deve essere mantenuto da un altro processo (o thread), ma in un sistema a processore singolo ciò si verifica quando il carico supera 1,00.

Le parole “sistema a singolo processore” sono incredibilmente importanti. A meno che non si stia utilizzando un computer antico, la macchina probabilmente ha più core CPU. Nella macchina in cui sono attivo, ho 2 core:

Terminale
  • nproc

comprendere-il-carico-medio-su-linux

In questo caso, una media di carico di 1.37 non è affatto allarmante. Significa semplicemente che più di tre processi erano pronti per essere eseguiti e che i core della CPU erano presenti per gestire la loro esecuzione. Su questo particolare sistema, il carico dovrebbe raggiungere 2 per essere considerato al “100%”.

Per tradurre questo in un caricamento del sistema basato sulla percentuale, è possibile utilizzare questo comando semplice, se non ottuso:

Terminale
  • cat /proc/loadavg | cut -c 1-4 | echo “scale=2; ($(</dev/stdin)/`nproc`)*100” | bc -l

comprendere-il-carico-medio-su-linux

Questa sequenza di comandi isola la media di 1 minuto tramite taglio ed eco, divisa per il numero di core CPU, tramite bc, un calcolatore da riga di comando, per ricavare la percentuale.

Questo valore non è affatto scientifico, ma fornisce un’approssimazione approssimativa del carico della CPU in percentuale.

Un minuto per imparare, una vita da padroneggiare

Nella sezione precedente ho messo l’esempio “100%” di un carico di 2.0 su un sistema core a 16 CPU tra virgolette perché il calcolo del carico in Linux è un po ‘più nebuloso di Windows. L’amministratore di sistema deve tenere presente che:

  • Il carico è espresso in processi e thread in attesa
  • Non è un valore istantaneo, piuttosto una media, e
  • La sua interpretazione deve includere il numero di core della CPU e
  • Può gonfiare eccessivamente le attese di I / O come le letture del disco

Per questo motivo, ottenere un handle del carico della CPU su un sistema Linux non è interamente una questione empirica. Anche se lo fosse, il carico della CPU da solo non è una misura adeguata per l’utilizzo generale delle risorse del sistema. Come tale, un amministratore Linux esperto considererà il carico della CPU in accordo con altri valori come I / O wait e la percentuale di kernel rispetto al tempo di sistema.
I / O Wait

L’attesa I / O è più facilmente visibile tramite il comando “top“:

comprendere-il-carico-medio-su-linux

Nella schermata sopra ho evidenziato il valore di attesa I / O. Questa è una percentuale di tempo in cui la CPU era in attesa di completamento dei comandi di input o output. Questo di solito è indicativo usando il disco ad alte prestazioni. Mentre una percentuale di attesa elevata da sola potrebbe non ridurre in modo significativo le attività legate alla CPU, ridurrà le prestazioni di I / O per altre attività e renderà il sistema lento.

L’attesa I / O elevata senza alcuna causa evidente potrebbe indicare un problema con un disco. Utilizzare il comando “dmesg” per vedere se si sono verificati errori.

comprendere-il-carico-medio-su-linux
Kernel vs. System Time

I valori evidenziati sopra rappresentano il tempo dell’utente e del kernel (sistema). Questa è una ripartizione del consumo complessivo di tempo della CPU da parte degli utenti (es. Applicazioni, ecc.) E del kernel (cioè interazione con i dispositivi di sistema). Un tempo utente più alto indicherà più utilizzo della CPU da parte di programmi in cui il tempo di kernel più alto indicherà più elaborazione a livello di sistema.

Un carico discretamente medio

L’apprendimento della relazione tra carico medio e prestazioni effettive del sistema richiede del tempo, ma in breve vedrete una correlazione distinta. Grazie alle complessità delle metriche delle prestazioni del sistema, sarete in grado di prendere decisioni migliori sugli aggiornamenti hardware e sull’utilizzo delle risorse del programma.

Grazie! per l’utilizzo della Guida di Linuxiano.

Trovi questo tutorial utile? Condividi con i tuoi amici per tenerlo in vita.
Sii il primo a commentare, apprezzo i tuoi suggerimenti. Per ulteriori domande potete commentare qui sotto.