23Aug

Fundamentos da CPU: várias CPUs, núcleos e Hyper-Threading explicados

A unidade de processamento central( CPU) em seu computador faz os programas computacionais de trabalho, basicamente. Mas as CPUs modernas oferecem recursos como núcleos múltiplos e hiper-threading. Alguns PCs ainda usam várias CPUs. Estamos aqui para ajudar a resolver tudo.

A velocidade do relógio para uma CPU costumava ser suficiente ao comparar o desempenho. As coisas não são mais simples. Uma CPU que oferece múltiplos núcleos ou hyper-threading pode apresentar um desempenho significativamente melhor do que uma CPU de um único núcleo da mesma velocidade que não possui hiper-threading. E as PCs com várias CPUs podem ter uma vantagem ainda maior. Todos esses recursos são projetados para permitir que as PCs executem mais facilmente vários processos ao mesmo tempo - aumentando seu desempenho quando multitarefa ou sob as demandas de aplicativos poderosos como codificadores de vídeo e jogos modernos. Então, vamos dar uma olhada em cada um desses recursos e o que eles podem significar para você.

Hyper-Threading

Hyper-threading foi a primeira tentativa da Intel de trazer computação paralela para PCs de consumo. Ele estreou em CPUs de desktop com o Pentium 4 HT em 2002. O Pentium 4 do dia apresentou apenas um núcleo de CPU único, portanto, ele realmente poderia realmente executar uma tarefa de cada vez - mesmo que pudesse alternar entre tarefas com rapidez suficienteque parecia ser multitarefa. Hyper-threading tentou compensar isso.

Um único núcleo de CPU físico com hyper-threading aparece como duas CPUs lógicas para um sistema operacional. A CPU ainda é uma CPU única, então é um pouco de uma fraude. Enquanto o sistema operacional vê duas CPUs para cada núcleo, o hardware da CPU atual possui apenas um conjunto de recursos de execução para cada núcleo. A CPU finge que tem mais núcleos do que ele, e usa sua própria lógica para acelerar a execução do programa. Em outras palavras, o sistema operacional é enganado em ver duas CPUs para cada núcleo atual da CPU.

Hyper-threading permite que os dois núcleos de CPU lógica compartilhem recursos de execução física. Isso pode acelerar as coisas um pouco - se uma CPU virtual está paralisada e aguardando, a outra CPU virtual pode emprestar seus recursos de execução. Hyper-threading pode ajudar a acelerar o seu sistema, mas não é tão bom quanto ter núcleos adicionais reais.

Felizmente, o hiper-threading agora é um "bônus". Enquanto os processadores de consumo originais com hiper-threading possuíam apenas um único núcleo que se caracterizava por múltiplos núcleos, as modernas CPUs da Intel agora possuem núcleos múltiplos e tecnologia de hiper-threading. Sua CPU dual-core com hyper-threading aparece como quatro núcleos para o seu sistema operacional, enquanto sua CPU quad-core com hiper-threading aparece como oito núcleos. O Hyper-threading não substitui os núcleos adicionais, mas uma CPU dual-core com hiper-threading deve funcionar melhor do que uma CPU dual-core sem hiper-threading.

Multiple Cores

Originalmente, as CPUs tinham um único núcleo. Isso significava que a CPU física tinha uma única unidade de processamento central nele. Para aumentar o desempenho, os fabricantes adicionam "núcleos" adicionais ou unidades de processamento central. Uma CPU dual-core possui duas unidades de processamento central, por isso parece que o sistema operacional é como duas CPUs. Uma CPU com dois núcleos, por exemplo, poderia executar dois processos diferentes ao mesmo tempo. Isso acelera seu sistema, porque seu computador pode fazer várias coisas ao mesmo tempo.

Ao contrário do hiper-threading, não há truques aqui - uma CPU dual-core, literalmente, tem duas unidades de processamento central no chip da CPU.Uma CPU quad-core possui quatro unidades de processamento central, uma CPU octa-core possui oito unidades de processamento central, e assim por diante.

Isso ajuda a melhorar drasticamente o desempenho, mantendo a unidade de CPU física pequena, de modo que se encaixa em um único soquete. Só é necessário ter um único soquete de CPU com uma única unidade de CPU inserida nisso - não quatro soquetes de CPU diferentes com quatro CPUs diferentes, cada um deles precisando de sua própria energia, refrigeração e outro hardware. Há menos latência porque os núcleos podem se comunicar mais rapidamente, pois estão todos no mesmo chip.

O Gerenciador de tarefas do Windows mostra isso bastante bem. Aqui, por exemplo, você pode ver que esse sistema possui uma CPU( socket) real e quatro núcleos. O Hyperthreading faz com que cada núcleo se pareça com duas CPUs para o sistema operacional, então ele mostra 8 processadores lógicos.

CPUs Múltiplas

A maioria dos computadores possui apenas uma CPU.Essa CPU única pode ter múltiplos núcleos ou tecnologia de hiper-threading, mas ainda é apenas uma unidade de CPU física inserida em um único soquete de CPU na placa-mãe.

Antes de abordagens de hiper-threading e multi-core, as pessoas tentaram adicionar poder de processamento adicional aos computadores, adicionando CPUs adicionais. Isso requer uma placa-mãe com múltiplos sockets de CPU.A placa-mãe também precisa de hardware adicional para conectar os sockets da CPU à RAM e outros recursos. Há muito sobrecarga neste tipo de configuração. Há latência adicional se as CPUs precisam se comunicar entre si, os sistemas com várias CPUs consomem mais energia e a placa-mãe precisa de mais soquetes e hardware. Os sistemas

com várias CPUs não são muito comuns entre os PCs de usuários domésticos hoje. Mesmo uma área de trabalho de jogos de alta potência com várias placas gráficas geralmente só possui uma única CPU.Você encontrará vários sistemas de CPU entre supercomputadores, servidores e sistemas high-end semelhantes que precisam de tanto poder de cronometragem quanto possível.

Quanto mais CPUs ou núcleos um computador possui, mais coisas podem ser feitas ao mesmo tempo, ajudando a melhorar o desempenho na maioria das tarefas. A maioria dos computadores agora possui CPUs com múltiplos núcleos - a opção mais eficiente que discutimos. Você encontrará até mesmo CPUs com múltiplos núcleos em smartphones e tablets modernos. As CPUs da Intel também apresentam hiper-threading, o que é um bônus. Alguns computadores que precisam de uma grande quantidade de energia da CPU podem ter várias CPUs, mas é muito menos eficiente do que parece.

Crédito da imagem: lungstruck no Flickr, Mike Babcock no Flickr, DeclanTM no Flickr