Mam Ubuntu działający na wielordzeniowym procesorze z 32 rdzeniami. Kiedy sprawdzam użycie procesora za pomocą polecenia top, czasami pokazuje więcej niż 100%, np. 340%, 650% itd. Przeprowadziłem dochodzenie i odkryłem, że jest to suma zastosowań różnych rdzeni. Na przykład, jeśli pierwsze użycie procesora wynosi 20%, drugie to 30%, trzecie to 40%, a pozostałe to 0%, wówczas „góra” pokazuje 20 + 30 + 40 = 90%.
To trochę mylące i wprowadzające w błąd. Uważam, że górne polecenie powinno wyświetlać zużycie procesora od 0 do 100 poprzez obliczenie zużycia we wszystkich rdzeniach. W powyższym przykładzie oczekiwałbym - (90 * 100) / 3200 = 2,8125%. Czy to błąd w poleceniu top? czy powinno to być traktowane jako rozszerzenie przyszłych wydań? proszę doradź
top
zachowanie i prawdopodobnie jest zbyt małe, aby to zmienić. Nic nie stoi jednak naOdpowiedzi:
Domyślnie
top
wyświetla użycie procesora jako procent jednego procesora. W systemach wielordzeniowych procent wykorzystania procesora jest większy niż 100%. Możesz zmienić to zachowanie, naciskając Shift+, igdy top jest uruchomiony, aby pokazać ogólny procent dostępnych procesorów w użyciu.htop
jest lepszą alternatywą dlatop
. Whtop
, można zobaczyć, jak programy spożywania wszystkich 32 rdzeni.źródło
wygląda na to, że znalazłem sposób :-) jeśli przełączę się do trybu solaris podczas uruchamiania polecenia top, pokaże prawidłowe użycie procesora. Aby przejść do trybu solaris, najpierw uruchom górne polecenie, a następnie naciśnij shift + i
artykuły referencyjne
https://help.gnome.org/users/gnome-system-monitor/stable/solaris-mode.html.en /unix/15733/why-process-cpu-usage-larger -than-total-cpu-time
źródło