Uma imagem mostrando uma GPU AMD Radeon RX 7900 XTX instalada em uma bancada de testes.

Principais conclusões

  • Espera-se que RDNA 4, a arquitetura gráfica de próxima geração da AMD, traga melhorias tecnológicas e aumento de desempenho.
  • O suporte da AMD ao LLVM indica melhorias arquitetônicas no RDNA 4, melhorando a geração de código para as próximas GPUs.
  • O RDNA 4 apresentará mudanças relacionadas à IA, como maior eficiência das instruções WMMA e suporte para precisão de 8 bits, melhorando o desempenho da IA.

Espera-se que RDNA 4 seja a arquitetura gráfica de próxima geração da AMD e esperamos ver melhorias tecnológicas junto com um aumento no desempenho. Agora estamos começando a ter uma imagem mais clara do que o RDNA 4 pode trazer para a mesa quando for lançado, o que deve acontecer ainda este ano. Típico da AMD, esperamos que os modelos mais sofisticados cheguem primeiro, com os modelos mais acessíveis chegando depois.

O sinal mais concreto do que está por vir apareceu graças ao suporte da AMD ao LLVM. Para quem não conhece, o LLVM é um conjunto de tecnologias de compilador e conjunto de ferramentas, e a AMD está garantindo que será compatível com as próximas GPUs no lançamento. Uma análise de Batatas fritas e queijo passei por quais são essas mudanças, pois o LLVM, sendo um compilador, precisa ser capaz de entender o ISA para gerar código. Isso representa melhorias arquitetônicas na arquitetura gráfica RDNA e não leva em conta o desempenho bruto que veremos nas GPUs lançadas.

Para começar, há seis meses, houve rumores de que a AMD havia cancelado suas principais GPUs que deveriam inaugurar o RDNA 4. Também houve rumores de que a empresa voltaria para uma matriz monolítica em vez de usar um módulo multi-chip (MCM ), que a empresa estreou com RDNA 3. Isso não é inerentemente uma coisa ruim, já que a Nvidia usa matrizes monolíticas para sua arquitetura Ada Lovelace. Ainda assim, é um retrocesso para a AMD, uma empresa que tem concentrado recursos significativos em designs de chips e tecnologias avançadas de empacotamento para GPUs e CPUs.

Principais mudanças na IA

AMD quer alcançar a Nvidia

AMD Radeon RX 7900 XT e Radeon RX 7900 XTX, lado a lado

As maiores mudanças (na minha opinião) destacadas por Batatas fritas e queijo são as alterações relacionadas à IA no ISA. Basicamente, as GPUs são incrivelmente poderosas para IA devido às suas capacidades matemáticas e suporte para operações paralelas graças às centenas de núcleos que possuem integradas. As matrizes costumam estar no centro das redes neurais e são uma forma eficiente de armazenar, representar e manipular dados. As GPUs possuem operações matemáticas matriciais especializadas e, com o tempo, vimos que tipos de dados de menor precisão são precisos o suficiente para serem aceitáveis.

O RDNA 3 introduziu instruções WMMA (Wave Matrix Multiply Accumulate), e o RDNA 4 melhorará a eficiência delas ao adicionar instruções que suportam precisão de 8 bits, em oposição à precisão de apenas 16 bits. A precisão de 8 bits significa maior eficiência computacional e redução do uso de memória, o que ajudará a acelerar o desempenho da IA ​​em geral. Além disso, é necessária menos largura de banda para transferir dados em um formato de 8 bits em comparação com um formato de 16 bits, o que melhorará novamente o desempenho da IA.

Com isso, porém, também há melhorias no tratamento de matrizes esparsas. Matrizes esparsas são matrizes com muitos elementos zero, pois qualquer multiplicação por zero somará zero. O armazenamento e a largura de banda também podem ser reduzidos devido à capacidade de compactação dessas matrizes, o que incentiva o tratamento diferente de matrizes esparsas. Com o RDNA 4, existem novas instruções SWMMAC (Sparse Wave Matrix Multiply Accumulate) projetadas para lidar com matrizes esparsas com mais eficiência. A imagem abaixo, compartilhada pela Nvidia, demonstra como o tratamento diferente de matrizes esparsas pode ajudar.

Infelizmente, não podemos realmente inferir como isso melhorará o desempenho. Tudo o que podemos dizer é que sim, mas em quanto não está exatamente claro. Batatas fritas e queijo afirmar que isso poderia aumentar o desempenho em até 2x com a dispersão, mas isso também é um palpite. Porém, ao lidar com a dispersão dessa forma, há grandes melhorias potenciais no uso de memória, eficiência de largura de banda, computação e até mesmo eficiência energética.

