Quase todas as CPUs atualmente são multi-core: contêm diversas unidades de processamento que podem lidar com diferentes tarefas de uma vez.
No entanto, os benefícios de se adicionar mais núcleos nem sempre são descritos. Qual é a diferença entre aplicações single-threaded e multithreaded? O que é Hyper-Threading, e de que modo ele é diferente do multithreading normal?
Para explicar os benefícios de se ter núcleos adicionais e Tecnologia Intel® Hyper-Threading, vamos examinar esses termos e explicar o que eles significam para a execução de games e aplicações cotidianas.
O que é multithreading?
Multithreading é uma forma de paralelização ou divisão de trabalho para processamento simultâneo. Em vez de dar uma grande carga de trabalho para um único núcleo, os programas com threads dividem o trabalho em múltiplos threads de software. Esses threads são processados em paralelo por diferentes núcleos de CPU para economizar tempo.
Dependendo de como são construídos, os games podem levemente threaded ou fortemente threaded. Alguns mecanismos de games mais antigos são conhecidos por dependerem de desempenho de thread único, o que significa que usam um só núcleo da CPU e recebem um grande impulso das velocidades do clock.
Hoje, os mecanismos de jogos, como o Unreal Engine 4, utilizam vários núcleos ao criar cenas complexas2. Os mecanismos também podem utilizar multithreading para lidar com diferentes partes de “chamadas draw": instruções enviadas da CPU para a GPU sobre objetos do game, texturas e shaders a serem desenhadas.
O que é Hyper-Threading?
A Tecnologia Intel® Hyper-threading é uma inovação de hardware que permite que mais de uma threads trabalhe em cada núcleo. Mais threads significam que mais trabalhos podem ser realizados em paralelo.
Como funciona Hyper-Threading? Quando a Tecnologia Intel® Hyper-Threading está ativa, a CPU expõe dois contextos de execução por núcleo físico. Isso significa que um núcleo físico agora funciona como dois “núcleos lógicos" que podem lidar com diferentes threads de software.
Dois núcleos lógicos podem executar tarefas com mais eficiência do que um núcleo tradicional de thread único. Por aproveitar o tempo ocioso em que o núcleo espera por outras tarefas serem concluídas, a tecnologia Intel® Hyper-Threading melhora a taxa de transferência da CPU.
Pensando em como ativar Hyper-Threading? Ele é habilitado por padrão, mas pode ser ativado e desativado no ambiente do BIOS definindo a “Tecnologia Hyper-Threading” como “Habilitar” ou “Desabilitar”. Observe que a Tecnologia Intel® Hyper-Threading só está disponível em algumas CPUs para entusiastas: consulte a lista completa aqui.
Que benefícios receberei da Hyper-Threading?
Com Hyper-Threading da CPU, um PC pode processar mais informações em menos tempo e executar mais tarefas em segundo plano sem interrupção. Nas circunstâncias corretas, a tecnologia permite que os núcleos da CPU efetivamente façam duas coisas ao mesmo tempo. Os que realizam multitarefas, fazem transmissões e outros profissionais que executam programas com uso intenso de threads podem acelerar sua experiência de computação fazendo upgrade para uma CPU para notebook para jogos ou desktop para jogos com a tecnologia Intel® Hyper-Threading.