Por que o uso da CPU é reportado pela top no Linux acima de 100%?

59

Eu vi o uso da CPU ultrapassar 100%. Como isso é possível? É porque eu tenho quatro núcleos de CPU, então 100% não é realmente o máximo?

Além disso, quando um programa faz isso, o que mais eu posso fazer além de usar o comando k ?

    
por tony_sid 11.08.2010 / 14:40

3 respostas

65

O topo da AFAIK mostra o uso da CPU em relação à potência de 1 núcleo, ou seja, se sua tarefa ocupar 200% da CPU, então ela ocupará dois núcleos.

    
por 11.08.2010 / 14:49
16

A partir da página principal do manual

   k: %CPU  --  CPU usage
  The task's share of the elapsed  CPU  time  since  the  last  screen
  update,  expressed as a percentage of total CPU time.  In a true SMP
  environment, if 'Irix mode' is Off, top will operate  in  number  of
  CPUs.  You toggle 'Irix/Solaris' modes with the 'I' interactive com-
  mand.

Então, sim, a parte superior mostra o percentual de percentual de CPU PER, mas você pode alternar esse comportamento pressionando 'I'.

    
por 12.08.2010 / 12:00
10

Sim, se um processo no topo ultrapassar 100% ou o topo mostrar > 1,0 no carregamento, isso significa que mais de um núcleo está ocupado ou o sistema está com excesso de inscrições. Sobredeclaração significa que há mais trabalho a ser colocado no núcleo do que o gerenciamento fsico.

Em top , você também pode classificar a visualização por parâmetros diferentes (como a memória usada). Se você quiser procurar o que você pode classificar, consulte a página de ajuda ou manual para top .

Você também pode ver todo o tipo de informações sobre os próprios processos, como a memória virtual ou residente usada pelo processo e se está dormindo ou em execução no momento, bem como o tempo de CPU usado.

A média de carga no topo, se necessário, também pode ser visualizada pelo comando uptime .

    
por 11.08.2010 / 15:01