ArtigosDestaque

Intel SCCC: Pentium revisitado a pensar na Cloud

Introdução

Este artigo tem como finalidade descrever ao máximo pormenor um processador que a Intel está a desenvolver desde 2009, pela sua equipa de pesquisa e desenvolvimento, em parceria com outras empresas e com a comunidade.

O objectivo deste processador é melhorar o desenvolvimento de aplicações que possam ser executadas em múltiplos cores, de forma a criar um modelo a nível de hardware e software para aplicações que corram na “Cloud”.

Na verdade, a “Cloud” neste processador é um pouco uma “buzzword” (palavra que está na moda), porque o processador pode e tem outras finalidades sem ser a “Cloud”.

SCCC significa “Single Chip Cloud Computer”.

Este é um dos artigos mais difíceis de escrever sobre um processador, visto que a informação que existe não é muita e a que há é bastante técnica. É complicado descrever um processador tão complexo e diferente para o comum dos mortais e até eu, que estou a escrever o artigo, tenho muitas questões e dúvidas sobre o processador.
Também não é um artigo com uma novidade, pois ele existe desde 2009 e provavelmente não será útil para os consumidores, visto que a Intel afirma que o SCCC nunca se tornará num produto final à venda no mercado.

Há um ponto, no entanto, que é importante de dizer desde o inicio. Na verdade o SCCC não é apenas um processador. Na prática são 48 computadores, ligados numa rede, que formam uma infraestrutura no mesmo chip. Podemos dizer que é um cluster de 48 processadores, completo, incluindo a parte de rede.

Como o artigo é difícil de escrever, também é difícil de o estruturar.
Há várias formas de abordar este tema, mas vou começar por falar no processador que dá origem ao SCCC, em seguida falar do Pentium P54C e depois descrever o SCCC começando na plataforma, com uma visão geral, até aos pequenos pormenores, pois são os pormenores que tornam este processador interessante.

 

Intel Teraflops Research Chip: A origem do SCCC

Para surpresa de muitos, a Intel mostra em 2007 um chip com 80 cores e que teoricamente chega ao valor mágico de 1 Teraflops.

Não me vou debruçar muito sobre este processador, visto que não é este o tema.
Existem muitas diferenças entre este processador e o SCCC, mas algumas ideias passaram de um para o outro.

A primeira ideia comum aos dois processadores é o seu design. Isto é, este processador introduziu a ideia de “tiles“. Uma “tile” é mais que um core. É uma unidade que pode ser composta por um ou mais cores, memória e muito importante um router para formar uma rede entre os diversos “tiles”.

No caso deste processador, tinha um “tile” bastante simples.

Aqui temos a visão de cada “tile” onde o router não ocupa muito mais que 25% do espaço e o resto é para o core.

A magia de 1 Teraflops percebia-se quando se olhava ao pormenor o core.
A maior parte do espaço é ocupado por duas unidades de vírgula flutuante e o resto do core é extremamente simples.
O número de instruções de cada core é extremamente limitado, o que limita também o seu uso para outras funções, sem ser calculo.
Outros problemas surgiram, como a elevada latência na comunicação entre os diversos “tiles”.

O SCCC, apesar de manter o conceito de tiles e de ter um router por “tile”, no resto é bastante diferente.
O SCCC é um processador muito mais genérico, em que pode servir para muitos tipos de computação. O “tile” do SCCC também é mais complexo e as instruções de cada core são x86, ao contrário deste processador.

 

Intel Pentium P54C: O processador que está na moda

A esta altura muito leitores devem estar a olhar para o título e a imagem e a perguntarem-se que processador é este, no caso das pessoas mais novas ou porque é que vou falar neste processador, visto que foi colocado no mercado à mais de 15 anos.

Na verdade, estou quase tão surpreendido como quem ler este artigo, pois não esperava ter que descrever um processador tão antigo num artigo sobre um processador moderno.

O que acontece é que o Pentium P54C está a servir de base para pelo menos dois chips da Intel. O SCCC e o Knights Corner, que vai sair em 2012 e que tem um objectivo parecido ao Intel Teraflops Research Chip. Isto é, será um produto virado exclusivamente para a computação intensiva, onde a sua base também é o Pentium P54C, mas não é isso que dá a magia ao produto.

Sem falar no Pentium P54C, é impossível de falar no SCCC, porque é uma parte fundamental do SCCC.

Este é o artigo original da Infoworld, sobre o lançamento do Pentium P54C.
O Pentium P54C é uma evolução do Pentium original, mas mantendo o nome.

É necessário referir algumas coisas:

