Почему / как «uptime» показывает загрузку процессора> 1?

14

У меня есть 1 ядро процессора установлена на моем компьютере. Иногда uptimeпоказывает нагрузку> 1. Как это возможно и что это значит?

РЕДАКТИРОВАТЬ: значения идут до 2.4

Ричард Родригес
источник
Примечание: loadотличается от load average. Как сказал @michas, нагрузка является индикатором для подсчета процессов, ожидающих выполнения, но средняя нагрузка - это средняя загрузка системы, рассчитанная за данный период времени в 1, 5 и 15 минут.
Мохаммад Холги

Ответы:

20

Нагрузка не равна загрузке процессора. Это в основном показатель того, сколько процессов ожидает выполнения.

Некоторые полезные ссылки:

Михась
источник
О, хорошо, это имеет смысл. Есть ли способ получить загрузку процессора, а не загрузить?
Ричард Родригес
Ну, как правило, вы можете иметь много процессоров. Один может быть полностью занят, а другой просто бездельничать. Посмотрите на htopхороший "графический" обзор.
Михас
2
это неверно Среднее значение загрузки - это показатель того, сколько процессов готовы к выполнению. Это включает процессы, которые ожидают, но также и процессы, которые в настоящее время выполняются . Таким образом, если среднее значение нагрузки равно 1, это означает, что в среднем (за данный период времени) использовался один ЦП; если это два, это означает, что в среднем использовались два процессора. Таким образом, конкретное среднее значение нагрузки для системы с одним ЦП - это не то же самое, что среднее значение нагрузки для многоядерной системы.
Воутер Верхелст
7

uptimeпоказывает нагрузку на систему (не только использование процессора), которая описывается man uptimeследующим образом:

Средняя загрузка системы - это среднее количество процессов, которые находятся в работоспособном или непрерывном состоянии. Процесс в работоспособном состоянии либо использует ЦП, либо ожидает его использования. Процесс в непрерывном состоянии ожидает некоторого доступа ввода-вывода, например, ожидает диска. Средние значения взяты за три интервала времени. Средние значения нагрузки не нормируются для числа процессоров в системе, поэтому среднее значение нагрузки 1 означает, что одна система ЦП загружается все время, а в системе с 4 процессорами это означает, что она простаивает 75% времени.

Пока нагрузка меньше количества ядер процессора, все должно быть в порядке. Если оно становится выше, это означает, что ваша система не может справиться со своей рабочей нагрузкой «в реальном времени». Таким образом, некоторые процессы должны ждать, чтобы получить процессорное время (или доступ к IO). Строка ожидания создана.

Если у вас загрузка 2.7, это означает, что в среднем (в течение последних 1, 5 или 15 минут, в зависимости от значения, которое вы просматриваете), 2.7 процессы пытаются выполняться параллельно, но у вас есть только 1 ядро, поэтому ваша система перегружен Вы слишком много просите от этого.

Не паникуйте, хотя, это не может быть такой проблемой: как только работа закончена, все обычно возвращается к нормальной жизни.

Totor
источник
4

Uptime показывает вывод /proc/loadavgдля нагрузок.

Manage of man 5 procговорит

   /proc/loadavg
          The first three fields in this file are load average figures giving
          the  number  of jobs in the run queue (state R) or waiting for disk
          I/O (state D) averaged over 1, 5, and 15  minutes. 

Таким образом, вы можете иметь высокие нагрузки, даже если у вас 0% загрузки процессора. Одно ядро ​​может получить нагрузку до 100% или 1 на многопроцессорных системах.

Смотрите также Высокая загрузка процессора во время ввода / вывода

Сообщество
источник
-2
 ps aux --sort -rss |head -15

Это отсортирует 15 процессов, наиболее часто используемых в памяти rss.

Также это будет сортировать наиболее используемые процессы по процессору и памяти

 ps aux --sort -pid |head -15

Если у вас 1 загрузка процессора больше, чем 1 - предупреждение, изучите список процессов и посмотрите, кто из них использует больше всего процессора и оперативной памяти.

Когда вы видите наиболее используемые процессы, попробуйте посмотреть, какие файлы открыты

lsof -p [PID_most_used]

Также было бы хорошо, если вы дадите выход из верхней команды

Клерк
источник
1
rss не имеет отношения к средней нагрузке, о чем вы?
Воутер Верхелст