Índice das dicas

Fusion: processadores com GPU integrada da AMD

Por Carlos E. Morimoto em 13 de novembro de 2009 às 18h20

21

A maior parte dos ganhos de desempenho que tivemos ao longo da evolução dos processadores surgiu como resultado da incorporação de mais componentes e não apenas do aumento da frequência de clock ou da sofisticação das unidades de processamento.

O 486 foi o primeiro a incorporar cache L1 e o coprocessador aritmético, o Pentium foi o primeiro a usar uma arquitetura superescalar (mais de uma unidade de processamento), o Pentium Pro incorporou chace L2, o Athlon 64 trouxe um controlador de memória integrado, o Athlon X2 trouxe dois núcleos em um único die, o Phenom X4 dobrou a oferta com 4 núcleos e um cache L3 compartilhado e o Lynnfield incorporou as linhas PCI-Express e o que restava da ponte norte do chipset.

Toda essa integração tem dois motivos centrais. O primeiro (e mais óbvio) é o aumento do desempenho, já que dentro do processador estes componentes podem operar a clocks mais altos e se comunicarem com outros componentes através de trilhas muito mais curtas, reduzindo os tempos de espera.

die

A segunda questão tem a ver com as margens de lucro. Se um PC usa um processador AMD e um chipset nVidia, significa que cada uma ficou com uma parte do bolo. Se a AMD consegue incorporar todos os componentes dentro do processador, pode cobrar um pouco mais por ele e ainda por cima se livra da concorrente. Mesmo em casos em que a AMD ou a Intel venderia também o chipset, incorporar os componentes no processador é vantajoso, já que sai mais barato do que fabricar dois chips separados.

O termo "APU" significa "Accelerated Processing Unit" e é usado em relação aos novos processadores com chipsets 3D integrados. Quando falamos em chipsets 3D vem à mente uma solução de alto desempenho, como um GT200 (GeForce 2xx) ou um Cypress (Radeon HD 5850), mas a primeira geração de processadores com GPUs integradas oferecem GPUs mais modestas, criando uma opção intermediária entre os chipset de vídeo onboard e as placas 3D mid-range.

Assim como as placas 3D onboard, as GPUs integradas ao processador utilizam memória compartilhada, dividindo o acesso à memória RAM com o processador. Entretanto, eles possuem uma vantagem importante, que é o acesso direto ao controlador de memória integrado, com tempos de acesso bastante baixos. Com o uso de memórias DDR3 e dual-channel, os PCs atuais dispõem de um barramento bastante largo com a memória, que permite o uso de GPUs relativamente poderosas.

Outro ponto importante é que com a GPU integrada ao processador, os upgrades de CPU ganham um atrativo adicional, já que além de mais poder de processamento, existe a possibilidade de aumentar também o desempenho 3D.

cpu

A AMD vem trabalhando no desenvolvimento de processadores com GPUs integradas desde a compra da ATI (ou possivelmente até antes), o que deu origem ao projeto Fusion. A ideia inicial era começar com um processador e um chipset de vídeo dentro do mesmo encapsulamento, interligados através de um link HyperTransport (similar ao Clarkdale da Intel), mas a ideia acabou sendo abandonada em favor da segunda fase, com os dois componentes integrados no mesmo die.

Isso nos leva ao Llano, cujo lançamento está agendado para 2011. Ele é um processador quad-core destinado ao mercado mainstream, que combina 4 núcleos similares ao do Athlon II X4 (512 KB de cache L2 por núcleo, sem cache L3 compartilhado) com 6 SIMD engines (com 80 stream processors cada uma) para o processamento 3D, com suporte ao DirectX 11.

Com um total de 480 stream processors, o desempenho 3D por clock do Llano deve ficar entre o oferecido pela Radeon HD 4650 (que possui 320 stream processors) e o da Radeon HD 4750, que possui 640. A grande incógnita fica por conta da frequência de clock, já que a Radeon HD 4750 (que é produzida usando uma técnica de 40 nm) utiliza um clock de apenas 650 MHz para a GPU. É bem provável que as SIMD engines do Llano operem a clocks bem mais altos, o que pode fazer com que ele apresente um desempenho similar ou até superior.

Outra questão importante é o acesso à memória. A Radeon HD 4750 utiliza um barramento de 128 bits e memórias GDDR5 (que assim como as DDR3 oferecem 8 transferências por ciclo de clock) operando a 800 MHz. Em termos e largura de banda, isso equivale ao oferecido por dois módulos DDR3 PC-1600 em dual-channel, uma configuração que deverá ser padrão nos PCs de 2011. O grande problema é que o barramento com a memória no Llano será compartilhado entre a CPU e a GPU, o que significa um desempenho potencialmente mais baixo, porém ainda bem superior ao oferecido pelo Intel Clarkdale e suficiente para rodar jogos atuais em resoluções medianas.

O Llano será produzido usando um técnica de 32 nanômetros e possuirá cerca de 1 bilhão de transístores, sendo 300 milhões destinados aos 4 núcleos, 600 milhões destinados à GPU e o restante destinado aos circuitos de apoio. Assim como os demais processadores da safra atual, ele usa um controlador de memória integrado, que é uma peça essencial para garantir baixos tempos de latência para a GPU.

