Чому вимірювачі прогресу вгорі екрана htop
показують, що використання процесора постійно перевищує> 90%, а цифри в таблиці нижче показують майже непрацюючу систему з використанням процесора та середнім завантаженням на рівні 0,0%?
Чому вимірювачі прогресу вгорі екрана htop
показують, що використання процесора постійно перевищує> 90%, а цифри в таблиці нижче показують майже непрацюючу систему з використанням процесора та середнім завантаженням на рівні 0,0%?
Відповіді:
htop
не знає, що він працює у віртуалізованому середовищі на рівні ядра ( Dreamhost VPS використовує технологію VServer ). Потім він показує використання процесора для всіх екземплярів ОС, що мають одне і те саме ядро, а не лише ваше.
Погляньте на vtop
висновок, який демонструє всі процеси, що обмінюються процесорами, а не лише ті, які є у вашому контейнері.
Якщо vtop
це не встановлено, і це, мабуть, очікується для комерційного рішення, оскільки клієнту не хотілося б бачити, якими процесами керують інші клієнти, немає можливості виправити проблему всередині вашого контейнера, якщо тільки не виправити top
джерело для обчислення Використання процесора замість отримання його зі статистики ядра.
Це можна зробити, підсумовуючи використання процесора всіх процесів, що працюють у вашому VServer, наприклад:
ps aux | awk '
{cpu+=$3; ram+=$6}
END {printf("cpu: %d%%, RAM: %.2f MiB\n",cpu,ram/1024) }'
top
звіти аналогічно htop на цій машині. Vtop не перевірений як не встановлений. Позначивши це прийнятим, оскільки він відповідає "чому?", Хоча це не стосується неявного "і що з цим можна зробити?", Як це було
Цей різновид невідповідності зазвичай вказує на велике використання процесора потоками ядра, які не відображаються htop
за замовчуванням. Щоб відобразити їх, htop
перейдіть до Setup
, потім Display options
, і зніміть прапорець Hide kernel threads
. Це повинно дозволяти вам бачити нитки, які відповідають.
Ви також можете відключити цю поведінку, встановивши hide_kernel_threads
0 дюймів ~/.htoprc
.
Спробуйте запустити htop
с sudo
. Вам потрібен кореневий доступ, щоб побачити ті активні потоки в таблиці.