Não certamente, mas principalmente por diante 1.00*n_cpu.
A carga significa o seguinte: se houver vários processos em um sistema de uma única CPU, eles estão executando aparentemente paralelos. Mas isso não é verdade. O que praticamente acontece: o kernel dá 1/100 de segundo a um processo e depois interrompe sua execução com uma interrupção. E dá o próximo 1/100 de segundo para outro processo.
Praticamente a questão "qual processo deve receber nosso próximo intervalo de 1/100 de segundo?" Será decidida por uma heurística complexa. É nomeado como agendamento de tarefas .
Obviamente, os processos bloqueados, por exemplo, estão aguardando seus dados pelo que estão lendo no disco, estão isentos desse agendamento de tarefas.
O que diz a carga: quantos processos estão aguardando o próximo período de 1/100 de segundo. Claro, é um valor médio. Isso ocorre porque você pode ver vários números em a cat /proc/loadavg.
A situação em um sistema com várias CPUs é um pouco mais complexa. Existem várias CPUs, cujos prazos podem ser atribuídos a vários processos. Isso torna o agendamento de tarefas um pouco - mas não muito - mais complexo. Mas a situação é a mesma.
O kernel é inteligente, tenta compartilhar os recursos do sistema para obter a eficiência ideal, e é quase isso (existem pequenas coisas de otimização, por exemplo, é melhor que um processo seja executado o maior tempo possível no mesmo CPU devido a considerações de cache, mas elas não são importantes lá). Isso ocorre porque, se tivermos carga 8, isso significa: na verdade, existem 8 processos aguardando sua próxima fatia de tempo. Se tivermos 8 cpus, podemos atribuir esses intervalos de tempo ao cpus um a um e, portanto, nosso sistema será usado de maneira ideal.
Se você vir um top, poderá ver que o número de processos em execução reais é surpreendentemente baixo: eles são os processos marcados por Rlá. Mesmo em um sistema não muito rígido, ele geralmente fica abaixo de 5. Isso ocorre parcialmente porque os processos que aguardam seus dados dos discos ou da rede também estão suspensos (marcados com Sna parte superior). A carga mostra apenas o uso da CPU.
Também existem ferramentas para medir a carga do disco, que devem ser pelo menos importantes como o monitoramento do uso da CPU, mas de alguma forma não é tão conhecido aqui em nosso mundo profissional de administrador de sistemas.
As ferramentas do Windows geralmente dividem a carga com o número real dos cpus. Isso faz com que alguns administradores de sistema profissionais do Windows usem a carga do sistema nesse sentido dividido por CPU. Eles não estão certos e provavelmente ficarão mais felizes depois que você explicar isso a eles.
CPUs multicore são praticamente múltiplas CPUs no mesmo chip de silício. Não há diferença.
No caso de CPUs com hyperthread, há um efeito colateral interessante: carregar uma CPU torna seus pares com hyperthread mais lentos. Mas isso acontece em uma camada mais profunda com a qual o agendamento de tarefas normal lida, embora possa (e deva) influenciar as decisões de mudança de processo do agendador.
Mas do nosso ponto de vista atual - o que determina a carga do sistema - isso não importa também.