Ouça este conteúdo
Jensen Huang, CEO da NVIDIA, apresentou no começo de dezembro de 2024 seu mais novo computador para Inteligência Artificial, o Jetson Orin™ Nano Super. Alguns chamam de supercomputador, até, mas seu mérito não está em capacidade de processamento. O Orin tem muito mais a oferecer e pode revolucionar o mercado. Como a NVIDIA já fez.
Para entender a importância do Orin, é preciso entender a posição da NVIDIA, antes vista como uma empresa voltada para gamers, e como ela conseguiu se tornar referência em Inteligência Artificial e chegar a um valor de mercado de US$ 3,34 trilhões, maior que o PIB do Brasil em 2023.
Qual o segredo da IA?
Inteligência Artificial é pura matemática. IA é apenas Álgebra Linear e Estatística aplicadas. Uma rede neural é formada por neurônios simples, que recebem uma informação, processam e retornam um valor numérico. Em um exemplo simples: Se eu colocar sensores nos quatro cantos de uma casa, do lado de fora, um sensor sozinho me diz se está claro ou escuro. Combinando os quatro, eu consigo descobrir se está de dia, de noite, amanhecendo ou anoitecendo.
Uma rede neural de uma IA como o ChatGPT possui bilhões de neurônios, representados por matrizes com milhares de dimensões. Processar esses dados exige muita capacidade de computação, mas são contas simples, apenas repetitivas. Os chips como os Ryzens e Intels são extremamente rápidos, mas não conseguem dividir tarefas em milhares de subtarefas de forma eficiente. Isso sempre foi problema em um campo bem popular: GAMES, e daí surgiram as GPUS.
O que é uma GPU?
Uma GPU – Graphics Processing Unit, Unidade de Processamento Gráfico — é um chip de computador projetado para receber uma tarefa, dividi-la em partes discretas, e executá-las de forma paralela. Um objeto 3D em um jogo é composto de triângulos. Cada triângulo tem dimensões específicas, cor, textura e dezenas de outros parâmetros. Ao invés de desenhar cada triângulo individualmente, a GPU recebe uma lista deles, e repassa para unidades que irão desenhar vários ao mesmo tempo. Quantos vários? Uma placa gráfica NVIDIA RTX 2080 é capaz de gerenciar 20 bilhões de triângulos por segundo.
Na prática há diversos outros fatores que afetam a velocidade de geração de imagem, mas mesmo as cenas mais complexas são renderizada em tempo real com milhões de triângulos. Além disso as GPUs possuem módulos especializados em compressão / descompressão de vídeo em tempo real, simuladores de efeitos de Física, sombreadores e uma imensa lista de outros recursos, com foco no paralelismo, a capacidade de realizar várias tarefas ao mesmo tempo. E no caso da NVIDIA, temos o CUDA.
CUDA?
CUDA (Arquitetura de dispositivo unificado de computação) é uma tecnologia introduzida em 2007. Proposta pelo engenheiro Ian Buck, CUDA é uma forma de dar acesso aos recursos de paralelismo das GPUs, sem que sejam especificamente para games. Ian e sua equipe tiveram a visão de que cientistas poderiam se beneficiar da capacidade de processamento das GPUs, que em tarefas simples são milhares de vezes mais rápidas que a CPUs.
Digamos que eu tenha uma CPU Ryzen 5600, com 6 núcleos, 12 threads. Eu quero aplicar um filtro a uma imagem. A forma mais eficiente é dividir a imagem em 12 partes, cada thread cuida de uma (descontando o tempo de CPU usado pelo Sistema Operacional, claro).
O filtro consiste em diversas operações matemáticas, funções, etc.
Com o CUDA, em uma GeForce RTX3060, é possível dividir a tarefa entre 3584 núcleos de hardware independentes, que retornarão o resultado muito mais rápido. Em um teste simples, multiplicando matrizes de 128x128 células, uma placa GeForce3060 é 40,76 vezes mais rápida que um chip Ryzen 5600.
Então por que tudo não é CUDA?
O CUDA não é uma solução genérica. CUDA possui núcleos capazes de lidar com Transformadas de Fourier, Álgebra Linear, Matrizes, Análise de Grafos e muitos outros processos matemáticos, mas não são processadores genéricos. Eles fazem algumas coisas muito rapidamente, mas não coisas genéricas. É como explicar para seu sushiman japonês como formatar um PC. Até consegue, mas dá trabalho e não será eficiente.
A grande visão
Quando o CUDA surgiu, ninguém deu bola, era algo que quase não se usava em jogos, e cientistas são bem avessos a novidades, então demoraram a aceitar a ideia de usar placas para joguinhos em seus laboratórios, mas a NVIDIA foi persistente, entendeu que era um esforço a longo prazo, e continuou, ano após ano, criando novas versões, aprimorando os recursos, promovendo e fomentando o CUDA entre estudantes e pesquisadores. Uma geração inteira de gamers nasceu acostumada com a NVIDIA e o CUDA, e eventualmente, as GPUs começaram a ser usadas no mundo acadêmico.
Empresas e Universidades começaram a desenvolver bibliotecas de software com suporte ao CUDA, como PyTorch, cuBLAS, cuDNN e outras. E aí, o jogo virou.
Mas e os games?
A NVIDIA não podia vacilar e perder o mercado de games. Logo conseguiram utilizar sua tecnologia de Inteligência Artificial em recurso como DLSS (Deep Learning Super Sampling), que renderiza os jogos em resolução menor e usa IA para ampliar a imagem, resultando em mais performance e frames por segundo. Sua concorrente, a AMD, desenvolvia tecnologias semelhantes, mas sem uma arquitetura popular como o CUDA, então era ignorada pelo mercado acadêmico.
Então todos compram GPUs gamers?
Não, não. A NVIDIA expandiu sua arquitetura para chips de altíssima capacidade, como o NVIDIA® Grace™ Hopper™ Superchip, processando terabytes por segundo, mas cada brinquedo desses começa na faixa de US$ 65 mil [equivalente a R$ 402 mil na cotação atual]. Existe uma clara divisão entre pesquisadores, universidades e datacenters de empresas como a Microsoft, que em 2024 adquiriu o dobro (485 mil) de chips Grace Hopper da NVIDIA que a concorrência.
Projetos menores usam, claro, CPUs gamers, mas mesmo isso pode ultrapassar o orçamento de empresas mais humildes e projetos menores.
O que é o Jetson Orin™ Nano Super?
O Orin é uma plataforma de desenvolvimento para IA, parte de uma família de computadores da NVIDIA. Baseado na arquitetura Ampere, das GeForce 30XX, ele tem 1024 núcleos CUDA, 8GB de memória unificada, e um processador ARM Cortex-A78AE v8.2 de seis núcleos.
O kit de desenvolvimento traz o Orin acoplado a uma placa com duas portas para SSD NVME, quatro portas USB 3.2, Gigabit Ethernet, Display Port, leitor de cartão SD, WIFI e conexão para câmera. O preço sugerido é de US$250.
É um supercomputador?
Muita gente está chamando o Orin assim, mas as especificações não chegam nem perto. Uma GeForce 3060 consegue processar 102 TOPS (Trilhões de Operações Por Segundo). O Orin chega a 67. Uma GeForce topo de linha como a RTX 4090, com 16384 núcleos CUDA, atinge 1320 TOPS.
Em termo de performance o Orin se equipara a uma GPU de três gerações atrás.
Então qual a vantagem?
Um trem é um excelente meio de transporte, mas não faz sentido usar um para entregar uma pizza na sua porta. Uma placa de vídeo high-end pode ser bem mais poderosa que o Orin, mas exigirá um computador potente, com uma fonte parruda. Uma GeForce 4090 sozinha pode consumir 450 watts. Um Orin tem consumo máximo de 25 watts.
Ele é uma solução completa para desenvolvimento de aplicações em Inteligência Artificial, com baixíssimo consumo de energia e um custo total inferior ao de uma GPU isolada.
Quais as aplicações do Orin?
Ele pode ser uado em salas de aula. Turmas inteiras podem ser equipadas com Orins, a uma fração do custo de montar um laboratório com PCs e GPUs.
O Orin, claro, não consegue rodar um ChatGPT, mas pode executar aplicações mais simples, como monitorar uma câmera em tempo real e identificar atitudes suspeitas, coletar placas de carros, fazer avaliação visual de estoques, dizendo quais produtos em um supermercado precisam ser repostos.
Com o Orin é possível aplicar Inteligência Artificial em tarefas onde seria caro e complicado demais implantar esse tipo de solução. Seria trivial usar o Orin para criar um serviço de autoatendimento no WhatsApp, com capacidade de conversar com o cliente.
Aplicações que hoje exigem um PC dedicado com uma GPU cara, podem rodar no Orin a uma fração do custo.
O Orin também possui um conector de 40 pinos GPIO, usados para conectá-lo a dispositivos como sensores de temperatura, detectores de gases, radares, sensores de movimento e muitos outros. Todos podem ser integrados a aplicações de Inteligência Artificial.
O Orin é para todo mundo?
Definitivamente não. Ele não vai rodar jogos complexos nem gerar um vídeo em IA de alta resolução. Para o indivíduo com verba que quer trabalhar com IA de ponta, um PC parrudo com uma GPU topo de linha é o indicado. O Orin é uma excelente ferramenta de aprendizado, uma excelente solução para casos específicos, mas não deve ser confundido com uma alternativa a equipamentos que custam dez vezes mais. Cada um no seu cantinho.
Em um mundo ideal, você teria o PC parrudo e um Orin, para testar e implementar aplicações a um custo bem mais acessível para seus clientes.
Carlos Cardoso é editor de Ciências do Meiobit.com.