Exibir o uso da CPU separadamente (sem privilégios de root)

2

Eu preciso exibir o uso da CPU para cada núcleo de processamento em uma única máquina de 12 núcleos de memória compartilhada (SMP). Eu não tenho acesso para instalar o htop, senão eu simplesmente usaria isso. Eu não preciso de gráficos ou medidores sofisticados, apesar de que seriam legais.

Por exemplo, simplesmente exibindo:

X   X   X   X   X   X   X   X   X   X   X   X

em que cada X é a porcentagem de utilização de um dos 12 núcleos de processamento em minha máquina.

FYI: Eu sei que posso simplesmente olhar para a utilização em "top" e dividir esse número pelo número de núcleos em minha máquina, mas prefiro uma solução que mostre cada núcleo separadamente.

    
por synaptik 07.11.2012 / 16:47

1 resposta

0

  grep ^cpu /proc/stat 

As colunas são

  • usuário: processos normais em execução no modo de usuário
  • legal: processos agradáveis executados no modo de usuário
  • system: processa a execução no modo kernel
  • ocioso: polegares ao redor
  • iowait: aguardando a conclusão da E / S
  • irq: interrupções de serviço
  • softirq: serviço de softirqs

As unidades de tempo estão em USER_HZ ou Jiffies (normalmente, centésimos de segundo).

Então você pode fazer

  grep ^cpu[0-9] /proc/stat | cut -d' ' -f1,5

Ou talvez use o awk para converter esses números em porcentagens e exibi-los da maneira que você quiser.

Referências: Linux Howtos

    
por 07.11.2012 / 17:23