Korzystam z 4-rdzeniowego serwera Ubuntu. Jednak top
polecenie pokazuje, że użycie procesora wynosi 799% przez cały czas.
Jak to mozliwe? Wiem, że w przypadku procesorów wielordzeniowych oczekuje się użycia procesora w ponad 100%, ale 799% to naprawdę wysoka wartość.
Czy ktoś może mi wyjaśnić, dlaczego i kiedy to może się zdarzyć?
Edytować:
Zgodnie z sugestią Gregory MOUSSAT, używając htopa otrzymałem:
linux
ubuntu
multi-core
top
Arpssss
źródło
źródło
Odpowiedzi:
Zastosowana skala
top
wynosi 100%, gdy rdzeń jest w pełni wykorzystany. Lub gdy jeden rdzeń wynosi 20%, a drugi 80%. Doprowadziło to do dziwnych wyników na komputerach wielordzeniowych, ponieważ z łatwością może przekroczyć 100%.Jeśli masz 8 rdzeni,
top
możesz wyświetlać od 0% (system bezczynności) do 800% (pełna moc).Twój program używa tylko 4 rdzeni z hiperwątkiem (czyli 8 rdzeni wirtualnych) z maksymalną wydajnością. Więc top daje prawie 8 x 100% = 800%.
Nie możesz jawnie powiedzieć JVM, aby używał jednego wątku, użyje wielu wątków, aby wykonać swoją pracę, nawet jeśli użyjesz tylko jednego wątku w swojej aplikacji.
Możesz użyć tego
htop
narzędzia jako lepszejtop
alternatywy. Zobaczysz swój program za pomocą wszystkich 8 rdzeni.źródło
htop