Porcentagem da CPU de um único processo

4

Como faço para obter a porcentagem média de CPU (para cada segundo) consumida por um único processo desde que começa até terminar (existe)? Eu poderia fazer isso com o Top?

    
por bulkmoustache 22.06.2014 / 20:07

2 respostas

2

Você pode usar o utilitário ps para isso.

Para ver a porcentagem de uso da CPU de um único processo, você pode fazer:

ps h -p $PID -o %cpu 

Para ver a porcentagem de CPU de todos os processos em execução, você pode fazer algo como:

ps ax -o pid,%cpu,comm
    
por 22.06.2014 / 23:17
0

Uma maneira de fazer isso é escrever um pequeno script Bash que:

  • leva o nome do processo / comando de interesse como único argumento, $arg1
  • extrai o PID para esse processo com um ps | grep ou ps | awk adequado
  • mantém o número do PID em $arg2
  • executa um cron job no segundo com um executável baseado em um ps -eo pcpu,cmd | egrep $arg1 >> logfile-$arg2
  • condiciona a finalização da tarefa cron a saber se o processo ainda existe,     (apenas teste para o número PID que você armazenou em $arg2 )
  • sai quando o PID de teste não aparece mais na saída de ps
por 22.06.2014 / 22:37

Tags