Bulldozer : a nova arquitetura da AMD para processamento de alto desempenho

Em 2011 a AMD irá introduzir duas novas arquiteturas de processadores (CPU) x86: Bulldozer para o segmento de desktops de alta performance e servidores, e o Bobcat para o mercado móvel com foco em eficiência energética e preços baixos.




Bulldozzer
O Bulldozer será um processador com elevada capacidade de processamento paralelo (multi-threading). Ele terá a capacidade de executar mais de uma thread por núcleo, porém com uma abordagem muito mais eficiente e sofisticada que o HT (Hyper Threading) da Intel, pois a AMD está duplicando algumas estruturas fundamentais dentro dos núcleos.





Este é um núcleo do Bulldozer, mas repare que existem duas unidades independentes de cálculos de inteiros, cada qual com seu próprio cache L1. A única unidade de cálculo de Floating Point compatilha os caches L1 das unidades de cálculos de inteiros. Além disso, o Bulldozer também terá suporte ao set de instruções AVX.
Cada núcleo do Bulldozer aparecerá para o sistema operacional como dois núcleos, assim como acontece com os Intel Core i7. A diferença é que a AMD está duplicando mais estruturas que a Intel, de forma que um núcleo "virtual" da AMD terá quase a mesma performance de um núcleo físico. As unidades de cálculos de inteiros são todas duplicadas e apenas as unidades de FP (Floating Point) que são compartilhadas pelas threads.

Ao duplicar as unidades de inteiros mas não as de ponto flutuante tem uma motivação muito clara: a carga pesada de processamento de ponto flutuante será direcionada para a GPU que estará integrada em muitos processadores da AMD, no chamado Fusion, motivo pelo qual não faz sentido duplicar a estrutura de FP que não será usada. A CPU ficará encarregada de fazer o que ela faz melhor, assim como ficará para a GPU as tarefas nas quais ela se mostra bem superior à CPU.


O fato é que a nova arquitetura da AMD tem um desenho muito elegante e incorpora tudo que AMD, Intel e nVidia vêm falando há alguns anos sobre como seria o processamento do futuro. 


Os módulos do Bulldozer




O Bulldozer é uma arquitetura modular. A imagem acima representa um "módulo" do Bulldozer, que é composto de duas unidades de inteiros e uma unidade de ponto flutuante. Esse conceito é baseado no fato de que mais de 80% da carga de trabalho a qual é submetida um servidor é de inteiros, não sendo, portanto, a duplicação da unidade de ponto flutuante.


A grande vantagem da nova arquitetura da AMD é que a utilização de uma única unidade de ponto flutuante por módulo do Bulldozer permite uma economia significativa no tamanho do chip, e, portanto, de sua dissipação energética, pois a FPU (Unidade de Ponto Flutuante) é uma das estruturas que mais consomem espaço dentro de um chip de microprocessador.


Outra grande inovação que a AMD introduz é o direcionamento da carga pesada de processamento em ponto flutuante para a GPU, tendo em vista que a sistemática de processamento amplamente paralelo desse tipo de processador torna os cálculos de ponto flutuante muitas vezes mais rápidos (até centenas de vezes mais rápidos) que se fosse executados por uma CPU.



O Bulldozer de quatro núcleos




A figura acima mostra como será uma CPU de quatro núcleos baseada na arquitetura Bulldozer: ela será formada por dois módulos Bulldozer. 


O Bulldozer de oito núcleos




O diagrama acima mostra como será uma CPU de 8 núcleos baseada no núcleo Bulldozer: são quatro módulos Bulldozer juntos.


Esses dois exemplos mostram que a AMD introduz uma nova forma de contar a quantidade de núcleos dentro de um processador. Um Phenom X4 é realmente quatro núcleos Phenom II em uma única pastilha de silício. O mesmo não se pode dizer de um quad-core baseado no Bulldozer. A menor estrutura funcional é um módulo, que contém dois núcleos.

Conclusão



A nova arquitetura da AMD se mostra muito promissora. Os conceitos que fundamentaram o projeto da nova CPU da AMD são realmente promissores. A arquitetura de execução de 2 threads por núcleo que a AMD apresenta é muitas vezes superior à usada pela Intel. Enquanto a Intel consegue um rendimento máximo de um núcleo virtual de seu HT da ordem de 30% (sendo que em alguns casos a existência do HT até piora a performance da CPU), a arquitetura da AMD deverá levar a um núcleo virtual com capacidade de processamento similar a um núcleo físico. Ou seja, há uma quase duplicação da capacidade de processamento do CPU.


Outro aspecto importante é o direcionamento dos cálculos de ponto flutuante para a GPU. É importante considerar que a AMD tem muito mais conhecimento para lidar com GPU que a Intel, pois a AMD já produz as melhores, mais rápidas e eficientes GPU´s do mercado - as Radeon. Não há a menor dúvida que o processamento de ponto flutuante em GPU é muitas vezes mais rápido (centenas de vezes mais rápido) que quando executado em CPU. Para se ter uma idéia, uma tarefa de renderização de imagem que demora horas para ser concluída numa CPU atual, poderá ser feita pelo Bulldozer em questão de poucos minutos.


Sendo assim, a nova CPU da AMD se mostra extremamente promissora e deve dispor de uma capacidade de processamento absolutamente fenomenal, pois a duplicação das estuturas de inteiros deve acelerar em muito a performance em aplicações de servidores. Por outro lado, quando se tratar de processamento de ponto flutuante, como codificação de vídeo, jogos e aplicações matemáticas, o processamento será executado pela GPU interna do Bulldozer, o que fará esse tipo de processamento se tornar muitas vezes mais rápida do que é executado atualmente.


A AMD parece que dispõe de um novo K-8, um chip com poder de fogo e arquitetura suficiente para tomar uma boa dianteira em termos de performance, performance/preço e performance/watt em relação à Intel.


A história recente de desenvolvimento de CPU´s mostra que a AMD, mais do que a Intel, esteve à frente na tarefa de direcionar o desenvolvimento da tecnologia. O Athlon K-8 introduziu a computação de 64 bits, que depois foi seguido pela Intel alguns anos depois. O Phenom foi o primeiro processador a migrar para uma arquitetura de cache de 3 níveis hierárquicos, com caches L2 privativos de cada núcleo. A Intel provou que essa arquitetura era a correta ao implementá-la no Core i7 alguns anos depois. 


O Bulldozer é uma arquitetura que está à frente de seu tempo, apresentando uma arquitetura pronta para o mundo da computação heterogênea CPU/GPU no mesmo espaço. Ocorre que aqui temos uma diferença: a AMD produz e desenvolve GPU há muitos anos. A Intel não. Isso pode atrasar significativamente a adoção, por parte da Intel, desse novo tipo de processamento.

Comentários