Por que não há opção no BIOS?
Suponho que o motivo pelo qual a Dell e os amigos muitas vezes não adicionam uma opção para desativar isso é porque raramente é uma boa ideia. Em média, o seu computador ficará mais lento (ou, de um ponto de vista diferente, tornará os computadores dos concorrentes relativamente mais rápidos).
Tendo dito isso, vamos dar uma olhada em alguns exemplos imaginários:
O que o HT faz?
1 core, sem hyper-threading
- 1 processo de ligação da CPU está sendo executado e pode ser executado e a velocidade máxima. Vamos chamar essa velocidade 1 ou 100%
- 2 processos ligados à CPU em execução. A CPU terá que alternar entre os dois. A velocidade efetiva em ambos os processos é aproximadamente reduzida à metade. (A soma de ambas as velocidades ainda é igual ao primeiro exemplo).
- 3 processos ligados à CPU em execução. A CPU terá que alternar entre os três. A velocidade efetiva em ambos os processos é de aproximadamente um terço. (A soma de ambas as velocidades ainda é a mesma (3 x 0,33 = 1).
2 núcleos, sem hyper-threading
- 1 processo de ligação da CPU * 0 está em execução e pode ser executado e a velocidade máxima para esse núcleo. (velocidade 100%) (o outro núcleo está inativo).
- 2 processos ligados à CPU em execução. Ambos podem funcionar na velocidade máxima para o seu núcleo. (velocidade de 200%)
- 3 processos ligados à CPU em execução. Normalmente, você obtém 3 tarefas rodando a uma eficiência de 2/3. (A soma das velocidades ainda é '2'. Aproximadamente 2 porque você perde um pouco devido a sobrecarga extra e falta de cache). (velocidade de 200%, ou talvez 190%)
Agora, núcleos com hyper-threading. Estes atuam como dois núcleos, mas não dois núcleos completos. O que a Intel define como hyper-threading mudou um pouco ao longo do tempo, mas geralmente se resume a isso. Uma CPU busca dados da memória e calcula. Se não precisar do barramento de memória, uma segunda parte da CPU pode fazer um trabalho limitado. Como nem todo hardware é duplicado, você não obtém dois núcleos completos. No entanto, com hardware extra limitado (10%?) Você ganha em média 30% de velocidade. * 1
1 núcleo, com - 1 processo de limite de CPU está sendo executado e pode ser executado e velocidade máxima. (100%) - 2 processos ligados à CPU em execução. A CPU terá que alternar entre os dois. No entanto, tem algum hardware extra. A velocidade líquida será cerca de 30% mais rápida (digamos velocidade de 133% para um único núcleo)
Etc.
Tanto para a introdução ao HT.
Estes% fictícios são reais?
Não. Primeiro de tudo você vai perder eficiência devido a sobrecarga. (10 tarefas em uma CPU não serão executadas mais lentamente do que apenas uma tarefa sem comutadores de contexto e com todo o cache para seus dados).
Em segundo lugar, ignorei totalmente o aumento do turbo, pois isso complicaria a explicação.
O que meu amigo possivelmente quis dizer?
Vamos dar uma olhada no seu processador de 8 núcleos de 8 núcleos assim:
Core 1, CPU 1 (real)
Core 1, CPU 2 (com HT)
Core 2, CPU 3 (real)
Core 2, CPU 4 (com HT)
Core 3, CPU 5 (real)
Core 3, CPU 6 (com HT)
Core 4, CPU 7 (real)
Núcleo 4, CPU 8 (com HT)
Se eu executar duas tarefas, não quero as duas na CPU1 e na CPU2 (já que elas compartilham um núcleo real) e o resultado líquido está próximo da metade da velocidade possível. Isso pode ser o que seu amigo quis dizer.
Embora seja verdade, acho que você não precisa se preocupar. O agendador de janelas é inteligente o suficiente para alocar processos primeiro para as CPUs 1,3,5,7 e só então para 2,4,6,8.
* 0 Um processo de limite da CPU é um processo que é limitado pela CPU. Se um processo está esperando por diskIO e a CPU está ociosa, você obtém resultados totalmente diferentes.
* 1 Por favor, pegue esses números com um grão de sal. Eles não são precisos. Eles variam por geração de CPU e até por modelo de CPU. Eles irão variar por programa. E o que a Intel chama de hyper-threading mudou desde as primeiras gerações de CPU. No entanto, eles dão uma ideia aproximada.