66

Если я запускаю uptime , я получаю что-то вроде этого:

10:50:30 up 366 days, 23:27,  1 user,  load average: 1.27, 2.06, 1.54

Что означают эти цифры в конце? Страница man говорит мне, что это «средняя загрузка системы за последние 1, 5 и 15 минут». Но каков масштаб? 1,27 высоко? Низкий? Это зависит от моей системы?

4 ответа4

57

Средняя нагрузка - это показатель того, сколько процессов в среднем требует одновременной работы процессора.

Как правило, если у вас один процесс, работающий на 100%, и он работает так вечно, вы можете ожидать, что все значения приблизятся к «1».

Как правило, это настолько эффективные вычисления, насколько это возможно, без потерь из-за переключения контекста

Однако в современных многозадачных ОС требуется более чем одна вещь, требующая внимания к процессору, поэтому при умеренной нагрузке от одного процесса среднее значение нагрузки должно колебаться между 0,8 и 2.

Если вы решите сделать что-то безумное, например собрать ядро с помощью make -j 60 , несмотря на наличие только одного логического процессора, то средняя загрузка будет стремительно приближаться к 60, и ваш компьютер будет невероятно бесполезен для вас (смерть из-за переключения контекста).

Также следует отметить, что этот показатель не зависит от количества ядер / процессоров. Для двухядерной системы запуск одного процесса, который потребляет целое ядро (оставляя другой бездействующим), приводит к средней загрузке 1,0. Чтобы решить, насколько загружена система, вам нужно знать количество ядер и выполнить деление самостоятельно.

9

Man 5 proc:

/proc/loadavg Первые три поля в этом файле являются средними значениями загрузки, указывающими количество заданий в очереди выполнения (состояние R) или ожидающих дисковый ввод-вывод (состояние D), среднее за 1, 5 и 15 минут. , Они совпадают со средними числами загрузки, заданными uptime (1) и другими программами.

3

В целом он измеряет количество активных процессов в данный момент, но метрики, используемые для его вычисления, отличаются в некоторых системах. Единственная статья, которую я нашел, которая объясняет это довольно хорошо, это эта.

2

Я цитирую из ссылки на курс:

Средняя нагрузка - это среднее число нагрузки за определенный период времени. Он учитывает процессы, которые:

  • Активно работает на процессоре.
  • Считается работоспособным, но ожидает, пока ЦП не станет доступным.
  • Спящий режим: т. Е. Ожидание доступности какого-либо ресурса (обычно ввода-вывода).

Я процитирую далее о интерпретации средней нагрузки:

Среднее значение загрузки отображается с использованием трех разных наборов чисел, как показано в следующем примере:

Последняя часть информации - это средняя загрузка системы. Если предположить, что наша система представляет собой систему с одним процессором, то 0,25 означает, что за последнюю минуту в среднем система использовалась на 25%. 0,12 в следующей позиции означает, что за последние 5 минут в среднем система использовалась на 12%; и 0,15 в конечном положении означает, что за последние 15 минут в среднем система использовалась на 15%. Если бы мы увидели значение 1,00 во второй позиции, это означало бы, что однопроцессорная система использовалась в среднем на 100% за последние 5 минут; это хорошо, если мы хотим полностью использовать систему. Значение более 1,00 для системы с одним ЦП означает, что система была перегружена: процессорам требовалось больше ресурсов, чем было доступно ЦП.

Если бы у нас было более одного процессора, скажем, четырехъядерная система, мы бы поделили средние значения нагрузки на количество процессоров. В этом случае, например, просмотр средней нагрузки за 1 минуту в 4,00 означает, что система в целом была использована на 100% (4,00/4) в течение последней минуты.

Краткосрочные увеличения обычно не являются проблемой. Высокий пик, который вы видите, скорее всего, всплеск активности, а не новый уровень. Например, при запуске запускается много процессов, а затем активность успокаивается. Если в средних значениях нагрузки за 5 и 15 минут наблюдается высокий пик, это может стать причиной для беспокойства.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .