Sítio do Piropo

B. Piropo

< Coluna em Fórum PCs >
Volte
01/11/2010

< A Série Radeon 6800 III: EyeSpeed, Eye-Definition e Fusion >


 

Como pretendo montar uma máquina mais potente nas próximas semanas, substituí nesta que vos fala a HD 6870 por sua irmã menor, a HD 6850. Embora testes de desempenho provavelmente apontassem diferenças, sou obrigado a confessar que no que me diz respeito não consegui identificar uma redução significativa, mesmo no jogo “Medal of Honor”, único que consegui obter compatível com as inovações incluídas na nova família (não sou chegado a jogos violentos, mas as chaves dos demais jogos que a AMD me enviou foram rejeitadas e não consegui obter outras).

Mas dá para afirmar que, no que diz respeito ao desempenho no trabalho de rotina, mesmo quando envolve a consulta a material em vídeo, definitivamente não se percebe qualquer diferença.
Considerando que estas colunas visam divulgar as impressões de usuário e não o resultado de testes, no que toca à configuração dos monitores múltiplos, mais especificamente de três monitores usados simultaneamente para a EyeFinity, não sei se devido a alguma peculiaridade do restante de meu hardware, devo comentar que a coisa funciona mas é sujeita a alguns percalços.
Explicitando: não tive qualquer problema para criar o grupo de três monitores e configurar nele o EyeFinity (veja coluna anterior). Mas toda a vez que tentei retornar ao modo de Área de Trabalho estendida (ou seja, desfazer o grupo e “sair” da configuração em EyeFinity), assim que carregava o Catalyst Control Center (o utilitário da AMD que gerencia a configuração das controladoras gráficas), o sistema deixava de reconhecer dois dos monitores e eu não conseguia “ressuscitá-los” nem com reza forte. Era preciso desconectar todo o conjunto de monitores e tentar diversas combinações diferentes até que, em uma delas, o sistema miraculosamente voltava a “enxergar” as três unidades. Por isto acabei me resolvendo a usar rotineiramente a configuração em Área de Trabalho estendida, passando a recorrer ao EyeFinity apenas para quando carregar algum jogo.
Mas vamos adiante, fechando a série com a discussão dos avanços tecnológicos incorporados pela AMD nas novas placas e seus planos para o futuro próximo. E, não obstante meu esforço para evitar o uso do jargão técnico, dada a natureza do tema, talvez não seja possível fugir dele. Mas farei o possível para manter a coisa tão inteligível para os leigos quanto possível.

As tecnologias EyeSpeed e Eye-Definition
Um destes avanços é aquele que foi batizado pela AMD de “EyeSpeed”. Trata-se de uma técnica específica para aceleração gráfica baseada em processamento paralelo.
Para desenvolvê-la a AMD pesquisou qual a porcentagem de usuários que se dedicam a determinadas atividades rotineiramente em seus computadores.


Figura 1: Usos do computador

