O que é carga do sistema?

13

No meu trabalho, temos um repositório de dados executando a CLI do Ubuntu 12.04.03 e, como eu os verificava hoje de manhã, quando entrei em vez de fornecer as informações normais, disse que as informações não podiam ser exibidas porque a carga do sistema está acima de 2 e Eu queria saber o que isso significava? Acabei de o reiniciar porque não responde, tem algo a ver com o processo de iniciar e fazer tudo funcionar?

Sean G
fonte

Respostas:

17

Execute os comandos topou uptime:

$ uptime
 19:36:03 up 5 days,  9:12,  8 users,  load average: 0.05, 0.16, 0.21
$ top -bn1 | head -1
top - 19:36:07 up 5 days,  9:13,  8 users,  load average: 0.05, 0.16, 0.21

As médias de carga indicadas aqui são :

/proc/loadavg
          The  first  three  fields  in this file are load average figures
          giving the number of jobs in the run queue (state R) or  waiting
          for disk I/O (state D) averaged over 1, 5, and 15 minutes.  They
          are the same as the load average numbers given by uptime(1)  and
          other  programs. 

Considere minhas médias de carga: 0.05, 0.16, 0.21
isso significa que, no último minuto, em média, 0,05 processos estiveram aguardando recursos.

Você deve estar preocupado que a média de carga seja 2? Em geral, se a média de carga for maior que o número de CPUs disponíveis, algum processo terá que ficar ocioso aguardando um slot de CPU.

Se a média de carga for menor que a saída de nproc, você não precisa se preocupar.

Veja também: O que significa média de carga no unix / linux? Como observa Braiam, os processos não precisam esperar apenas pela CPU: Entendendo a média de carga versus o uso da CPU

muru
fonte
Isso é muito útil, mas logo após a reinicialização, ele deve estar tão quente, considerando que não vimos isso antes? Está executando o processador AMD Athlon (tm) 64 X2 de núcleo duplo 4200+ e não executa gráficos ou processos extras.
Sean G
@SeanG, dependendo do que mais ele executa. Pode ser um evento único. Se isso acontecer repetidamente, use algo como o bootchart para ver o que está acontecendo durante a inicialização.
Muru
"Isso significa que, no último minuto, em média, 0,05 processos aguardavam CPU." na verdade, isso está incompleto, o recurso pode ser qualquer hardware, não apenas a CPU. Poderia ser rígido, rede, GPU, etc.
Braiam
@Braiam true (fiz a declaração muito simplificada). Eu encontrei esse q enquanto pesquisava no Google loadavg, mas não pensei em incluí-lo.
Muru
Logo após a reinicialização, a média de carga pode realmente ser alta, pois o sistema acabou de passar pela intensa sequência de inicialização. Como explicado na resposta, leva alguns minutos para que os números caiam ao normal. Trabalhos anacron atrasados ​​podem prolongar o período.
Emil Jeřábek apoia Monica
7

Carga do sistema ou média de carga do sistema

É uma fila de execução, ou seja, uma fila de processos aguardando a disponibilização de um recurso (CPU, E / S etc.).

Considere um núcleo único cpucomo uma única faixa de tráfego com ponte e processo como carros.

Agora, nessa situação, a carga do sistema é

  • 0.0 - Se não houver tráfego na estrada.
  • 1.0 -Se o tráfego na estrada é exatamente a capacidade da ponte.
  • Mais de 1 - Se o tráfego na estrada for superior à capacidade da ponte e os carros tiverem que esperar para passar pela ponte.

Este número não é normalizado de acordo com o seu cpu. No sistema multiprocessador, carga 2 significa 100% de utilização do que estamos usando processador dual-core, carga 4 significa 100% de utilização se estivermos usando quad-core.

Você pode carregar o sistema usando

  • uptime
  • cat /proc/loadavg
  • top

    $ uptime 22:49:47 up 11:47, 4 usuários, média de carga: 2.20, 1.03, 0.82

Aqui os três últimos números representam a média de carga do sistema por 1, 5 e 15 minutos, respectivamente.

O exemplo acima indica que, em média, havia 2,20 processos aguardando para serem agendados na fila de execução medida no último minuto.

g_p
fonte
Isso não explica qual é a média de carga.
Braiam
adicionou na resposta.
6284 Ghp em
2

A carga do sistema é relevante para o número de núcleos da CPU, por exemplo, se você tiver uma CPU com quatro núcleos (4 núcleos), o valor 1 significa que a carga do sistema está em 25% e 4 significa 100%.

Ghassen Telmoudi
fonte
Isso não explica o que é a média de carga e está errado sobre o relacionamento entre o tempo% da CPU e a média da carga.
Braiam
0

Se você digitar o tempo de atividade do terminal , verá algo como: média de carga e três colunas de dígitos, que são cargas de um, cinco e quinze minutos. Se você tiver o processador dual core 2 significa 100% de utilização, 1 significa 50% etc.

EdiD
fonte
Isso não explica o que é a média de carga e está errado sobre o relacionamento entre o tempo% da CPU e a média da carga.
Braiam
1
Sim. No manual de tempo de atividade: a média de carga de 1 significa que um único sistema de CPU é carregado o tempo todo enquanto em um sistema de 4 CPUs significa que ficou ocioso 75% do tempo.
EdiD 6/10
Não há relação entre a carga da CPU e a média da carga. Verifique novamente.
Braiam
0

Uma carga do sistema de 2,0 não é muito alta. Em um sistema com vários núcleos, sua CPU ainda pode estar parcialmente ociosa.

Uma média de carga é uma medida de quão sobrecarregado um núcleo de CPU está em termos de número de processos que desejam usá-lo de uma só vez.

A seguir, assuma uma CPU de núcleo único (thread único):

  • 0,0

    A CPU não está fazendo nada. Se um processo começasse a usar a CPU, seria o único a usá-lo.

  • 1.0

    A CPU está no uso máximo, mas não há contenção entre processos para o uso da CPU. Ou seja, apenas um único processo está em execução para poder reivindicar 100% do tempo da CPU. Como alternativa, vários processos estão em execução, mas nenhum está reivindicando 100% da CPU e o uso combinado da CPU é de até 100%. Todos eles ainda estão rodando o mais rápido possível, mesmo que tivessem a CPU inteiramente para si.

  • Maior que 1,0

    A CPU está em uso máximo e há vários processos que desejam usá-la simultaneamente para que eles estejam executando mais lentamente do que seriam capazes de executar se tivessem uso exclusivo da CPU. Por exemplo, uma média de carga de 3,0 indica que os processos estão sendo executados com um terço da velocidade que eles desejam executar. Uma média de carga de 50,0 indica que os processos estão sendo executados a 1/50 da velocidade que eles desejam, devido a todos os outros processos em execução. Ou seja, valores acima de 1,0 indicam que a CPU disponível está sendo dividida entre processos cada vez mais ativos.

Ter uma CPU com múltiplos núcleos não altera o significado das figuras, mas altera a forma como elas devem ser interpretadas. Por exemplo, se você possui uma CPU de 4 núcleos, uma carga de 1,0 ainda é equivalente a um processo usando 100% da CPU em um núcleo, mas existem outros três núcleos. Portanto, em uma CPU de 4 núcleos, o ponto de eficiência máxima é 4,0, e não 1,0 - e o ponto em que tudo está sendo executado com eficiência de 1/3 é 12,0, e não 3,0. Para aumentar a complexidade, um único processo pode ter mais de um encadeamento, reivindicando CPU própria. Portanto, um único processo pode usar 100% de todos os 4 núcleos se for multiencadeado.

thomasrutter
fonte