As GPUs Nvidia percorreram um longo caminho, não apenas em termos de desempenho de jogos, mas também em outras aplicações, especialmente inteligência artificial e aprendizado de máquina. Os dois principais fatores responsáveis ​​pelo desempenho da GPU da Nvidia são os núcleos CUDA e Tensor presentes em praticamente todas as GPUs Nvidia modernas que você pode comprar.

Mas o que exatamente esses núcleos fazem e, se ambos são usados ​​em aplicativos de inteligência artificial e aprendizado de máquina, como eles são diferentes?

O que são núcleos CUDA e para que são usados?

CUDA significa Compute Unified Device Architecture, o que não ajuda muito a explicar sua presença em uma GPU. Esses núcleos foram introduzidos na linha de GPU da Nvidia na arquitetura Maxwell de 2014 e são especializados em processamento paralelo.

Eles são bastante semelhantes aos núcleos da CPU em termos de funcionamento, mas são melhores em lidar com certos tarefas, incluindo hashes criptográficos, mecanismos de física, projetos relacionados à ciência de dados e até jogos desenvolvimento.

instagram viewer
Crédito da imagem: nvidia

Embora já tenhamos abordado como os núcleos CUDA afetam o desempenho de jogos do seu PC, eles são igualmente úteis para processar números. Embora até as CPUs mais poderosas tenham núcleos de dois dígitos, as GPUs Nvidia vêm com vários milhares de núcleos CUDA, tornando-as muito mais rápidas em cargas de trabalho numéricas. Além disso, como eles fazem esses cálculos em paralelo, você obtém velocidades muito mais rápidas com os núcleos CUDA.

Os núcleos CUDA são mais rápidos do que os núcleos de CPU comuns quando se trata de números, mas ainda não são a solução ideal. Isso porque eles nunca foram destinados a serem usados ​​dessa maneira. Os núcleos CUDA foram desenvolvidos especificamente para processamento gráfico e para tornar as GPUs Nvidia mais capazes no desempenho de jogos.

O que são núcleos tensores e para que são usados?

Como as GPUs começaram a ser usadas para cargas de trabalho de inteligência artificial e aprendizado de máquina, a Nvidia introduziu núcleos Tensor na arquitetura Volta para suas GPUs de data center a partir de 2017.

No entanto, demorou até a arquitetura Nvidia Turing (GPUs RTX 20-Series) para que esses núcleos chegassem às GPUs de consumo. Lembrar que, embora as placas GTX 16-Series também sejam baseadas na arquitetura Turing, elas não incluem nenhum traçado de raio ou Tensor núcleos.

Embora os núcleos CUDA fossem adequados, na melhor das hipóteses, para cargas de trabalho computacionais, os núcleos Tensor aumentaram a aposta por serem significativamente mais rápidos. Enquanto os núcleos CUDA podem executar apenas uma operação por ciclo de clock, os núcleos Tensor podem lidar com várias operações, proporcionando um incrível aumento de desempenho. Fundamentalmente, tudo o que os núcleos do Tensor fazem é aumentar a velocidade da multiplicação de matrizes.

Esse aumento na velocidade computacional vem com o custo da precisão, com os núcleos CUDA sendo significativamente mais precisos. Dito isso, quando se trata de treinar modelos de aprendizado de máquina, os núcleos Tensor são muito mais eficazes em termos de velocidade computacional e custo geral; portanto, a perda de precisão é frequentemente negligenciada.

Como os núcleos Tensor e CUDA afetam o desempenho da GPU?

Como você provavelmente já deve ter adivinhado, embora os núcleos CUDA e Tensor possam lidar com as mesmas cargas de trabalho, ambos são núcleos especializados para renderização gráfica e cargas de trabalho numéricas, respectivamente.

Isso significa que, dependendo do usuário ao qual uma GPU específica é direcionada, ela terá um número diferente de núcleos. Por exemplo, se considerarmos o RTX 4090, o mais recente e melhor GPU para jogos voltado para o consumidor da Nvidia, você obterá muito mais núcleos CUDA do que núcleos Tensor. 16.384 núcleos CUDA para 512 núcleos Tensor, para ser específico.

Em comparação, a GPU Nvidia L40 para data centers, baseada na mesma arquitetura Ada Lovelace da RTX 4090, possui 18.176 núcleos CUDA e 568 núcleos Tensor. Isso pode não parecer uma grande diferença, mas pode afetar enormemente o desempenho dessas GPUs.

Em termos de desempenho teórico, o L40 tem 90,52 TFlops de desempenho FP16 e FP32, bem como 1.414 GFlops de desempenho FP64. Este é um grande aumento de desempenho em comparação com os 82,58 TFlops de desempenho FP16 e FP32 do RTX 4090 e 1.290 GFlops de desempenho FP64.

A menos que você conheça bem os números de desempenho numérico da GPU, os números de desempenho de ponto flutuante da GPU da Nvidia acima podem não significar muito para você. No entanto, em resumo, eles mostram que o L40 é muito mais rápido que o RTX 4090 quando se trata de cálculos numéricos – os necessários para cargas de trabalho baseadas em inteligência artificial e aprendizado de máquina.

A melhoria de desempenho se torna ainda mais impressionante quando você considera o consumo de energia das duas GPUs. O RTX 4090 tem um TGP (não deve ser confundido com TDP, há uma pequena diferença) de 450W, enquanto o L40 é classificado para apenas 300W.

Ambas as GPUs executarão jogos e treinarão seu modelo de aprendizado de máquina perfeitamente. No entanto, o RTX 4090 será melhor na execução de jogos e o L40 será melhor no treinamento de modelos de aprendizado de máquina.

Núcleos CUDA vs. Núcleos tensores: qual é mais importante?

Ambos os núcleos são igualmente importantes, independentemente de você estar comprando sua GPU para jogos ou colocando-a em um rack de data center. As GPUs de jogos voltadas para o consumidor da Nvidia usam vários recursos de IA (principalmente DLSS), e ter núcleos Tensor a bordo pode ser útil.

Quanto às GPUs de data center, os núcleos CUDA e Tensor funcionam em conjunto na maioria das vezes, portanto, você obterá os dois, independentemente da GPU escolhida. Em vez de se concentrar em um tipo específico de núcleo em sua GPU, você deve se concentrar mais no que a placa de vídeo faz como um todo e no tipo de usuário a que se destina.

Os núcleos CUDA são especializados em lidar com cargas de trabalho gráficas, enquanto os núcleos Tensor são melhores em numéricos. Eles trabalham juntos e são intercambiáveis ​​até certo ponto, mas lidam com suas próprias especializações, e é por isso que existem em primeiro lugar.

Diferentes GPUs se especializam em diferentes aspectos. O RTX 4090 esmagará facilmente qualquer jogo que você jogar nele, enquanto o RTX 4060 pode lidar apenas com jogos em 1080p. Se você não está jogando usando sua GPU e só precisa dela para processar números ou treinar redes neurais, uma GPU de centro de dados A-Series como a A100 ou mesmo a L40 é sua melhor aposta.

Seus núcleos de GPU importam

Mais núcleos de GPU proporcionarão melhor desempenho geral, pois sua GPU será mais versátil e terá recursos dedicados para lidar com diferentes tarefas. No entanto, obter cegamente uma GPU com o maior número de núcleos não é a melhor decisão. Reserve um momento para considerar cuidadosamente seu caso de uso, observe os recursos da GPU como um todo e faça sua escolha.