Devo desativar o hyperthreading em uma CPU Intel?


8

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.

Respostas:


21

Você tem uma CPU com tecnologia hyperthreading . Você não pode mudar isso, mas não se preocupe, você não terá nenhuma perda de desempenho; na verdade, aumenta o desempenho do seu sistema.

Observe que o relógio da CPU não é igual ao desempenho da CPU. O relógio não é dividido por dois para dois threads.

Atualização / conclusão: Como já mencionado nos comentários, em alguns BIOSs (mais?) É possível desativar o hyperthreading. Mas isso não trará nenhum aprimoramento de desempenho, pois o gerenciamento de encadeamentos Intels é inteligente o suficiente para usar apenas o necessário.


11
você pode desativar o hyperthreading no BIOS, se necessário. No entanto, o hyperthreading tem uma vantagem de desempenho na maioria das situações.
Journeyman Geek

2
Segundo a Intel, o desempenho é aumentado em até 30% por hyperthreading. Eu não sabia que você pode realmente desligá-lo, a maioria dos BIOS parece não ter essa opção.
Michael K

4
O HT foi extremamente útil com CPUs de núcleo único, mas as CPUs com vários núcleos o consideram menos útil devido à presença de outros núcleos. Além disso, você pode obter melhor desempenho de um único aplicativo se o HT estiver desativado, pois cada núcleo real terá mais recursos disponíveis; a única maneira de ter certeza é com testes empíricos.
Ignacio Vazquez-Abrams

2
O HT não reduz pela metade os ciclos da CPU dedicados a um determinado encadeamento, porque é uma tecnologia que permite ao núcleo físico da CPU manipular mais de um encadeamento por ciclo. Usando algum tipo de inteligência que determina qual parte do núcleo será usada por um determinado thread, o HT executará 2 threads em um único ciclo em um único núcleo, sem que um interfira no outro.
Music2myear 18/05/19

4
@Altar Como observação lateral, quando a CPU não estiver sendo usada o suficiente para exigir o uso do recurso extra potencial que o hyperthreading fornece, o Windows 7 "estacionará" esse núcleo com hyperthread, liberando presumivelmente todos os recursos para permitir que os núcleos reais trabalhar com eficiência. Eu posso ver isso acontecendo no meu quad core i7 no programa Monitor de Recursos, pois os núcleos 1, 3, 4 e 7 estão "estacionados" e mostram 0% de uso da CPU enquanto os núcleos 0, 2, 5 e 5 6 estão em execução.
Mokubai

3

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.


Eu usei 'CPU Overload' para iniciar um thread muito intensivo da CPU. No Monitor de Recursos, o gráfico (a linha azul que representa Freqüência Máxima) não salta para 110%.
Ultralisk
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.