O Pentium e Pentium MMX, a nível de arquitectura, estão mais próximos do 486 que do Pentium II. O Pentium II é algo bastante diferente e a sua origem vem do Pentium Pro, que também está pouco relacionado com o Pentium original.

O P54C, apesar de manter o nome Pentium, usava dois sockets, socket 5 e 7, que eram incompatíveis com o P5, que usava socket 4.

O P5 usava a técnica de fabrico de 0,80 nm, enquanto que o P54C usava 0.65 nm ou 0.35 nm. O P5 só estava disponível em dua versões, de 60 ou 66 Mhz, enquanto o P54C ia de 90 a 100 Mhz, o P54CQS a 120 Mhz e o P54CS de 133 a 200 Mhz.

O P54C não é o Pentium MMX. O Pentium MMX é o P55C. O P54C não tem estas instruções.

O P54C tinha algumas evoluções, que fez passar o processador de 3,1 milhões de transístores para 3,3 milhões.
Algumas dessas evoluções são importantes para o SCCC, como o suporte de multi processamento e um multiplicador de memória, pois no P5 a memória corria à mesma velocidade do processador.
Outras evoluções foram a introdução do APIC, clock control e baixa de consumo pois o Vcore passou de 5 Volts para 3.3.

Mas o que é afinal o Pentium P54C?

O Pentium original é uma evolução do 486. Apesar de ter várias alterações, não foi uma revolução. A revolução só chegou com o Pentium Pro.

Ficam aqui alguns factos interessantes sobre o Pentium:

Até à chegada do Atom, foi o último processador da Intel a ser “in order”. Isto é, o processo de execução das instruções seguia a ordem de entrada (FIFO), ao contrário dos processadores seguintes, que reorganizam a forma como são executadas as instruções.

O Pentium é um processador “Superscalar”. Como podem ver pela imagem, ele tem dois “datapaths”, chamados U e V.
Na altura ficou-se com a ideia que o Pentium seria duas vezes melhor que o 486, por ter dois “datapaths”, mas isso é errado, pois o U aceita todos o tipo de instruções, enquanto o V só aceita as mais simples.

Cada pipeline tinha 5 “stages”, o que para os dias de hoje é bastante pequeno e comparado com o Pentium IV é mesmo muito menor.

A nível de cache houve algumas mudanças em relação ao 486. A cache L1 foi dividida em duas partes. 8 KB para instruções e 8 KB para dados. No entanto a cache L1 única do 486 era 4 vezes associativo, enquanto no Pentium cada cache L1 era só 2 vezes.

A cache L2 era externa e estava na motherboard. O tamanho normal da cache L2 era 256 KB ou 512 KB.

A memória RAM corria a 60 ou 66 Mhz, o que era bem superior aos normais 33 Mhz do 486.

O bus de dados foi aumentado para 64 bits, o que permitia maior bandwidth com a memória.

A unidade de vírgula flutuante era bem mais rápida que o 486, mas descobriu-se que tinha um problema sério com algumas divisões. O caso ficou conhecido pelo nome de “FDIV bug” e na altura a imagem da Intel ficou manchada porque a primeira reacção foi de só trocarem os processadores afectados a quem provasse que no seu trabalho seria afectado pelo bug.
Isto levou a uma reacção publica bastante negativa e a Intel passou a aceitar a troca de todos os processadores afectados.
No final não houve muitas pessoas a pedir a troca e a maior parte das pessoas não seria afectada pelo bug.

O Pentium tinha uma unidade de “branch prediction” para evitar que instruções que estivessem no pipeline tivessem que aceder a memória.

Tinha gestão de energia integrada.

Foi a primeira arquitectura onde o Chipset foi pensado para ter slots PCI.

O P54C, como disse anteriormente trouxe algumas melhorias como o suporte de multi processamento e o multiplicador de memória.

Esta era a plataforma de referencia da Intel que tem por nome “Plato”.

Ao olharmos para a motherboard parece mais complicada que uma motherboard dos dias de hoje, com chips de memória L2 e vários chips que compunham o Chipset.

Podemos ver também que os slots ISA (a preto) ainda dominavam na altura, mas já tinha três slots PCI (a branco).

Aqui ficam alguns benchmarks da altura e que dizem algumas coisas interessantes.

O Pentium P54C 100 Mhz, apesar de ser “superscalar”, em números inteiros é pouco melhor que um 486 DX4 a 100 Mhz. Este tipo de cálculos são os mais comuns para um utilizador normal e por isso houve quem não visse vantagens no Pentium.

Onde ele é realmente forte é em virgula flutuante, onde bate tudo e todos, mesmo processadores que saíram bem depois, por parte de outras marcas.
Este último facto influencia a nota final.

1 2 3 4Página seguinte
Etiquetas

Artigos Relacionados

Close
Close