Wydajność procesora to jeden z aspektów pomiaru wydajność systemu. Monitorowanie wydajności procesora jest niezbędne do debugowania procesów w każdym systemie, zarządzania zasobami systemowymi, podejmowania decyzji systemowych oraz oceny i badania systemów w czasie rzeczywistym.
Dostępnych jest wiele narzędzi do monitorowania i wyświetlania Wydajność procesora. Systemy operacyjne mają wbudowane wywołania systemowe, na których opierają się te narzędzia, aby wyodrębnić odczyty wydajności.
W tym samouczku zbadamy najlepsze narzędzie do monitorowania wykorzystania procesora i jego zastosowania w każdej dystrybucji opartej na systemie Linux.
1) Góra
Górne polecenie wyświetla widok w czasie rzeczywistym danych związanych z wydajnością wszystkich uruchomionych procesów w systemie. Domyślnie najwyższe polecenie aktualizuje dane co 5 sekund. Wpisz „top” z terminala, aby wyświetlić dane statystyczne związane z wydajnością systemu.
# top
Aby zmodyfikować dane wyjściowe polecenia top, naciśnij:
„P”, aby posortować według użycia procesora.
„I”, aby usunąć bezczynne procesy z wyświetlacza i cofnąć się, ponownie naciśnij „I”.
„M”, aby posortować dane według użycia pamięci.
„S”, aby posortować według czasu działania procesów.
„P”, aby posortować według użycia procesora.
„U”, aby wyświetlić procesy należące do określonego użytkownika.
„K”, aby zabić procesy.
„R”, aby zmienić ustawienia procesów.
2) Iostat
Polecenie iostat wyświetla listę wykorzystania procesora, urządzenia i sieciowego systemu plików. Średnie wykorzystanie procesora tego systemu narzędziowego od ostatniego restartu. Uruchomienie następującego polecenia bez żadnych opcji powoduje wyświetlenie wszystkich trzech raportów.
# iostat
Aby wyświetlić listę poszczególnych raportów, użyj przełączników -c, -d i -h do wykorzystania procesora , wykorzystanie urządzenia i wykorzystanie sieciowego systemu plików. Następujące polecenie rozbije wykorzystanie procesora na procesy użytkownika, procesy systemowe, czas oczekiwania I / O i czas bezczynności.
# iostat -c
Następujące polecenie wyświetli rozszerzone statystyki ( -x), ile razy (-t) każdy raport powinien zostać wyświetlony pod kątem wykorzystania procesora (-c).
# iostat -xtc 5 2
3) Vmstat
Polecenie vmstat wyświetli statystyki dotyczące procesów systemowych, pamięci, wymiany, operacji we / wy i wydajności procesora. W celu wyświetlenia statystyk dane są zbierane od ostatniego uruchomienia polecenia do chwili obecnej. W przypadku, gdy polecenie nigdy nie zostanie uruchomione, dane będą od ostatniego restartu do aktualnego czasu.
W systemach z wieloma procesorami, vmstat uśrednia liczbę procesorów na wyjściu. Polecenie vmstat aktualizuje swoje dane wyjściowe jak polecenie top.
Następujące polecenie będzie aktualizować swój raport co 5 sekund, aż do wystąpienia przerwania.
# vmstat 5
Następujące polecenie wyświetli dane, które będą aktualizowane co 5 sekund, a wartości będą ponownie mierzone i raportowane co 1 sekundę.
# vmstat 1 5
pierwsza linia wyświetla średnie wartości od ostatniego restartu komputera. W pozostałych wierszach zostaną wyświetlone odpowiednie bieżące wartości. Zwykły użytkownik może uruchomić polecenie vmstat.
4) Mpstat
Mpstat jest częścią pakietu sysstat w Linuksie. Komenda mpstat zapisuje na standardowe wyjście informacje o aktywności każdego dostępnego procesora, przy czym pierwszy jest procesor 0. Jeśli nie wybrano żadnej aktywności, raportem domyślnym jest raport wykorzystania procesora.
mpstat bez żadnej opcji wyświetli globalną średnią aktywność wszystkich procesorów
# mpstat
mpstat z opcją -p i „ALL” wyświetli statystyki dotyczące wszystkich procesorów jeden po drugim, zaczynając od 0.
# mpstat -P ALL
Następujące polecenie wyświetli podają średnie użycie procesora przez 4 razy, po 2 sekundach.
# mpstat -P ALL 2 4
5) Sar
sar to narzędzie do monitorowania wydajności dla gromadzenie, przeglądanie i rejestrowanie danych o występach oraz lista czynności wykonywanych przez system przez cały czas. Polecenie Sar może wygenerować raport i wysłać go e-mailem do administratora systemu. Statystyki raportowane przez sar obejmują między innymi szybkość transferu I / O, aktywność stronicowania, działania związane z procesami, przerwania, aktywność sieciową, wykorzystanie pamięci i przestrzeni wymiany, wykorzystanie procesora, aktywność jądra i statystyki TTY. Uruchom sar bez żadnej opcji i sprawdź wyjście. Domyślne statystyki listy wyników dla każdych 10 minut i końcową średnią.
# sar
Wyświetl statystyki procesora 3 razy z 2-sekundowymi przerwami.
# sar 2 3
Następujące polecenie wyświetla skumulowane użycie procesora w czasie rzeczywistym przez cały procesor na każde 2 sekundy łącznie 3 razy.
# sar -u 2 3
Opcja „-P ALL” wyświetla statystyki dla WSZYSTKICH poszczególnych rdzeni. Jeśli twój system ma 4 rdzenie, wówczas „kolumna CPU” będzie zawierać liczbę 0, 1, 2, 3 wskazującą odpowiednie numery rdzeni procesora.Opcja „2 3” wyświetla statystyki co 2 sekundy przez 3 razy.
# sar -P ALL 2 3
Opcja „-P 2” wyświetla statystyki trzeciego rdzenia co 2 sekundy 3 razy.
# sar -P 2 2 3
6) CoreFreq
CoreFreq to oprogramowanie do monitorowania wydajności procesora przeznaczone dla 64-bitowych procesorów z architekturą Intel Atom, Core2, Nehalem, SandyBridge i superior, rodzina AMD. CoreFreq zapewnia strukturę do pobierania danych procesora z wysokim stopniem precyzji. Moduł jądra, demon i interfejs wiersza poleceń (CLI) to trzy części Corefreq. Moduł jądra będzie miał pełny dostęp do hosta. Gromadzenie danych niskiego poziomu jest jego obowiązkiem. Demon przestrzeni użytkownika zbiera dane. Aby uruchomić demona, powinieneś być użytkownikiem root. Wreszcie, CoreFreq jest wyposażony w interfejs terminala do raportowania danych w ładnym formacie czytelnym dla człowieka. To narzędzie CLI jest zwykłym procesem i może być używane przez użytkownika końcowego.
Warunek wstępny
i) CoreFreq używa licznika niskiego poziomu i dlatego należy najpierw wyłączyć watchdog NMI poprzez / etc / default / grub. Edytuj / etc / default / grub i dodaj argument wiersza poleceń jądra „nmi_watchdog = 0”, a następnie uruchom update-grub.
# vi /etc/default/grub
.................... .................... GRUB_CMDLINE_LINUX="nmi_watchdog=0" .................... ....................
# update-grub && reboot
ii) Brak wirtualizacji. Maszyny wirtualne nie zapewniają dostępu do rejestrów używanych przez sterownik CoreFreq.
Zainstaluj CoreFreq
Zainstaluj moduł jądra za pomocą insmod
# sudo insmod corefreqk.ko
Wymień moduł CoreFreq z lsmod
# lsmod | grep corefreq corefreqk 49152 0
Wynik polecenia dmesg pokazuje, że CoreFreq został rozpoznany przez procesor.
# sudo dmesg | grep CoreFreq CoreFreq: Processor Architecture CPU
Uruchom demona CoreFreq
# sudo ./corefreqd
read more