Ele será um processador de baixo custo, destinado a suceder o Athlon II X4 atual. Ele provavelmente oferecerá um bom custo-benefício para quem precisa de um PC para tarefas básicas e jogos (e também uma boa plataforma de baixo consumo para notebooks), mas com certeza não interessará muito para quem quer um sistema de alto desempenho.

O Llano faz parte da plataforma "Lynx" (uma homenagem ao célebre navegador em modo texto? :), que inclui também o chipset, assim como a plataforma "Dragon" atual, que é composta pela combinação do Phenom II uma placa baseada no chipset AMD 790 e uma Radeon HD 4xxx.

apu_html_m273aa4e

O passo seguinte é a plataforma Bulldozer, que será o sucessor do Phenom II como plataforma de alto desempenho. Ele trará uma resposta ao Hyper-Threading da Intel, na forma de uma duplicação das unidades de processamento de inteiros, que oferecerá a possibilidade de processar dois threads por core, com cada um utilizando um conjunto separado de unidades de processamento. Diferente do Llano, que utilizará a GPU integrada como uma simples aceleradora 3D, o Bulldozer a utilizará como um processador auxiliar para o processamento de operações de ponto flutuante, o que deverá trazer ganhos em diversas áreas.

A primeira encarnação da plataforma Bulldozer será o Zambezi, um processador AM3, que será lançado em versões com 4 e 8 cores. Ele será sem dúvidas consideravelmente mais rápido que os Phenom II atuais graças ao processamento de dois threads por núcleo e outras melhorias, mas ele ainda não trará a GPU integrada, que ficará para o próximo processador, agendado para 2012.

No outro extremo temos o Ontario um processador de baixo consumo, otimizado para o uso em netbooks e notebooks ultraportáteis, concorrendo com o Atom:

apu_html_m92d7ab7

Assim como o Llano, ele incluirá uma GPU com suporte ao DirectX 11 e oferecerá suporte a memórias DDR3. Entretanto, ele utilizará uma arquitetura simplificada, com apenas dois núcleos e otimizada para um baixo consumo elétrico. Ele será composto por dois núcleos Bobcat, combinados com uma GPU:

apu_html_m667de802

O slide da AMD fala em um consumo "inferior a 1 watt" e "90% do desempenho de um processador mainstream atual", mas é importante entender que não é possível ter as duas coisas ao mesmo tempo. Assim como todos os processadores móveis, o clock será variável e o "consumo inferior a 1 watt" será atingido apenas em frequências baixas de processamento. Para atingir os "90% do desempenho de um processador mainstream atual" o consumo será várias vezes maior.

Atualmente, a AMD possui apenas uma versão de baixo consumo do Athlon 64 (o L110, de 1.2 GHz), que é usado em alguns netbooks como o Gateway LT3103u. Ele é ainda um processador de 65 nm, que oferece um desempenho consideravelmente superior que o Atom, mas perde com relação ao consumo elétrico devido à técnica antiquada de fabricação.

A Intel tem cultivado uma relação ambígua com o Atom, de um lado se esforçando para que ele seja usado em várias classes de dispositivos, mas de outro capando a plataforma para que ele não prejudique as vendas das versões de baixo consumo do Core 2 Duo. Isso torna a plataforma um alvo fácil para um concorrente da AMD.

Desde o Core 2 Duo, a Intel vêm mantendo um ritmo constante de lançamentos, com o lançamento de novas arquiteturas e a migração para novas técnicas de fabricação em anos alternados, uma cadência batizada de "Tick-Tock".

Com o Fusion, a AMD decidiu cunhar um termo mercadológico concorrente, o "Velocity". Em vez de ser baseado em novas arquiteturas ou novas técnicas de fabricação, o "Velocity" é baseado no lançamento de processadores com GPUs mais poderosas a cada 12 meses. Naturalmente, isso também implica em novas arquiteturas e novas técnicas de fabricação, mas a ênfase é dada ao desempenho 3D. Como pode imaginar, o objetivo da estratégia é incentivar os upgrades, já que ao atualizar o processador, você ganha também uma GPU integrada mais rápida.

21 comentáriosPor Carlos E. Morimoto. Revisado 21 de março de 2011 às 16h30

Comentários

 
por ario_2025 (anônimo) em 10 de março de 2010 às 23h06
Erro de escrita no: "Pentium Pro incorporou 'chace' L2".
 
por staionof (anônimo) em 8 de janeiro de 2010 às 19h09
Estou visualizando a cena: a memória e o HD arrancando os cabelos com um monte de núcleos, um querendo gritar mais alto que o outro, pedindo informações.
 
