У меня есть 1 ядро процессора установлена на моем компьютере. Иногда uptime
показывает нагрузку> 1. Как это возможно и что это значит?
РЕДАКТИРОВАТЬ: значения идут до 2.4
У меня есть 1 ядро процессора установлена на моем компьютере. Иногда uptime
показывает нагрузку> 1. Как это возможно и что это значит?
РЕДАКТИРОВАТЬ: значения идут до 2.4
Ответы:
Нагрузка не равна загрузке процессора. Это в основном показатель того, сколько процессов ожидает выполнения.
Некоторые полезные ссылки:
htop
хороший "графический" обзор.
uptime
показывает нагрузку на систему (не только использование процессора), которая описывается man uptime
следующим образом:
Средняя загрузка системы - это среднее количество процессов, которые находятся в работоспособном или непрерывном состоянии. Процесс в работоспособном состоянии либо использует ЦП, либо ожидает его использования. Процесс в непрерывном состоянии ожидает некоторого доступа ввода-вывода, например, ожидает диска. Средние значения взяты за три интервала времени. Средние значения нагрузки не нормируются для числа процессоров в системе, поэтому среднее значение нагрузки 1 означает, что одна система ЦП загружается все время, а в системе с 4 процессорами это означает, что она простаивает 75% времени.
Пока нагрузка меньше количества ядер процессора, все должно быть в порядке. Если оно становится выше, это означает, что ваша система не может справиться со своей рабочей нагрузкой «в реальном времени». Таким образом, некоторые процессы должны ждать, чтобы получить процессорное время (или доступ к IO). Строка ожидания создана.
Если у вас загрузка 2.7, это означает, что в среднем (в течение последних 1, 5 или 15 минут, в зависимости от значения, которое вы просматриваете), 2.7 процессы пытаются выполняться параллельно, но у вас есть только 1 ядро, поэтому ваша система перегружен Вы слишком много просите от этого.
Не паникуйте, хотя, это не может быть такой проблемой: как только работа закончена, все обычно возвращается к нормальной жизни.
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 на многопроцессорных системах.
Смотрите также Высокая загрузка процессора во время ввода / вывода
ps aux --sort -rss |head -15
Это отсортирует 15 процессов, наиболее часто используемых в памяти rss.
Также это будет сортировать наиболее используемые процессы по процессору и памяти
ps aux --sort -pid |head -15
Если у вас 1 загрузка процессора больше, чем 1 - предупреждение, изучите список процессов и посмотрите, кто из них использует больше всего процессора и оперативной памяти.
Когда вы видите наиболее используемые процессы, попробуйте посмотреть, какие файлы открыты
lsof -p [PID_most_used]
Также было бы хорошо, если вы дадите выход из верхней команды
load
отличается отload average
. Как сказал @michas, нагрузка является индикатором для подсчета процессов, ожидающих выполнения, но средняя нагрузка - это средняя загрузка системы, рассчитанная за данный период времени в 1, 5 и 15 минут.