O resultado, exibido no gráfico da Figura 1, mostra, como era de esperar nestes tempos em que a Internet paira soberana sobre as demais atividades dos usuários domésticos, que as atividades mais amplamente utilizadas são o correio eletrônico e a navegação na rede, seguidas pelas atividades produtivas no escritório, audição de música, bate-papo e acesso a vídeo em tempo real (quem, como eu, acreditava que o computador seria uma ferramenta extraordinária em sala de aula, há de ter ficado muito triste ao constatar que, lamentavelmente, as atividades educacionais estão em antepenúltimo lugar...)
Enfim, seja como for, a AMD constatou que algumas destas atividades (as apontadas pelo retângulo azul, ou seja, navegar na Internet, “bater-papo” com vídeo e assistir vídeo em tempo real, consulta a redes sociais e transmissão de voz via Internet) podem se beneficiar grandemente de progressos na área de vídeo de alta definição e tridimensionalidade, enquanto outras três, apontadas pelo retângulo alaranjado (ouvir música, edição de fotos e de vídeo) podem aproveitar-se de melhoramentos no gerenciamento simplificado de conteúdo.
Foi com esta ideia em mente que a AMD passou a aperfeiçoar a tecnologia EyeSpeed.
Segundo a AMD, ela faculta “rodar diversos aplicativos simultaneamente com notável rapidez e confiabilidade. A tecnologia EyeSpeed permite reduzir a lentidão e os ‘trancos’ em aplicativos que fazem uso intensivo de áudio e vídeo”. Para implementá-la a AMT recorreu não apenas a aperfeiçoamentos no hardware das controladoras de vídeo como também a melhorias nas soluções de software, implementando aquilo que batizou de “OpenCL” (“Open Computing Language”, ou linguagem aberta de computação), ainda segundo a empresa, “o primeiro padrão realmente aberto e isento do pagamento de direitos para computações de uso geral em sistemas heterogêneos”. O padrão é desenvolvido por um comitê que inclui representantes de diversas empresas (como CyberLink, ArcSoft, Roxio, Adobe e, por último mas não menos importante, Microsoft) e tem por objetivo fornecer aos usuários uma solução não proprietária para acelerar suas unidades de processamento centrais (UCPs), gráficas (UGPs) e aceleradas (as “UPAs” da AMD sobre as quais falaremos adiante).
Mas não adianta gerar imagens rapidamente se a resolução destas imagens não for suficientemente alta.
Explicando: em artes gráficas, resolução é a grandeza que define o número de pontos visíveis em uma determinada área. Na tecnologia de vídeo ela em geral é expressa na unidade “ppi”, de “pixels per inch”, ou pontos por polegada.
Imagens exibidas em baixas resoluções mostram objetos com as bordas “serrilhadas”. Quanto maior a resolução, menor a sensação de serrilhamento. Uma das formas de reduzi-lo é recorrer a uma técnica denominada “anti-aliasing”, que altera as cores de pixels vizinhos para causar a impressão que as bordas são suaves. Porém, caso a resolução seja demasiadamente baixa, o resultado é a substituição de imagens serrilhadas por imagens com bordas “borradas”. Por isto, para obter imagens realísticas, além de recorrer a técnicas de “anti-aliasing”, é preciso aumentar a resolução.
Assim se obtém imagens “bem definidas”, com uma definição próxima daquela que o olho humano percebe (isto porque, naturalmente, ainda que a tecnologia permita trabalhar com um número de pontos por polegada muito mais alto, nenhum benefício se poderá usufruir disto caso a definição venha a ser superior àquela que o olho humano pode distinguir).
A tecnologia utilizada pela AMD para aumentar a resolução das imagens até níveis próximos daquela que pode ser percebida pelo olho humano denomina-se, justamente, “Eye-Definition”. Segundo a empresa, ela consiste em exibir telas com uma resolução teórica de 268 Mpx (megapixels), aproximadamente equivalente à resolução que pode ser percebida pelo olho humano em um ângulo de visão de 90º (à guisa de comparação, ainda segundo a AMD, um monitor LCD de 19” tipicamente consegue exibir pouco mais de 1 Mpx).
A obtenção de imagens que apresentem os efeitos EyeSpeed e Eye-Definition é feita através da combinação de um hardware altamente sofisticado, processamento paralelo e dos padrões de software OpenCL e DirectX 11. A integração destas técnicas nas controladoras de vídeo Radeon HD 6800 permitiu que a denominada “tecnologia imersiva”, capaz de gerar imagens de elevadíssima qualidade e alto grau de realismo, que pelo alto custo dos dispositivos necessários para produzi-las eram usadas até agora apenas em treinamento militar, simuladores de voo para treinamento e prospecção de petróleo e gás, pudesse ser utilizada para jogos.


Figura 2: Tecnologia imersiva para jogos

Para auxiliar os programadores, a AMD fornece gratuitamente o conjunto de desenvolvimento de software (SDK, ou “Software Development Kit”) ATI Stream SDK v2.
Quem tiver maior interesse na tecnologia EyeSpeed, no padrão Open CL e no DirectX 11 (uma coleção de APIs – ou interfaces de programação de aplicativos – especificamente voltada para criação de jogos) encontrará maiores detalhes no sítio < http://developer.amd.com/zones/OpenCLZone/pages/default.aspx > “OpenCL Zone”, na página < http://www.amd.com/us/products/technologies/amd-app/Pages/eyespeed.aspx > “AMD EyeSpeed Technology” (nesta, particularmente, há alguns vídeos que valem a pena serem vistos, especialmente se a máquina estiver equipada com controladoras gráficas de alto desempenho) e nos documentos < http://www.amd.com/us/Documents/AMD_Radeon_Video_WP.pdf > “Video technology” e < http://www.amd.com/us/Documents/AMD_Radeon_Display_Technologies_WP.pdf > “Display Technology”. Estes últimos, particularmente o último, contêm informações interessantíssimas que, todavia, interessam apenas a quem tem algum conhecimento técnico nesta área específica e seria tedioso para os demais abordá-los aqui. Mas se você tem interesse em saber como são geradas imagens tridimensionais por uma controladora de vídeo ou como são feitos ajustes de cores precisos, não deixe de consultá-los.

