Molti di noi hanno quei tre numeri in qualche modo
Load average: 0.11 0.15 0.23
Così che cosa significano e come si può interpretare?
Nella spiegazione più comune questi tre numeri mostrano il carico medio del sistema calcolato per 1, 5 e 15 min. In realtà non è esattamente 1,5,15 min, ma lo spiegherò un po ‘ più tardi.
E cosa significano esattamente questi numeri?,
La media del carico in Linux è un numero medio di processi che si trovano nella coda di esecuzione che sono contrassegnati come in esecuzione o uninterruptible.
Sta diventando più chiaro? Continuiamo.
Nel mondo reale questi tre numeri non è un carico da 1, 5 e 15 min. Sono numerose costanti che vengono utilizzate per calcolare somme mobili esponenzialmente smorzate di una media di cinque secondi.
Puoi controllare la loro definizione nei sorgenti del kernel Linux qui: linux/include/linux/sched/loadavg.,h
Originariamente questi principi sono stati presi in prestito dal sistema TENEX e li puoi trovare qui:https://github.com/PDP-10/tenex
Ho detto che questi numeri includono processi di continuità. Quindi cosa sono e perché sono uninterruptible? Sono una parte del codice di processo che vuole essere libero da segnali di sistema di interrupt bloccati I / O e alcuni altri blocchi. Ciò significa che i numeri medi di carico ora dipendono non solo dal carico esatto della CPU, ma anche dal sottosistema di carico I/O del disco.,
Un altro aspetto importante della comprensione della media del carico in Linux è sapere come calcola in relazione ai sistemi multi-core / multi-processore.
- Processore multi-core-presa singola con più core.
- Sistema multiprocessore-un singolo sistema con prese multiple per processori. Naturalmente, ogni processore può includere più core.
- Hyper-threading-quando un core fisico richiede attività aggiuntive mentre è inattivo e appare nel sistema come un core logico separato. Il nucleo logico appare anche nei numeri di media del carico.,
Puoi leggere molti articoli che ci hanno detto che la tua razione tra la media del carico e il numero di CPU non dovrebbe essere superiore a 1.0 Tuttavia, in molti casi diversi questo potrebbe essere un approccio sbagliato alla valutazione del carico del tuo sistema. A causa dei motivi sopra elencati che sono inclusi nei numeri medi di carico, è più adatto per una valutazione relativa di ogni singolo sistema ed è necessario determinare le soglie in base ai record metrici a lungo termine.,
Quindi nel complesso un carico di sistema in Linux è un numero complesso che rappresenta la pressione complessiva su un sistema e non su una particolare risorsa. Misura il numero di thread eseguibili e quelli in attesa nella coda a causa di blocchi di I/O/uninterruptible della CPU /Disco. Quindi è un numero totale di thread che non sono inattivi al momento.
Cosa puoi effettivamente imparare a colpo d’occhio dai numeri medi di carico?
- Se la media del carico per 1 minuto è maggiore di 5 e 15 min, il carico aumenta.,
- Se la media del carico per 1 minuto è inferiore a quella per 5 e 15 min — il carico diminuisce
- Se la media del carico è pari a 0,0 — il sistema è inattivo.