Não, o ChatGPT não vai causar outra falta de GPU

O ChatGPT está explodindo e a espinha dorsal de seu modelo de IA depende de placas gráficas Nvidia. Um analista disse que cerca de 10.000 GPUs Nvidia foram usadas para treinar o ChatGPT e, à medida que o serviço continua a se expandir, aumenta também a necessidade de GPUs. Qualquer pessoa que viveu o aumento das criptomoedas em 2021 pode sentir o cheiro de uma escassez de GPU no horizonte.

Eu vi alguns repórteres construírem essa conexão exata, mas é equivocada. Os dias de escassez de GPU do tipo criptografado ficaram para trás. Embora provavelmente veremos um aumento na demanda por placas gráficas à medida que a IA continua crescendo, essa demanda não é direcionada para as melhores placas gráficas instaladas em plataformas de jogos.

Por que as GPUs Nvidia são construídas para IA

Uma renderização da GPU RTX A6000 da Nvidia.

Primeiro, abordaremos por que as placas gráficas Nvidia são tão boas para IA. A Nvidia apostou na IA nos últimos anos e valeu a pena com o aumento do preço das ações da empresa após o aumento do ChatGPT. Existem duas razões pelas quais você vê a Nvidia no centro do treinamento de IA: núcleos tensores e CUDA.

CUDA é a interface de programação de aplicativos (API) da Nvidia usada em tudo, desde as GPUs de data center mais caras até as GPUs de jogos mais baratas. A aceleração CUDA é suportada em bibliotecas de aprendizado de máquina como o TensorFlow, acelerando enormemente o treinamento e a inferência. CUDA é a força motriz por trás da AMD estar tão atrás em IA em comparação com a Nvidia.

No entanto, não confunda CUDA com os núcleos CUDA da Nvidia. CUDA é a plataforma na qual vários aplicativos de IA são executados, enquanto os núcleos CUDA são apenas os núcleos dentro das GPUs Nvidia. Eles compartilham um nome e os núcleos CUDA são melhor otimizados para executar aplicativos CUDA. As GPUs de jogos da Nvidia têm núcleos CUDA e suportam aplicativos CUDA.

Os núcleos tensores são basicamente núcleos de IA dedicados. Eles lidam com a multiplicação de matrizes, que é o molho secreto que acelera o treinamento de IA. A ideia aqui é simples. Multiplique vários conjuntos de dados de uma só vez e treine modelos de IA exponencialmente mais rápido, gerando resultados possíveis. A maioria dos processadores lida com tarefas de maneira linear, enquanto os núcleos Tensor podem gerar rapidamente cenários em um único ciclo de clock.

Mais uma vez, as GPUs de jogos da Nvidia, como a RTX 4080 , têm núcleos Tensor (e às vezes até mais do que as caras GPUs de data center). No entanto, para todas as especificações que as placas Nvidia têm para acelerar os modelos de IA, nenhuma delas é tão importante quanto a memória. E as GPUs de jogos da Nvidia não têm muita memória.

Tudo se resume à memória

Uma pilha de memória HBM.

“O tamanho da memória é o mais importante”, de acordo com Jeffrey Heaton, autor de vários livros sobre inteligência artificial e professor da Universidade de Washington em St. Louis. “Se você não tiver GPU RAM suficiente, seu ajuste/inferência de modelo simplesmente parará.”

Heaton, que tem um canal no YouTube dedicado a quão bem os modelos de IA são executados em certas GPUs, observou que os núcleos CUDA também são importantes, mas a capacidade de memória é o fator dominante quando se trata de como uma GPU funciona para IA. O RTX 4090 tem muita memória para os padrões de jogos – 24 GB de GDDR6X – mas muito pouco em comparação com uma GPU de classe de data center. Por exemplo, a mais recente GPU H100 da Nvidia tem 80 GB de memória HBM3, bem como um enorme barramento de memória de 5.120 bits.

Você pode sobreviver com menos, mas ainda precisa de muita memória. Heaton recomenda que os iniciantes não tenham menos de 12 GB, enquanto um engenheiro típico de aprendizado de máquina terá uma ou duas GPUs Nvidia profissionais de 48 GB. De acordo com Heaton, “a maioria das cargas de trabalho cairá mais na faixa de A100 a oito A100”. A GPU A100 da Nvidia tem 40 GB de memória.

Você também pode ver esse dimensionamento em ação. A Puget Systems mostra um único A100 com 40 GB de memória com desempenho cerca de duas vezes mais rápido que um único RTX 3090 com seus 24 GB de memória. E isso apesar do RTX 3090 ter quase o dobro de núcleos CUDA e quase o mesmo número de núcleos Tensor.

A memória é o gargalo, não o poder de processamento bruto. Isso ocorre porque o treinamento de modelos de IA depende de grandes conjuntos de dados, e quanto mais desses dados você puder armazenar na memória, mais rápido (e com mais precisão) poderá treinar um modelo.

Necessidades diferentes, matrizes diferentes

Placa de vídeo Hopper H100.

As GPUs de jogos da Nvidia geralmente não são adequadas para IA devido à pouca memória de vídeo que elas têm em comparação com o hardware de nível empresarial, mas também há um problema separado aqui. As GPUs de estação de trabalho da Nvidia geralmente não compartilham uma placa de GPU com suas placas de jogos.

Por exemplo, o A100 que Heaton mencionou usa a GPU GA100, que é um die da linha Ampere da Nvidia que nunca foi usado em placas focadas em jogos (incluindo o RTX 3090 Ti de ponta). Da mesma forma, o H100 mais recente da Nvidia usa uma arquitetura completamente diferente da série RTX 40, o que significa que também usa uma matriz diferente.

Existem exceções. A GPU AD102 da Nvidia, que está dentro da RTX 4090 e RTX 4080, também é usada em uma pequena variedade de GPUs empresariais Ada Lovelace (a L40 e a RTX 6000). Na maioria dos casos, porém, a Nvidia não pode simplesmente reaproveitar uma matriz de GPU de jogos para uma placa de data center. São mundos separados.

Existem algumas diferenças fundamentais entre a escassez de GPU que vimos devido à mineração de criptomoedas e o aumento da popularidade dos modelos de IA. De acordo com Heaton, o modelo GPT-3 exigia mais de 1.000 GPUs Nvidia A100 para treinar e cerca de oito para rodar. Essas GPUs também têm acesso à interconexão NVLink de alta largura de banda, enquanto as GPUs da série RTX 40 da Nvidia não. Está comparando um máximo de 24 GB de memória nas placas de jogos da Nvidia com várias centenas em GPUs como o A100 com NVLink.

Existem algumas outras preocupações, como matrizes de memória sendo alocadas para GPUs profissionais em vez de jogos, mas os dias de correr para o Micro Center local ou a Best Buy para ter a chance de encontrar uma GPU em estoque acabaram. Heaton resumiu bem esse ponto: “Estima-se que modelos de linguagem grandes, como ChatGPT, exijam pelo menos oito GPUs para serem executados. Essas estimativas assumem as GPUs A100 de ponta. Minha especulação é que isso pode causar uma escassez de GPUs de ponta, mas pode não afetar as GPUs da classe gamer, com menos RAM.”