Hoje vamos aprender o que são núcleos de CPU e como eles funcionam juntos. Muitos anos atrás, as CPUs tinham apenas um núcleo. Agora as CPUs têm mais de um núcleo em computadores, smartphones e até smartwatches.
O que é um núcleo de CPU?
O núcleo de uma CPU é a parte mais importante dela. É o componente onde as informações do sistema de computador são processadas para serem registradas, lidas, interpretadas e gravadas. Todas as tarefas a serem realizadas e enviadas passam por ele e é também onde os demais componentes do seu sistema recebem as instruções para serem realizadas.
No entanto, com o tempo, o número de núcleos aumentou consideravelmente. No momento, os processadores da linha nacional mais importante têm até 16 núcleos, como no caso do Ryzen 9 5950X; por outro lado, nos servidores, podemos encontrar CPUs com até 64 núcleos.
Como funcionam os núcleos da CPU?
Em muitos casos, mais núcleos não representam exatamente maior funcionalidade ou desempenho em comparação com um único núcleo, e a resposta está em como esses núcleos funcionam.
Uma CPU só pode processar uma única tarefa por vez. É por isso que eles funcionam em velocidades muito altas com frequências acima de 1 GHz em processadores mais antigos e acima de 4 GHz em produtos de última geração. No entanto, conforme o desenvolvimento do software também progrediu, as CPUs começaram a ficar mais lentas no que diz respeito à quantidade de informações que precisavam processar. Surgiu então a necessidade de criar clusters e unidades centrais que registrem informações individualmente para dividir tarefas e dar relevo a tarefas mais complexas e exigentes.
Em muitos sistemas, especialmente em CPUs ARM, nem todos os núcleos funcionam na mesma velocidade. Este também é um desafio de desenvolvimento para os programadores e engenheiros que projetam essas máquinas. Em muitos destes casos, os processos são divididos de acordo com a velocidade com que cada núcleo pode trabalhar em tarefas mais ou menos exigentes, dando origem também à divisão em categorias de núcleos.
Porém, isso só responde à programação de software, que se encarregará de solicitar à CPU que execute tarefas através de diferentes núcleos caso seja projetada dessa forma. Caso contrário, o trabalho continuará concentrado em um único núcleo.
Imaginemos que as tarefas enviadas por um sistema computacional são hambúrgueres servidos em uma mesa onde os casais podem sentar para trabalhar. Quanto mais bocas houver, mais rápido a comida vai acabar. A velocidade com que cada núcleo come também dependerá da prioridade com que os hambúrgueres são servidos, porque não faz sentido colocar pedidos de 10 hambúrgueres por núcleo que só podem comer 5 hambúrgueres por vez porque estão de dieta. Espero que esta demonstração tenha sido clara o suficiente.