Mam 1 rdzeniowy procesor zainstalowany na moim komputerze. Czasami uptime
pokazuje obciążenie> 1. Jak to jest możliwe i co to oznacza?
EDYCJA: Wartości idą w górę 2.4
Mam 1 rdzeniowy procesor zainstalowany na moim komputerze. Czasami uptime
pokazuje obciążenie> 1. Jak to jest możliwe i co to oznacza?
EDYCJA: Wartości idą w górę 2.4
Odpowiedzi:
Obciążenie nie jest równe zużyciu procesora. Jest to w zasadzie wskaźnik liczby procesów oczekujących na wykonanie.
Kilka przydatnych linków:
htop
„graficzny” przegląd.
uptime
pokazuje obciążenie systemu (nie do końca użycie procesora), co opisano man uptime
poniżej:
Średnie obciążenia systemu to średnia liczba procesów, które są w stanie uruchomionym lub nieprzerwanym. Proces w stanie wykonalnym albo korzysta z procesora, albo czeka na użycie procesora. Proces w stanie nieprzerwanym czeka na pewien dostęp do I / O, np. Na dysk. Średnie są brane z trzech przedziałów czasowych. Średnie obciążenia nie są znormalizowane dla liczby procesorów w systemie, więc średnia wartość obciążenia 1 oznacza, że cały system z procesorem jest ładowany przez cały czas, podczas gdy w systemie z 4 procesorami oznacza to, że był bezczynny przez 75% czasu.
Dopóki obciążenie jest mniejsze niż liczba posiadanych rdzeni procesora, powinno być w porządku. Jeśli wzrośnie powyżej, oznacza to, że Twój system nie jest w stanie poradzić sobie z obciążeniem „w czasie rzeczywistym”. Dlatego niektóre procesy muszą czekać, aby uzyskać czas procesora (lub dostęp IO). Zostanie utworzona linia oczekiwania.
Jeśli masz ładowanie 2,7, oznacza to, że średnio (w ciągu ostatnich 1, 5 lub 15 minut, w zależności od wartości, na którą patrzysz), procesy 2.7 próbują wykonać równolegle, ale masz tylko 1 rdzeń, więc twój system jest przeciążony. Prosisz o to za dużo.
Nie panikuj, może to nie być taki problem: po zakończeniu pracy rzeczy zwykle wracają do normy.
Czas działania pokazuje wynik /proc/loadavg
dla obciążeń.
Strona man 5 proc
mówi
/proc/loadavg
The first three fields in this file are load average figures giving
the number of jobs in the run queue (state R) or waiting for disk
I/O (state D) averaged over 1, 5, and 15 minutes.
Dzięki temu możesz mieć duże obciążenia, nawet jeśli masz 0% użycia procesora. Jeden rdzeń może uzyskać obciążenie do 100% lub 1 w systemach wieloprocesorowych.
Zobacz także Wysokie obciążenie procesora podczas operacji we / wy
ps aux --sort -rss |head -15
To posortuje 15 procesów najczęściej używanych przez pamięć rss
Spowoduje to również posortowanie najczęściej używanych procesów według procesora i pamięci
ps aux --sort -pid |head -15
Jeśli masz 1 obciążenie procesora więcej niż 1 ostrzega, sprawdź listę procesów i zobacz, kto z nich używa najwięcej procesora i pamięci RAM
Kiedy zobaczysz, że najczęściej używane procesy starają się zobaczyć, z którymi plikami są otwarte
lsof -p [PID_most_used]
Byłoby również miło, gdybyś podał ouptut z najwyższego polecenia
load
różni się odload average
. Jak powiedział @ michas, obciążenie jest wskaźnikiem liczby procesów oczekujących na wykonanie, ale średnie obciążenie to średnie obciążenie systemu obliczone w danym okresie 1, 5 i 15 minut.