Fusion
O lançamento da série HD 6800 não ficou restrito a ela. Serviu também para que a AMD comentasse seus planos para o futuro próximo. E, no centro deste futuro, reluz a tecnologia Fusion.
De que se trata?
Segundo a própria AMD: “A tecnologia Fusion, da AMD, consiste em projetar processadores e desenvolver software a partir de uma nova perspectiva, fornecendo poderosas capacidades de processamento de dados e gráficos em alta definição, tridimensionalidade e tarefas que exigem intensa carga de trabalho em um processador constituído por uma única peça de silício e denominado UPA. As UPAs combinam, em série e em paralelo, núcleos de alto desempenho com outros componentes de hardware cujo objetivo específico é acelerar o processamento, permitindo que sejam rompidas barreiras na computação visual, segurança, relação desempenho/potência e fator de forma” (AMD Fusion is a new approach to processor design and software development, delivering powerful CPU and GPU capabilities for HD, 3D and data-intensive workloads in a single-die processor called an APU. APUs combine high-performance serial and parallel processing cores with other special-purpose hardware accelerators, enabling breakthroughs in visual computing, security, performance-per-watt and device form factor.)
Entendeu?
Pois destrinchemos mesmo assim.
O produto da tecnologia Fusion será um processador que ela mesma batizou de UPA (em inglês, APU, de “Accelerated Processing Unit”).
Uma UPA, ou unidade de processamento acelerado, consiste em uma única peça que combina as capacidades e habilidades de processamento de dados e gráficos.
Note bem: não se trata de um projeto semelhante ao de alguns dos novos processadores da Intel que trazem uma unidade gráfica de processamento e uma unidade central de processamento interligadas no interior de um único “chip”, como por exemplo a arquitetura Clarkdale. Trata-se de uma única unidade de processamento, multinuclear, integrada em uma peça única de silício, capaz de combinar seus diferentes núcleos tanto em paralelo quanto em série. Na combinação em paralelo as tarefas de processamento de dados e de gráficos são distribuídas entre os núcleos para gerar gráficos – inclusive tridimensionais e em alta definição – enquanto prossegue o processamento de dados. Já na combinação em série a capacidade dos diferentes núcleos é somada para acelerar a execução de uma tarefa.
Ou seja: a tecnologia Fusion combina as tecnologias de processamento escalar das unidades centrais de processamento, genéricas, com as de processamento vetorial ou gráfico, em uma única unidade multinuclear na qual os núcleos podem ser combinados de diferentes maneiras de acordo com a demanda deles exigida.
As UPAs da AMD serão compatíveis com os sistemas operacionais atuais (inclusive Windows 7) e padrões de aceleração gráfica (como o DirectX 11). Farão uso intensivo do processamento em paralelo oferecido pelo padrão OpenCL – cujo desenvolvimento tem sido fomentado pela AMD justamente porque permitem tirar máximo proveito das capacidades de processamento em paralelo das futuras UPAs.
A combinação dos processamentos de dados e gráficos em um único “chip” de alto desempenho, segundo a AMD, permitirá que seu computador execute tarefas como:
- reconhecer sua fisionomia e liberar o acesso ao computador (efetuar “login”) sem a necessidade de senhas;
- reconhecer seus gestos e agir de acordo com eles;
- reagir a seu toque ou voz e executar comandos consoantes com eles;
- permitir a conversa (inclusive com vídeo de alta definição) via Internet mesmo em conexões de baixa taxa de transferência;
- inspecionar seus arquivos de fotos e vídeos e classifica-los usando o reconhecimento de faces, locais ou objetos (“foto do Tiririca tirada em Carapicuíba segurando um trombone”, por exemplo);
- auxiliar na classificação de arquivos gráficos e de vídeo para, por exemplo, eliminar duplicatas;
- “retocar” arquivos de vídeo para melhorar o foco, distribuição de cores e estabilidade de imagem;
- abrir a Wikipedia ou outra enciclopédia da Internet e carregar a página correta quando você clicar sobre a figura de um ator em um vídeo ou sobre uma imagem em um noticiário de TV transmitido ao vivo;
- ampliar conteúdo, ainda que de imagens de baixa qualidade, para “encher” totalmente o vídeo de seu monitor de alta definição (com imagens em alta definição, naturalmente);
- acrescentar realismo estereoscópico a imagens bidimensionais;
- permitir que se usufrua da experiência imersiva em jogos tridimensionais em múltiplos monitores;
- e ser vendido a um preço que esteja ao alcance do bolso do usuário comum.
Pareceu-lhe muito? Bem, se acha que é exagero, reclame com a AMD. Tudo isto, sem exceção (exceto algum tempero na tradução) foi obtido no documento < http://sites.amd.com/us/Documents/48423B_fusion_whitepaper_WEB.pdf > “AMD Fusion Family of APUs”. Baixe-o e veja por si mesmo.
E como a AMD pretende realizar estas pequenas façanhas?
Bem, ainda segundo ela, combinando núcleos de processadores escalares x86 (ou seja, processadores comuns, “de 32 bits”) com unidades programáveis de processamento vetorial (um nome complicado para “processador gráfico”) em uma única peça de silício (“die”). Além destes elementos, as UPAs incluirão diversos componentes específicos, como controladores de memória, controladores de E/S, decodificadores de vídeo especializados, saídas de vídeo e barramentos de interface com outros sistemas.
O resultado é um único componente multifacetado com extraordinárias capacidades de executar uma grande diversidade de tarefas. Mas o ponto chave de tudo isto é a incorporação de processadores escalares e vetoriais em uma única peça. É por isto que a tecnologia recebeu o nome de “Fusion”: por fundir dois ramos de processamento até aqui sempre considerados independentemente, o escalar (processamento de dados simples) com o vetorial (usado primordialmente no processamento gráfico). E, evidentemente, foi para isto que recentemente a AMD adquiriu o controle da ATI, uma das líderes no mercado de processamento gráfico.


