Eu tenho um laptop com Intel i5 M430 2.27GHz. A CPU possui DOIS núcleos REAIS, mas também possui algum tipo de virtualização, para que o Windows a veja como 4 núcleos.
Em uma CPU dual core REAL, um único programa encadeado será executado em um único núcleo a 2,27 GHz. Direita?
Minha pergunta é, na minha CPU de 4 núcleos, o mesmo programa é executado a uma velocidade de 1,13 GHz? (2.27 / 2) Quero dizer, a frequência de cada núcleo real é dividida em dois para simular uma CPU de 4 núcleos?
Eu preciso saber para executar um programa com fome de CPU na velocidade máxima. Se eu executar duas instâncias desse programa, terminarei meu processamento de dados duas vezes mais rápido, porque tenho dois núcleos reais. Mas se eu iniciar 4 instâncias, terminarei o processamento 4 vezes mais rápido ou esse '2 núcleos virtuais extras' é outra característica interessante da Intel?
Atualizar:
Eu usei CPU Overload para iniciar 2 e 3 threads muito intensivos da CPU. No Monitor de Recursos, o gráfico "CPU-Total" mostra apenas 50 e, respectivamente, 75% de utilização.
fonte
O Hyper Threading (HT) da Intel foi projetado para permitir que dois threads sejam executados em um único núcleo ao mesmo tempo. Portanto, como você possui uma CPU dual core com HT, pode executar quatro threads de uma vez. Geralmente, a velocidade do clock da CPU é fixa e não varia de acordo com o número de threads em execução ao mesmo tempo. No entanto, a Intel introduziu recentemente uma função chamada Turbo Boost, que permite que a CPU execute em uma velocidade de clock mais alta, se nem todos os núcleos estiverem sendo usados. Sua CPU possui o Turbo Boost embutido, para que funcione a 2,26 Ghz se ambos os núcleos forem muito usados e 2,53 Ghz se apenas um núcleo for muito usado. Tudo isso é tratado automaticamente e a diferença na velocidade do relógio é de apenas 10%, portanto, não se preocupe muito com isso. Você será melhor se certificando de que todo o resto seja encerrado, liberando recursos para o seu processo principal.
fonte