3Processamento paralelo

O grande segredo dos supercomputadores é a força bruta. Além de muita memória, eles possuem inúmeros processadores (hoje contados na casa dos milhares) que funcionam juntos, como em uma orquestra.

Por conta da quantidade de processadores e de memória, os PCs de casa não são páreos para os supercomputadores, mesmo os mais acanhados. Se compararmos com os primeiros da lista, então, a coisa fica ainda mais distante: o famoso Roadrunner, sétimo supercomputador mais rápido do mundo, possui mais de 19 mil processadores. O Jaguar, terceiro no ranking, tem cerca de 37 mil processadores de dois núcleos, num total de quase 80 mil núcleos. Um PC caseiro tem, no máximo, quatro processadores. E até bem pouco tempo atrás, a regra era possuírem um só.

Com apenas um processador, um computador doméstico ou empresarial pode desempenhar apenas uma tarefa por vez. Mesmo com sistemas operacionais ditos “multitarefa” (como o Windows e o Linux), o que ocorre é apenas a ilusão de várias tarefas sendo executadas ao mesmo tempo. Na verdade, o sistema alterna entre as várias tarefas (pula de uma para outra) numa velocidade muito grande, dando a ilusão de que você está editando no Word e jogando paciência ao mesmo tempo.

Hoje, os PCs domésticos têm processadores com dois ou mesmo quatro núcleos - um processador com dois núcleos é um “dois-em-um”, funcionando como se fossem dois processadores separados. Portanto, é correto dizer que os sistemas domésticos possuem processamento paralelo. Mas, com dois processadores, são apenas duas tarefas ao mesmo tempo. Há diversas tecnologias empregadas pelos supercomputadores para controlar e distribuir tarefas a todos os seus processadores, de forma que, ao mesmo tempo, cada um faça uma coisa diferente (é a isso que chamamos de processamento paralelo).

Além de processadores “tradicionais” (como os intel Core e os AMD Opteron) trabalhando de forma paralela, é comum ver processadores vetoriais (os mesmos usados em placas de vídeo para desenhar rapidamente cenas complexas na tela, especialmente em jogos) também contribuindo em cálculos matemáticas a altas velocidades. Não é o intuito deste artigo discorrer sobre o funcionamento de cada tecnologia, mas é curioso notar como componentes criados para um propósito específico acabam sendo úteis em outros usos.

foto: Divulgação