Melhorias na pré-busca e na coerência

Maior distância de pré-busca e pré-busca direcionada por software

A pré-busca de software em GPUs é uma técnica utilizada para melhorar a eficiência e o desempenho do acesso à memória, antecipando os dados e instruções que serão necessários em breve e carregando-os no cache antes que sejam efetivamente solicitados pelas unidades de processamento. Esta abordagem proativa visa reduzir a latência de acesso à memória – um gargalo comum no desempenho da computação – garantindo que os dados necessários estejam prontamente disponíveis no cache, mais perto de onde a computação ocorre, minimizando assim o tempo que a GPU gasta esperando que os dados sejam buscados na memória principal. .

Como avistado por Batatas fritas e queijoO RDNA 4 parece estar aumentando a distância inicial de pré-busca de 64 x 128 bytes para 256 x 128 bytes. Isso cobre 32 KB de código, em oposição aos 8 KB originais. O RDNA 4 também parece adicionar instruções que podem permitir que o software direcione a pré-busca. A pré-busca é algo comumente feito em CPUs e não em GPUs, pois pode ser computacionalmente caro na GPU.

Tratamento de coerência mais flexível

Além disso, o tratamento da coerência provavelmente se tornará mais flexível. O tratamento de coerência em GPUs refere-se ao gerenciamento da consistência dos dados em vários caches dentro da GPU e entre a GPU e a CPU. Em um ambiente de computação, especialmente em sistemas com múltiplos processadores ou núcleos (como CPUs e GPUs), é importante garantir que todos os componentes tenham uma visão consistente dos dados. Essa consistência é crucial quando diferentes partes do sistema podem ler ou gravar nos mesmos locais de memória.

AMD“” data-modal-id=”imagem única-modal” data-modal-container-id=”imagem única-modal-container” data-img-caption=”null”>

Mapa de bitfield do formato MUBUF em uma GPU AMD

No RDNA 3, as instruções de acesso à memória tinham um bit de coerência global que podia ser definido para permitir que fossem globalmente coerentes. Se esse bit fosse definido em um carregamento, ele perderia os caches L0 e L1 e iria direto para o cache L2. Quando o bit GLC é definido para uma instrução de carregamento de dados, ele força a instrução a ignorar os caches locais L0 e L1, que são privados para uma Unidade de Computação (CU) ou Shader Engine (SE), e em vez disso ir diretamente para o cache L2 . O cache L2 é compartilhado entre múltiplas CUs ou SEs, tornando-o um ponto central para garantir a coerência.

Essa abordagem garante efetivamente que uma operação de carregamento recupere a versão mais recente dos dados, refletindo quaisquer gravações que possam ter sido feitas por threads em execução em outras CUs ou SEs. Ao usar o cache L2 como ponto de coerência, a GPU pode manter uma visão consistente da memória em seus vários núcleos, o que é crucial para tarefas de processamento paralelo em que vários núcleos trabalham em diferentes partes de um problema, mas precisam compartilhar resultados ou atualizações de dados.

Uma mudança no RDNA 4 poderia significar que, em vez de passar pelo cache L2 de toda a GPU, os dados poderiam ser compartilhados entre threads por meio do cache L1. Threads dependentes precisariam ser executados no mesmo SE, embora, em teoria, ainda haja ganhos de desempenho com um aumento no uso do cache L1.

Espera-se que RDNA 4 chegue ainda este ano

Esperamos, de qualquer maneira

Uma imagem mostrando uma GPU AMD Radeon RX 7700 XT mantida em uma mesa com acabamento em mármore.

Com a AMD começando a publicar patches que garantem compatibilidade no LLVM com RDNA 4, e com os rumores esquentando nos últimos meses, parece inevitável que as primeiras GPUs RDNA 4 cheguem este ano. Embora não tenhamos certeza se serão algumas das melhores GPUs quando forem lançadas, está claro que pelo menos algumas das melhorias arquitetônicas são muito grandes. Essas são melhorias significativas de IA e, se aproveitadas, podem ajudar a AMD a diminuir um pouco a lacuna com a Nvidia.

Se você está pensando em comprar uma GPU para IA, ainda assim, mesmo com RDNA 4, é extremamente provável que você ainda não compre uma placa AMD para IA. Pode ajudar com certas cargas de trabalho, mas a Nvidia quase certamente manterá sua coroa. Estaremos prontos e esperando; a concorrência é sempre boa para os consumidores.

Fuente