Чому / як у режимі "безперервного часу" відображається завантаження процесора> 1?


14

У мене на ПК встановлений 1 ядерний процесор . Іноді, uptimeпоказує навантаження> 1. Як це можливо і що це означає?

EDIT: Значення піднімаються до 2.4


Примітка: loadвідрізняється від load average. Як сказав @michas, навантаження - це показник для кількості процесів, які очікують на виконання, але середнє навантаження - це середнє завантаження системи, обчислене за певний проміжок часу 1, 5 та 15 хвилин.
Мохаммед Холгі

Відповіді:


20

Навантаження не дорівнює використанню процесора. Це в основному показник, скільки процесів очікують на виконання.

Кілька корисних посилань:


О, добре, це має сенс. Чи є спосіб отримати використання процесора, а не завантажити?
Річард Родрігес

Ну загалом у вас може бути багато процесорів. Один може бути повністю зайнятий, а інший просто простоювати. Погляньте на htopприємний «графічний» огляд.
michas

2
це неправильно. Середнє значення навантаження - це показник для кількості процесів, готових до виконання. Сюди входять процеси, які чекають, а також процеси, які зараз виконуються . Отже, якщо середнє навантаження становить 1, це означає, що в середньому (за даний період часу) використовувався один процесор; якщо це два, це означає, що в середньому два CPU були у використанні. Таким чином, певна середня завантаженість для однопроцесорної системи - це не те саме, що однакове середнє навантаження для багатоядерної системи.
Wouter Verhelst


7

uptimeпоказує завантаження системи (не саме використання процесора), яке описано man uptimeнижче:

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

Поки навантаження менше, ніж кількість ядер CPU у вас, це повинно бути добре. Якщо він потрапить вище, це означає, що ваша система не в змозі впоратися зі своїм навантаженням "у режимі реального часу". Таким чином, деяким процесам потрібно чекати, щоб отримати час процесора (або доступу до IO). Створюється лінія очікування.

Якщо у вас 2,7 завантаження, це означає, що в середньому (протягом останніх 1, 5 або 15 хвилин, залежно від значення, на яке ви дивитесь) 2,7 процеси намагаються виконувати паралельно, але у вас є лише 1 ядро, тож ваша система перевантажений. Ви занадто багато просите від цього.

Не панікуйте, однак, це може бути не такою проблемою: як тільки робота закінчена, справи зазвичай приходять у норму.


4

Пробіг показує вихід /proc/loadavgдля вантажів.

Сторінка 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% використання процесора. Один Core може отримувати навантаження до 100% або 1 на багатопроцесорних системах.

Див. Також Високе завантаження процесора під час вводу / виводу


-2
 ps aux --sort -rss |head -15

Це дозволить сортувати 15 процесів, які найбільше використовуються у пам'яті rss

Також це буде сортувати найбільш використовувані процеси за допомогою процесора та пам'яті

 ps aux --sort -pid |head -15

Якщо у вас є 1 завантаження процесора, більше 1 попереджає, перегляньте список процесів і подивіться, хто з них використовує найбільше процесора та оперативної пам'яті

Коли ви бачите найбільш використовувані процеси, спробуйте дізнатися, з якими файлами відкрито

lsof -p [PID_most_used]

Також було б добре, якщо ви дасте ouptut з верхньої команди


1
rss не пов’язаний із середнім завантаженням, про що ти йдеш?
Wouter Verhelst
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.