2012-08-16 11 views
54

Kiedy issueing to polecenie z Linux:linux/proc/loadavg

# cat /proc/loadavg 
0.75 0.35 0.25 1/25 1747 

Jakie są ostatnie 2 numery?

Ostatni stale się powiększa o 2 co sekundę, należy się martwić?

Odpowiedz

13

Pierwsze trzy kolumny mierzą wykorzystanie procesora i we/wy ostatnich, pięciu i 15-minutowych okresów. Czwarta kolumna pokazuje liczbę aktualnie uruchomionych procesów i całkowitą liczbę procesów. Ostatnia kolumna wyświetla ostatni używany identyfikator procesu.

https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s2-proc-loadavg.html

(Szukałem na odpowiedź, więc można to zrobić, too.)

+1

Dzięki, zrobiłem, ale mam tylko informacji śmieci linki – Ulterior

+0

drugie trafienie na https://duckduckgo.com/?q=proc%2Floadavg&t=canonical –

+2

zdecydowanie sprzeciwiają się tej definicji. Pierwsze trzy liczby nie mierzą bezpośrednio CPU i I/O * bezpośrednio *, są średnią liczbą zadań w kolejce uruchamiania lub oczekują na I/O, jak stwierdza odpowiedź @auselen. – Jan

48

ostatni jest obciążenie systemu przez ostatnie 15 minut.

/proc/loadavg

Pierwsze trzy pola w tym pliku są obciążenia średnie postacie dające liczbę zadań w kolejce run (stan R) lub czekających na dysku I/O (stan D) uśrednionej ponad 1, 5 i 15 minut. Są to numery , takie same jak średnie obciążenia podane przez uptime (1) i inne programy .

Czwarty obszar składa się z dwóch cyfr oddzielonych ukośnik (/). Pierwszym z nich jest liczba aktualnie wykonywanych jednostek planowania jądra (procesy, wątki): ; będzie to mniej niż niższa lub równa liczbie procesorów. Wartość po ukośniku to liczba Kernel podmiotów planowania, które obecnie istnieją w systemie .

Piąte pole jest PID procesu, który był najbardziej niedawno utworzone w systemie.

9

Chciałbym skomentować przyjętej odpowiedź.

Czwarte pole składa się z dwóch liczb oddzielonych ukośnikiem (/). Pierwszym z nich jest liczba aktualnie realizuje harmonogram jądra podmioty (procesy, nici); będzie to mniejsza lub równa liczba procesorów.

Zrobiłem program testowy, który odczytuje liczbę całkowitą N z danych wejściowych, a następnie tworzy N wątków i ich uruchomić je na zawsze. Na komputerze RHEL 6.5 mam 8 procesorów i każdy procesor ma hiperprzestrzeń. W każdym razie, jeśli uruchomię mój test i utworzy 128 wątków, zobaczę w czwartym polu wartości większe niż 128, na przykład 135. Jest wyraźnie większa niż liczba procesorów. Ten post wspiera moje obserwacje: http://juliano.info/en/Blog:Memory_Leak/Understanding_the_Linux_load_average

Warto zauważyć, że obecny wyjaśnienie w proc (5) Instrukcja strona (od Manuali wersji 3.21, marzec 2009) jest błędna.Zgłasza on pierwszy numer czwartego pola jako liczbę aktualnie wykonywanych jednostek planowania , a więc przewiduje, że nie może być większa niż liczba procesorów w jednostce . To nie pasuje do rzeczywistej implementacji, gdzie ta wartość zgłasza bieżącą liczbę uruchomionych wątków.

+1

Potwierdzam: kernel/sched/core.c nr_running() opisuje się jako kolekcjonujące * działające * w przeciwieństwie do * zadań * działających. – fche