Estou brincando com um script e me empolguei (ainda está em execução no momento e, no entanto, meu computador ainda não morreu). Estou executando 17 iterações do script (com a intenção de travar meu computador).
Olhando para o monitor de atividades, vejo que cada processo Python tem um pid único e que eles parecem ocupar cerca de 17 a 20% do meu poder de processamento cada ... Como isso é possível? Meu computador aumentou magicamente 200% de energia e violou as leis da termodinâmica em algum lugar?
macos
cpu
parallel-processing
Frankenmint
fonte
fonte
Respostas:
No OS X, como outros * nixes, a carga da CPU é medida por núcleo do processador virtual. Se você tiver vários - você pode ter 200% e mais combinados sob carga total.
Isso é diferente do Windows e talvez de outros sistemas, nos quais a carga da CPU é calculada por toda a CPU (ou CPUs - não me lembro como ela se comporta ao ter vários processadores físicos).
fonte
OS X e Linux e possivelmente outros sistemas operacionais UNIX (ou melhor, as ferramentas mais comuns nesses sistemas) exibem o uso da CPU de maneira diferente do Windows. No Windows 100% significa " todos os recursos da CPU usados". No Linux, isso significa que um "thread" (como no Hyper-threading) está completamente ocupado. Como tal, pode alcançar até
(Number of Threads per Core) * (Number of Cores per CPU) * (Number of CPUs)
no total.Embora não esteja totalmente relacionado, outro fato interessante: o Windows 10 normaliza ainda mais o uso da CPU usando o estado de otimização atual da CPU. Portanto, uma CPU de 2 GHz com aceleração de 1 GHz estará apenas 50% ocupada.
fonte
top
se comporta dessa maneira, por exemplo.Como já apontado em várias respostas, o Mac mostra a porcentagem de CPU de cada processo como 'porcentagem de um núcleo'; portanto, você deve dividi-lo pelo número de núcleos [incluindo HT como 'duplo']
Se você não tiver certeza de quantos núcleos virtuais você possui, Cmd ⌘ 3 o painel Histórico da CPU do Activity Monitor será aberto, onde você pode simplesmente contar as faixas;)
Diretamente abaixo de onde você cortou a imagem, estão as informações necessárias para determinar rapidamente o uso total real do Sistema :, Usuário: & Ocioso: Aí está o total simples de 100%
fonte
O monitor de atividades, na verdade, não mede o poder de processamento que cada aplicativo / processo usa, apenas o estima usando um algoritmo. Portanto, pode ser impreciso ...
Além disso, como o @Vasfed aponta, o consumo da CPU é medido por núcleo do processador. Múltiplos núcleos podem significar mais de 100% de uso ...
Um nerd ocasionalmente tropeça nesse fenômeno e fica pasmo até que um superusuário o ajude ...; D
fonte