Figura 3: Diagrama esquemático de uma UPA

A figura 3 mostra o diagrama esquemático de uma UPA. Nele se vê, em destaque, as unidades de processamento escalar (ao alto e à direita, rotulada “x86 CPU cores”) composta por diversos núcleos de processadores de dados, o conjunto de processadores vetoriais do lado oposto (rotulados de “SIMD engine array”, onde SIMD significa “Single Instruction Multiple Data”, técnica empregada para processamento tipo “multimídia”) e, abaixo deste último, os decodificadores de vídeo unificados (ou UVDs; quem estiver particularmente interessado neles deve consultar o documento < http://www.amd.com/us/Documents/AMD_Radeon_Video_WP.pdf > “Video technology”).
Notem que estes três componentes (na verdade, três conjuntos de componentes) se conectam localmente ao mesmo barramento de altíssimo desempenho (rotulado de “High performance bus & memory controller”) e, daí, diretamente à memória principal (vista no alto, fora da UPA, rotulada de “system memory”), seguindo a tendência moderna – da qual a própria AMD foi pioneira e atualmente é adotada pela Intel – de eliminar o “barramento frontal” (FSB, ou “Front Side Bus”) “embutindo” o controlador da memória diretamente no processador (que no caso da Figura 3 é a própria UPA), eliminando assim um dos mais restritivos “gargalos” da arquitetura clássica de processadores.
Infelizmente, nesta coluna não caberia descer a maiores detalhes sobre a arquitetura das UPAs. Mas, garanto, trata-se de um conceito revolucionário. Quem estiver interessado nos detalhes deve consultar o documento < http://sites.amd.com/us/Documents/48423B_fusion_whitepaper_WEB.pdf > “AMD Fusion Family of APUs” que, se não destrincha o assunto, vai muito além do que podemos ir aqui. Para quem se interessa por arquitetura de microprocessadores, é um prato cheio.
Mas tudo isto é teoria e o papel aceita tudo. Como é que anda, na prática, o desenvolvimento da tecnologia Fusion?
Bem, ela foi anunciada pela primeira vez em 2007, quando foi implementada em duas famílias cujos nomes de código eram “Falcon” e “Swift”. E continuou seu desenvolvimento em etapas.
Agora, segundo a AMD, estamos próximos do lançamento comercial do primeiro membro da família das UPAs.
Seu nome de código é “Llano”. Deverá ser lançado em 2011 para equipar tanto micros de mesa quanto portáteis. Será o primeiro produto comercial a efetivamente integrar núcleos capazes de processamento escalar e vetorial.
É esperar para ver.
Afinal, um ano passa depressa e eu tenho que admitir: pelas demonstrações que vi no lançamento das Radeon Serie HD 6800, estou bastante interessado em ver um destes brinquedos funcionando de verdade.

 

B. Piropo