Процент загрузки ЦП одним процессом

Процент загрузки ЦП одним процессом

Как мне получить средний процент ЦП (за каждую секунду), потребляемый одним процессом с момента его запуска до его завершения (существования)? Могу ли я сделать это с помощью Top?

решение1

psДля этого можно воспользоваться утилитой.

Чтобы увидеть процент использования ЦП за все время работы одного процесса, вы можете сделать следующее:

ps h -p $PID -o %cpu 

Чтобы увидеть процент загрузки ЦП всеми запущенными процессами, вы можете сделать что-то вроде:

ps ax -o pid,%cpu,comm

решение2

Один из способов сделать это — написать небольшой скрипт Bash, который:

  • принимает имя интересующего процесса/команды в качестве единственного аргумента,$arg1
  • извлекает PID для этого процесса с соответствующим ps | grepилиps | awk
  • сохраняет номер PID в$arg2
  • запускает задание cron на втором с исполняемым файлом на основе
    ps -eo pcpu,cmd | egrep $arg1 >> logfile-$arg2
  • обусловливает завершение задания cron тем, существует ли еще процесс (просто проверьте номер PID, который вы сохранили в $arg2)
  • завершается, когда тестовый PID больше не отображается в выводеps

Связанный контент