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

Столбец Time + (CPU Time) в верхней команде неверно сообщает

Столбец Time + в моей верхней команде не сообщает правильное время для запущенного скрипта php. Он колеблется вверх и вниз, сначала сообщая что-то вроде

TIME+
22:39.35 php

А через три секунды отчет

TIME+
7:12.41 php

А потом еще через три секунды отчет

TIME+
42:44.21 php

Есть какие-нибудь подсказки относительно того, почему это происходит?

Редактировать:

Я нажимаю «c», чтобы переключить имя процесса, чтобы я знал, что это тот же процесс. Время все еще указывается неверно.

По умолчанию top сортируется по% CPU, поэтому вы увидите, как процесс в списке перемещается. Использовать < несколько раз, чтобы переместить столбец сортировки в PID, и список перестанет «прыгать» (по крайней мере, пока новые процессы не останавливаются и не запускаются). В качестве альтернативы выполните ps p PID u (подставив в PID php интересующий процесс), чтобы увидеть именно этот процесс в ps листинг. Если время здесь не "прыгает", то вы, вероятно, видите артефакт сортировки в top.

Вы уверены, что это одни и те же процессы php? Бьюсь об заклад, у вас есть несколько процессов php, которые «прыгают сверху».

Если вы хотите лучше и проще отслеживать все процессы php, я рекомендую использовать htop гораздо проще для того, что вы смотрите.

Это значение рассчитывается путем взятия 14-го поля из / proc // stat, которым управляет ядро.

Рассматриваемое значение - насколько я понимаю - увеличивается только за «мгновение» (по сути, сотые доли секунды).

Можете ли вы определить значение / proc // stat для этого pid через десять секунд один за другим?