Von Neumann[1], que trabalhou no desenvolvimento do ENIAC e posteriormente empregou sua experiência no projeto do IAS (1952), elaborou as idéias e os conceitos que nortearam a arquitetura dos computadores até os dias de hoje. Seu entendimento é essencial para apreciarmos a atual evolução dos computadores. Iniciemos constatando, de forma óbvia, que as máquinas que usamos nas nossas casas possuem quatro elementos básicos: a CPU, a memória, os dados e as instruções (ou programas). A partir daí, apresentamos os três postulados básicos de von Neumann, que no momento podem parecer triviais, mas que não o eram na década de 50:
1. Um único controle centralizado (uma só CPU);
2. Uma única memória para dados e instruções; e
3. As instruções devem fazer operações elementares sobre os dados.
Cerca de 90% dos computadores atuais usam esses postulados e por isso são chamados de “Arquitetura de von Neumann”, ou “Arquitetura Serial”, pois empregam um único processador. Essa arquitetura, aliada aos avanços da microeletrônica, ofertou-nos o atual mercado de computadores, rápidos e baratos. Porém, tal arquitetura enfrenta um limite de velocidade que é ditado pelas leis da física. O tempo que um sinal elétrico gasta para trafegar entre dois pontos de um circuito eletrônico é muito pequeno, porém não é igual a zero. Em outras palavras, isto corresponde a dizer que existe um limite para a velocidade de relógio das CPUs e, infelizmente, ele não está muito distante. Como então continuar com a evolução dos computadores? Essa é a pergunta que tem ocupado a cabeça de muitos pesquisadores e desde a segunda metade desta década, várias soluções foram propostas.
A principal resposta vem da comparação entre nosso cérebro e um processador. É sabido que o sinal elétrico trafegando por dentro de um CI é muito mais veloz que o trânsito de impulsos nervosos entre nossos neurônios. É claro que, para fazer operações numéricas, comparar e classificar, o computador é mais rápido. Mas, por outro lado, ele é inferior, pois não pensa, não inova e não aprende, apenas segue passos programados. Por exemplo, com um único olhar em uma sala identificamos imediatamente centenas de objetos. Já um computador, mesmo o mais sofisticado, apenas consegue identificar os objetos mais simples.
Somos capazes de dirigir um carro e enquanto andamos por nossas (terríveis) estradas, temos habilidade para escolher o melhor caminho. Será que um computador pode dirigir um carro? Uma das experiências no MIT com um piloto computadorizado, que identificava a rua através das linhas paralelas do meio fio, revelou um grande escalador de árvores, pois ele confundia o contorno do meio fio com o contorno do caule das árvores.
Como será que o cérebro consegue ser superior aos processadores, se o nosso neurônio é muito mais lento que um circuito eletrônico? A resposta é óbvia: porque temos vários bilhões de neurônios operando em paralelo. Ora, por que, ao invés de construirmos CPUs velozes e gigantescas, não usamos várias CPUs, simples e confiáveis, operando em paralelo? Chegamos assim à idéia básica do processamento paralelo, que é a esperança para o próximo milênio