почему htop meter показывает> 90%, а таблица - 0.0%?
12
Почему индикаторы прогресса в верхней части экрана 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) }'
+1 за объяснение; topОтчеты аналогично htop на этой машине. Vtop не проверен, так как не установлен. Пометить это как принятое, потому что оно отвечает «почему?», Хотя это не относится к неявному «и что с этим можно сделать?»,
Поскольку
4
Такое несоответствие обычно свидетельствует о высокой загрузке процессора потоками ядра, которые htopпо умолчанию не отображаются . Чтобы отобразить их, htopвойдите в Setup, затем Display options, а затем снимите флажок Hide kernel threads. Это должно позволить вам увидеть поток (ы), которые несут ответственность.
Вы также можете отключить это поведение, установив hide_kernel_threads0 в ~/.htoprc.
спасибо Крис Я сделал это, но значения таблицы по-прежнему 0%. Может быть, это что-то особенное для работы на виртуальной машине? Хост - это виртуальный частный сервер (на Dreamhost.com).
Мэтт Вилки
Для меня это более правильный ответ. У меня был процесс, который занимал много процессорного времени у ядра, и он не обнаруживался в процессах пространства пользователя.
Патрик Чу
... за исключением того, что измерители процессоров HTop показывают время ядра красным и время пользователя зеленым, и мы ясно видим, что оно почти все зеленое.
Математическая
1
Попробуйте запустить htopс sudo. Вам нужен root-доступ, чтобы увидеть эти активные потоки в таблице.
Ответы:
htop
не знает, что работает в виртуализированной среде на уровне ядра ( Dreamhost VPS использует технологию VServer ). Затем он показывает загрузку ЦП для всех экземпляров ОС, использующих одно и то же ядро, а не только ваше.Посмотрите на
vtop
вывод, который показывает все процессы, разделяющие процессоры, а не только те, которые находятся в вашем контейнере.Если
vtop
он не установлен, и это, вероятно, ожидается для коммерческого решения, так как никто не хотел бы, чтобы клиент видел, какие процессы выполняются другими клиентами, нет способа исправить проблему изнутри вашего контейнера, если неtop
установить исправления для вычисления источника Использование процессора вместо получения статистики ядра.Это может быть сделано путем суммирования использования ЦП всеми процессами, запущенными на вашем VServer, например:
источник
top
Отчеты аналогично htop на этой машине. Vtop не проверен, так как не установлен. Пометить это как принятое, потому что оно отвечает «почему?», Хотя это не относится к неявному «и что с этим можно сделать?»,Такое несоответствие обычно свидетельствует о высокой загрузке процессора потоками ядра, которые
htop
по умолчанию не отображаются . Чтобы отобразить их,htop
войдите вSetup
, затемDisplay options
, а затем снимите флажокHide kernel threads
. Это должно позволить вам увидеть поток (ы), которые несут ответственность.Вы также можете отключить это поведение, установив
hide_kernel_threads
0 в~/.htoprc
.источник
Попробуйте запустить
htop
сsudo
. Вам нужен root-доступ, чтобы увидеть эти активные потоки в таблице.источник