Processadores Para o Próximo Milênio - Parte 3
Por Alexandre Mendonça e Ricardo Zelenovsky em 06 de abril de 2001
Introdução
Na primeira página desse artigo vimos uma pequena e rápida resenha histórica sobre os computadores. A página anterior foi dedicada ao estudo da evolução da arquitetura serial para a arquitetura paralela. Agora, nesta terceira parte, vamos analisar algumas arquiteturas paralelas que foram propostas pela IBM. Veremos, não só o mais poderoso computador da atualidade, como também o projeto mais ambicioso do momento. Faremos ainda uma breve exposição sobre os computadores quânticos. Como vamos comparar velocidade de máquinas de alto desempenho, necessitaremos de uma unidade de medida. Em tais casos, a velocidade é medida pela quantidade de operações de ponto-flutuante por segundo, abreviado por flops (do inglês “float operations per second”). Como os valores são elevados, utilizam-se os multiplicadores listados na tabela ao final deste artigo. Assim preparados, iniciamos nosso estudo com um computador enxadrista.
Deep Blue, o enxadrista
A máquina chamada “Deep Blue”[1] ainda é o mais poderoso computador voltado para o jogo de xadrez. Mas, o que será que tem de interessante uma máquina que joga xadrez? Muita coisa quando esta máquina possui uma arquitetura paralela capaz de realizar 1.000.000.000.000 operações de ponto-flutuante por segundo (1Teraflops). A arquitetura é bem simples: o “Deep Blue” está montado sobre estações de trabalho IBM RS/6000SP (P2SC). Cada estação é um nó e cada nó usa um placa microcanal contendo 8 processadores VLSI. Como são empregados 32 nós, chega-se a um total de 256 processadores trabalhando em paralelo, como mostrado na Figura 1, onde uma letra “P” é usada para representar cada processador.
clique para ampliar
Figura 1: Arquitetura do Computador “Deep Blue” com seus 256 processadores.Tal arquitetura, capaz de analisar 200 milhões de posições de xadrez por segundo, duelou com o mestre Garry Kasparov, cuja capacidade de análise é de aproximadamente 3 posições por segundo. Realmente, foi uma batalha desigual. No dia 11 de maio, foi iniciada a disputa de 6 partidas, que terminou em 3,5 x 2,5 a favor do “Deep Blue”. Deve-se notar que Kasparov ainda foi capaz de ganhar a primeira e empatar três, perdendo apenas duas partidas. Kasparov, pelo segundo lugar ganhou US$ 400.000,00, enquanto que o “Deep Blue”, o vencedor, levou US$ 700.000,00 (mas infelizmente ele não teve onde gastar).
Figura 2: Kasparov versus “Deep Blue”.A habilidade do “Deep Blue” em jogar xadrez vem da chamada “função de avaliação”. Esta função é um algoritmo que mede a qualidade de uma dada posição de xadrez. Posições com valores positivos são boas para as brancas, enquanto que aquelas com valores negativos são boas para as pretas. Se o cômputo total é positivo, as brancas estão em vantagem. A função de avaliação leva em conta 4 valores que são básicos para o xadrez: material, posição, segurança do Rei e tempo. O material é calculado segundo o valor das peças, o peão vale 1 e assim por diante até a Rainha que vale 9. O Rei, é claro, está além desses valores pois sua perda implica em derrota. A posição é calculada ao olhar suas peças e contar o número de posições seguras que eles podem atacar. A segurança do Rei é medida em função de sua capacidade defensiva. O tempo está relacionado com o desenvolvimento do jogo sobre o tabuleiro. Além disso tudo, o “Deep Blue” não usa força bruta ao avaliar as posições, mas sim seleciona alguns caminhos com bom potencial e elimina as buscas irrelevantes.
Aproveitamos ainda para elucidar alguns pontos sobre este embate. O “Deep Blue” não usa inteligência artificial (IA) e tampouco aprende enquanto joga com seu oponente. Ao invés disso, ele trabalha como um sistema especialista que analisa seu vasto sistema de informações. Por exemplo, ele consulta sua base de dados com todas as aberturas dos últimos 100 anos e então calcula qual a melhor resposta ao movimento do oponente. Ele não pensa, mas sim, apenas reage e foi aí onde Kasparov tinha sua vantagem. Mas é claro que, com todos esses recursos, o “Deep Blue” é de certa forma “força bruta” contra a inteligência de Kasparov, que teve que jogar contra os fantasmas de todos os grandes mestres do passado. Além disso, a máquina nunca esquece ou se distrai.
Para terminar este tópico, perguntamo-nos por que tanto dinheiro para jogar xadrez? O principal objetivo não está no jogo, mas sim na busca de uma arquitetura rápida o suficiente para apresentar resultados práticos. Para isso, o xadrez é um excelente desafio, pois, com suas 64 células, oferece um problema matemático extremamente complexo. Ao provar sua eficiência nessa área, a IBM demonstrou ser capaz de oferecer computadores para os problemas que ainda desafiam as atuais máquinas. E, no dia seguinte à vitória, suas ações subiram.
ASCI Blue Pacific, o mais rápido
O mais rápido computador da atualidade chama-se “Blue Pacific” e foi entregue em 28 de outubro de 1998. O termo ASCI vem de “Accelerate Strategic Computing Iniciative”, traduzido como “Iniciativa para Aceleração da Computação Estratégica”, que é o nome do programa do Departamento de Energia Norte-Americano para acelerar os avanços nas tecnologias necessárias para simular numericamente dispositivos nucleares, eliminando assim a necessidade do teste físico. Ele emprega 5.856 processadores que, operando cada um a cerca de 333 MHz, entregam uma potência de aproximadamente 4 Teraflops, ou, em outros termos, é 15.000 vezes mais rápido que um PC convencional, consumindo o equivalente a 324 secadores de cabelo. Uma pessoa com um calculadora de mão levaria 63 mil anos para realizar as operações que esse computador faz em 1 segundo. A tabela a seguir resume suas principais características.
Processadores 5.856 Nós 1.464 Memória 2,6 Terabytes Armazenagem 75 Terabytes Desempenho 3,88 Teraflops Potência 486 kW Preço US$ 94 milhões Blue Gene, o maior projeto
Em 6 de dezembro de 1999, a IBM anunciou uma pesquisa de US$ 100 milhões com o objetivo de construir um computador que será 500 vezes mais poderoso que o mais rápido computador da atualidade. Esse novo computador, apelidado de “Blue Gene” será capaz de ultrapassar a marca de 1 quadrilhão de operações por segundo, ou seja, 1 Petaflops (10^15 flops). Essa marca o torna 1.000 vezes mais poderoso que o “Deep Blue” e cerca de 2 milhões de vezes mais rápido que um PC topo de linha.
Essa maciça capacidade de processamento será usada inicialmente para modelar o “dobramento” das proteínas humanas. As proteínas controlam todos os processos celulares do corpo humano. Formadas por cadeias de aminoácidos, são unidas como anéis em uma corrente e dobram-se de formas altamente complexas. Sua forma tridimensional determina sua função. Qualquer mudança na forma altera dramaticamente a função da proteína. Mesmo uma pequena alteração no processo de dobragem pode transformar uma proteína desejável em uma doença.
Assim, aprender mais sobre como as proteínas são dobradas deverá possibilitar aos pesquisadores médicos uma melhor compreensão das doenças e, em conseqüência, de suas curas. A comunidade científica considera o problema de dobragem das proteínas como um dos grandes desafios científicos da atualidade e sua solução somente pode ser alcançada com a tecnologia de computação de alto desempenho que, com certeza, terá grande impacto científico e econômico.
A expectativa da IBM é atingir os Petaflops em 5 anos, um terço do que seria esperado segundo a Lei de Moore. A IBM denomina sua abordagem para este computador de SMASH, “Simple, Many and Self-Hearing”, que seria traduzido como “Simples, Muitos e Auto-Curativo”. Três tópicos distinguem essa arquitetura SMASH:
Redução dramática do número de instruções, permitindo que os processadores sejam rápidos, de baixo consumo e ocupem pouca área do CI;
Facilidade no processamento maciçamente paralelo, permitindo mais de 8 milhões de “threads”;
Garantia de um computador auto-estável e auto-curativo, sobrepujando falhas de processadores e de “threads”.
O “Blue Gene” consistirá de mais de 1 milhão de processadores, cada um capaz de oferecer 1 bilhão de operações por segundo, ou seja, 1 Gigaflops, como está mostrado na Figura 3. Trinta e dois desses processadores serão integrados em um único CI, resultando em 32 Gigaflops. Uma placa de 2 pés por 2 pés receberá 64 CIs, levando a 2 Teraflops. Somente essa placa já é capaz de igualar o desempenho do “Blue Pacific”, que tem 8.000 pés quadrados. Oito dessas placas (16 Teraflops) serão colocadas em “racks” de 6 pés. Finalmente 64 “racks” constituirão o estado final do computador, ocupando uma área menor que 2.000 pés quadrados.
clique para ampliar
Figura 3: Arquitetura do “Blue Gene”, com seu 1 milhão de processadores.Computador Quântico
Agora teremos a sensação de que entramos no campo da ficção científica. Os computadores tradicionais trabalham com elementos básicos que podem assumir dois estados (ou dois bits): 0 ou 1. Normalmente, usam-se transistores ou “flip-flops” para representá-los. Olhando para o lado da física atômica, uma partícula quântica, como o elétron ou núcleos atômicos, pode existir em dois estados: com o “spin” para cima ou para baixo. Ora, isto constitui um bit quântico ou “qubit”. Quando o spin está para cima, o átomo pode ser lido como 1 e, quando o spin está para baixo, é lido como 0.
Os qubits diferem dos bits tradicionais porque um núcleo atômico pode estar num estado de superposição, representando simultaneamente 0 e 1 e tudo o mais que existe entre esses valores. Mais ainda, sem a interferência do ambiente externo, os spins podem se “relacionar” de tal forma que efetivamente conectam os qubits de um computador quântico. Dois átomos “relacionados” atuam em conjunto: quando um está na posição para cima e o outro é garantido estar na posição para baixo.
A combinação de superposição e “relacionamento” é o que permite a um computador quântico ter um enorme poder de processamento, possibilitando-o a realizar cálculos de forma maciçamente paralela e de forma não linear. Para certos tipos de cálculos, como por exemplo os complexos algoritmos para criptografia, um computador quântico pode realizar bilhões de cálculos em um único passo. Ao invés de resolver o problema pela adição ordenada de todos os números, um computador quântico poderia adicionar todos os números ao mesmo tempo. Assim, pela interação de um com o outro, quando isoladas do ambiente externo, os qubits podem realizar certos cálculos de forma exponencialmente mais rápida que os computadores convencionais. Diz-se que o computador quântico começa onde a Lei de Moore termina.
Em 15 de agosto de 2000, um time da IBM demonstrou um novo computador quântico com 5 qubits, composto portanto por 5 átomos (de flúor) fixados em uma molécula especialmente projetada de forma a permitir que os qubits (spin dos núcleos) “relacionem” entre si. Esses qubits são programados por pulsos de rádio-freqüência e detectados por meio de ressonância nuclear magnética, semelhante ao usado em hospitais.
Esse computador de 5 qubits foi capaz de resolver um problema de determinação de ordem de um sistema, ou seja, a determinação do período de uma função. Os computadores convencionais calculam a solução usando iterações passo-a-passo com os valores da função até que eles comecem a repetir. O computador quântico faz isso com um novo enfoque. Por natureza, eles representam simultaneamente todos os possíveis valores da variável de entrada e, portanto, com um único passo pode analisar todos os possíveis valores da função.
Apesar do potencial dos computadores quânticos ser gigantesco e encorajador, os desafios ainda são enormes. O atual computador de 5 bits é um mero instrumento de pesquisa. Ainda faltam muitos anos de trabalho para que os computadores quânticos se tornem comerciais. Os prognósticos indicam que eles deverão ter pelo menos 12 bits para poderem resolver problemas do mundo real. Espera-se que, no futuro, tais computadores venham a trabalhar como processador auxiliar para problemas matemáticos de difícil solução. Com certeza processamento de texto e Internet não são aplicações talhadas para um computador quântico. A idéia do computador quântico não é recente, ela foi proposta na década de 1970.
Conclusão Parcial
Observa-se claramente que os grandes computadores caminham para o processamento paralelo. Basicamente, o poder está vindo, não dos megahertz do processador, mas da quantidade de processadores que em conjunto resolvem um determinado problema. Isto significa que o tamanho do grão de processamento será cada vez menor e os processos cada vez mais acoplados. Vê-se também o uso intenso da arquitetura que Flynn (página anterior) classificada como MIMD. Como substituição para o atual modelo de processamento e esperança para os novos computadores, surge o processador quântico. No próximo número veremos alguns computadores Cray e estudaremos dois processadores simples, porém inovadores.
Tabela de Multiplicadores
Multiplicador Abreviatura Valor Kilo K 10^3 Mega M 10^6 Giga G 10^9 Tera T 10^12 Peta P 10^15 Bibliografia
[1] “HAL’s Legacy”, David G. Stork (Editor).
Sites
- Deep Blue: http://www.research.ibm.com/deepblue/meet/html/d.3.2.html
- Todas partidas Deep Blue vs Kasparov: http://www.ishipress.com/deepblue.pgn
- Blue Gene: http://www.research.ibm.com/news/detail/bluegene.html
- Blue Pacific: http://www.rs6000.ibm.com/hardware/largescale/SP/index.html
- Quântico: http://www.research.ibm.com/resources/news/20000815_quantum.html
Originalmente em http://www.clubedohardware.com.br/artigos/994
© 1996-2008, Clube do Hardware. Todos os direitos reservados.
É expressamente proibida a reprodução total ou parcial do conteúdo deste site e dos textos disponíveis, seja através de mídia eletrônica, impressa, ou qualquer outra forma de distribuição. Os infratores serão indiciados e punidos com base na lei nº 9.610 de 19/02/1998.
Não nos responsabilizamos por danos materiais e/ou morais de qualquer espécie promovidos pelo uso das informações contidas no Clube do Hardware.