Назад | Перейти на главную страницу

Почему mpstat показывает разные значения, когда я использую настройку интервала?

Вот результат, который я получаю при запуске mpstat:

$mpstat
Linux 3.2.0-30-generic (my-laptop-C650)     09/17/2012  _x86_64_    (2 CPU)

05:32:01 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
05:32:01 PM  all    9.16    0.08    2.69    2.00    0.00    0.04    0.00    0.00   86.02

И вот что я получаю, когда запускаю его с интервалом в одну секунду:

$mpstat 1
05:31:51 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
05:31:52 PM  all    1.52    0.00    1.01    0.00    0.00    0.00    0.00    0.00   97.47
05:31:53 PM  all    2.04    0.00    1.02    0.00    0.00    0.00    0.00    0.00   96.94
05:31:54 PM  all    1.50    0.00    1.50    0.00    0.00    0.00    0.00    0.00   97.00

Почему первый процесс показывает, что процессор простаивает на 86%, а второй - как на 97%? Я пробовал это в нескольких различных конфигурациях, и это не повлияло на использование ЦП - если только mpstat не имеет значения.

Какому числу я должен доверять?

Когда вы запускаете mpstat в первый раз, он вычисляет время простоя с момента загрузки сервера до момента, когда вы запустили mpstat.

Но когда вы запускаете его с интервалами, вы получаете значение в течение указанного вами времени, здесь 1 секунда. И не все время с момента загрузки и до этого момента.

Фактически, iostat, vmstat работают так же, как я сказал,

Да, всегда бегайте с интервалами и отвечайте на звонок. Вот почему они выбрали средний вариант. Взгляните на системный монитор и график: вы увидите, насколько сильно он колеблется в пределах 10-секундного интервала.

Я знаю, что эта ветка старая, я все еще хотел ответить.