por staionof (anônimo) em 8 de janeiro de 2010 às 19h06
Confesso que há quase dois anos quando investi no Q6600 eu me decepcionei: esperava muito mais. Nesses meses tenho visto muita coisa que achava seriam eliminadas se repetindo, tipo demora para abrir um programa quando outro está sendo executado, perda na performance de um encodamento de vídeo quando se executa um outro programa em paralelo.
Aí me ocorreu (corrijam-me se estiver errado): adianta ter muitos núcleos, se eles não tem "parceiros" dedicados para acompanhá-los? se as 4 unidades de processamento conseguirem se concentrar em uma única tarefa, ótimo; mas se um deles estiver tendo uma "conversa séria" com a memória, os outros não tem que aguardar a vez de "se consultar"? Se a memória está trocando "figurinhas" com o HD para atender a solicitação de um núcleo, os demais não precisam esperar?
No caso de 88 núcleos como ficariam então a memória e o HD? Estressados que nem atendente em fila do INSS?
 
por Carlos Eduardo (anônimo) em 17 de novembro de 2009 às 10h11
Ótimo artigo Professor Morimoto.

AMD mostrando que pode voltar a luta. (concorrência novamente ^^)

"CRCF", reveja seus conceitos sobre tecnologia... ;)
 
por Thiago (anônimo) em 15 de novembro de 2009 às 14h37
Atualmente um processador dual core já atende a maior parte dos usuários. Na pior das hipóteses, um quad core já dá conta do recado. Entretanto, será interessante comprar nos próximos anos processadores com 6 ou 8 núcleos, pensando em atrasar novos upgrades, garantindo uma boa máquina para o futuro. Mas, ao meu ver, um usuário caseiro que não edita vídeos comprando um processador com 12 núcleos me parece um extremo exagero, tendo-se em vista que seria um desperdício de tecnologia. Outra coisa: não importa ter muitos núcleos de baixo desempenho. É melhor ter 4 ou 6 núcleos de alto desempenho que já teríamos um processador ideal. Fora a qyestão do custo, que nem vou comentar... Quem precisar de centenas de núcleos, que compre um servidor caríssimo com suporte a vários processadores.
 
por Nil Santana (anônimo) em 14 de novembro de 2009 às 21h54
bom post e também uma bela resposta a quem andou reclamando de excesso de atenção a Intel :D
 
por Gustavo (anônimo) em 14 de novembro de 2009 às 15h41
"Que eu saiba, o uso de muitas unidades de processamento para a CPU não é vantajoso nem mais rapido(não sei o motivo, adoraria saber)."

Acho que o que você está querendo saber é a lei de Amdahl:

http://en.wikipedia.org/wiki/Amdahl%27s_law

Na verdade, você só se beneficia ao usar vários núcleos quando você abre vários programas ou quando você abre um programa que tem que executar várias tarefas ao mesmo tempo.

A lei de Amdahl diz que, não importa qual algoritmo você use para implementar um programa, há um limite na velocidade que você pode atingir colocando mais núcleos de processamento. Este limite é dado pela parte "não paralelizável" do seu programa. Além disso, na prática, não é fácil fazer o seu programa se beneficiar da existência de 8 núcleos. E a maioria dos programas só usa um (porque só precisa de um).

A vantagem de se usar vários núcleos é ao usar aplicativos pesados (jogos, codificação de vídeo, ...) ou abrir vários programas. Acredito que 90% (ou mais) das pessoas que têm um quadricore não sentiria muita diferença se trocasse o computador por um que tenha 100 núcleos (exceto a conta de energia).

Na minha opinião, se não melhorarem a técnica de fabricação de processadores (possivelmente trocando transístores por outra coisa), o desempenho dos PCs vai melhorar por alguns anos e depois estagnar (o que não é tão ruim, até mesmo para jogos potentes o que você precisa mais é de uma placa de vídeo potente).
 
por Salviano (anônimo) em 14 de novembro de 2009 às 12h11
não é interessante o uso doméstico de processadores com mais de 8 núcleos, poderá ser no dia que tivermos sistemas operacionais que consomem mais recursos, mais aplicações que utilizem multithreading (provavelmente os games serão os que mais usarão), e o uso de nucleos especializados, e é isso q a AMD quer fazer, ao invés de por centenas de nucleos genéricos que acabarão por não acrescentar nada ao desempenho do pc pela impossibilidade de se tirar o maximo desses processadores em pcs domessticos por causa dos aplicativos usados, a AMD optou por integrar núcleos de GPU, dessa maneira será mais vantajoso ter pcs de mais de 8 nucleos

no caso de servidores, cada requisição cria uma nova thread, nesse caso sim, quanto mais nucleos maior o desempenho

no caso de jogos, so háverá ganho se adicionarem nucleos especializados em calculo de fisica e em processamento de gráficos
 
por DaniloT_DS (anônimo) em 14 de novembro de 2009 às 10h02
A idéia do suporte a 256 núcleos no Windows 7 se deve ao fato de que, em grandes servidores, realmente existem 32, 64 ou até mais processadores. Esse suporte gigantesco a vários núcleos é pensando no mercado de servidores. =)
 
por gilvane.neo (anônimo) em 14 de novembro de 2009 às 09h57
Acho interessante a briga Intel x Amd mas, pra mim está faltando entrar mais alguém na corrida.
Aumentando a concorrência aumentá-se a qualidade e dimui os preços.