O Que é Computação Acelerada?

A computação acelerada usa o processamento paralelo para acelerar tarefas em aplicações exigentes, desde AI e análise de dados até simulações e visualizações.
por Rick Merritt

A computação acelerada está sempre presente, facilitando nossa vida mesmo em uma noite tranquila em casa.

Ela evita fraudes de cartão de crédito quando você compra um filme para assistir por streaming. Ela recomenda um jantar que pode ser interessante para você e arranja uma entrega rápida. Talvez ela tenha até ajudado o diretor do filme a ganhar um Oscar de efeitos visuais.

Afinal, O que é Computação Acelerada?

A computação acelerada é o uso de hardware especializado para acelerar significativamente o trabalho, muitas vezes com o processamento paralelo que agrupa tarefas frequentes. Ela transfere tarefas exigentes que podem sobrecarregar CPUs, processadores que geralmente executam tarefas em sequência.

Nativa do PC, a computação acelerada amadureceu e chegou aos supercomputadores. Hoje, ela está em seu smartphone e em todos os serviços no cloud. E está sendo adotada por empresas de todos os setores para transformar os negócios com dados.

Computadores acelerados combinam CPUs e outros tipos de processadores igualmente em uma arquitetura conhecida como “computação heterogênea”.

Um Pouco Mais Sobre Computadores Acelerados

As GPUs são os aceleradores mais usados. As unidades de processamento de dados (DPU – Data Processing Unit) são uma classe emergente que permite redes aprimoradas e aceleradas. Cada uma desempenha um papel ao lado da CPU do host na criação de um sistema unificado e equilibrado.

An architecture for an accelerated server
Um computador acelerado oferece custos gerais mais baixos e maior desempenho e eficiência energética que um sistema apenas com CPU.

Os sistemas comerciais e técnicos atuais adotam a computação acelerada para lidar com trabalhos como machine learning, análise de dados, simulações e visualizações. É um estilo de computação moderno que fornece alto desempenho e eficiência energética.

Como os PCs Popularizaram a Computação Acelerada

O hardware especializado chamado de coprocessador surgiu nos computadores há algum tempo e acelera o trabalho da CPU do host. Ganharam destaque pela primeira vez por volta de 1980, com os processadores de ponto flutuante que adicionaram recursos matemáticos avançados ao PC.

Na década seguinte, o surgimento dos videogames e interfaces gráficas de usuário criou uma demanda por aceleradores gráficos. Em 1993, cerca de 50 empresas estavam fabricando chips ou placas de vídeo.

Em 1999, a NVIDIA lançou o GeForce 256, o primeiro chip a transferir da CPU tarefas essenciais de renderização de imagens 3D. Ele também foi o primeiro a usar quatro pipelines gráficos para processamento paralelo.

A NVIDIA batizou o chip de “unidade de processamento gráfico” (GPU – Graphics Processing Unit), marcando o surgimento de uma nova categoria de aceleradores de computador.

Como os Pesquisadores Aproveitaram o Processamento Paralelo

Em 2006, a NVIDIA já havia produzido 500 milhões de GPUs. Ela liderou um mercado com apenas três fornecedores de GPUs e previu a próxima grande inovação da área.

Alguns pesquisadores já estavam desenvolvendo o próprio código para aplicar o poder das GPUs a tarefas além do alcance das CPUs. Uma equipe na Universidade de Stanford liderada por Ian Buck, por exemplo, criou o Brook, o primeiro modelo de programação amplamente adotado para ampliar a popular linguagem C para o processamento paralelo.

Buck entrou na NVIDIA como estagiário e agora atua como vice-presidente de computação acelerada. Em 2006, ele liderou o lançamento do CUDA, um modelo de programação que aproveita os mecanismos de processamento paralelo da GPU para qualquer tarefa.

Ao lado de um processador G80 em 2007, a CUDA deu origem a uma nova linha de GPUs NVIDIA que levou a computação acelerada para um número cada vez maior de aplicações, na indústria e na ciência.

HPC + GPUs = Ciência Acelerada

Essa família de GPUs destinadas ao data center foi se expandindo com uma série de novas arquiteturas, batizadas em homenagem aos inovadores Tesla, Fermi, Kepler, Maxwell, Pascal, Volta, Turing, Ampere.

Assim como os aceleradores gráficos da década de 1990, essas novas GPUs tiveram muitos rivais, inclusive processadores paralelos inéditos como o transputer da Inmos.

“Mas a GPU foi a única sobrevivente, porque os outros processadores não tinham um ecossistema de software, o que foi fatal para eles”, afirmou Kevin Krewell, analista da Tirias Research.

Especialistas em computação de alto desempenho de todo o mundo criaram sistemas de HPC acelerados com GPUs para impulsionar inovações na ciência. Hoje, seu trabalho é aplicado a diversas áreas, desde a astrofísica de buracos negros até o sequenciamento de genomas e além.

Para ilustrar: o Oak Ridge National Lab até publicou um guia de computação acelerada para usuários de HPC.

InfiniBand Potencializa Redes Aceleradas

Muitos desses supercomputadores usam a InfiniBand, uma conexão rápida e de baixa latência ideal para a criação de grandes redes distribuídas de GPUs. Diante da importância de redes aceleradas, a NVIDIA adquiriu a Mellanox, pioneira da InfiniBand, em abril de 2020.

Apenas seis meses depois, a NVIDIA anunciou sua primeira DPU, um processador de dados que instaura um novo nível de segurança, armazenamento e aceleração de rede. Uma gama de DPUs BlueField já está ganhando força em supercomputadores, serviços no cloud, sistemas OEM e software de terceiros.

Em junho de 2021, 342 dos supercomputadores TOP500 mais rápidos do mundo usavam tecnologias NVIDIA, incluindo 70% de todos os novos sistemas e oito dos 10 melhores.

Selene, an accelerated computer
O Selene da NVIDIA é um computador acelerado que ocupa o 6º lugar na lista TOP500 de junho de 2021.

Até o momento, o ecossistema CUDA gerou mais de 700 aplicações aceleradas, enfrentando grandes desafios como a descoberta de medicamentos, a resposta a desastres e até planos de missões a Marte.

Enquanto isso, a computação acelerada também possibilitou o próximo grande passo na área dos gráficos. Em 2018, a arquitetura Turing da NVIDIA impulsionou as GPUs GeForce RTX, as primeiras a disponibilizar o ray tracing, o Santo Graal da tecnologia visual, fornecendo um realismo espetacular para games e simulações.

AI, uma Excelente Aplicação para a Computação Acelerada

Em 2012, o mundo da tecnologia foi sacudido por uma nova e poderosa forma de computação: a AI.

No fundo, ela é basicamente um trabalho de processamento paralelo. Desde os primórdios do deep learning, pesquisadores e fornecedores de serviços no cloud começaram a usar computadores acelerados por GPU para treinar e executar redes neurais.

Logo, as empresas líderes de todos os mercados verticais viram a importância da AI nos computadores acelerados.

Um dia, toda empresa será uma empresa de dados, e todo servidor será um computador acelerado.

Essa visão é compartilhada pelos líderes das principais empresas de software de IT, como a VMware e a Red Hat, que estão adaptando seus produtos para a computação acelerada. Os fabricantes de sistemas já estão disponibilizando dezenas de Sistemas Certificados pela NVIDIA, computadores acelerados prontos para trabalhar em qualquer área.

Eles são os veículos da jornada para a computação acelerada no mundo empresarial. Para ajudar a abrir o caminho, a NVIDIA oferece uma solução full-stack com produtos como o NVIDIA AI Enterprise, o Base Command, o Fleet Command e aplicações aceleradas prontas no catálogo do NGC.

Um Futuro com Eficiência Energética

A computação acelerada “é o único caminho adiante”, de acordo com veteranos da computação como John Hennessey e David Patterson. Eles descreveram a tendência como uma mudança para “arquiteturas de domínio específico” em uma fala em comemoração à conquista do prêmio Turing de 2017, equivalente ao Nobel na computação.

A eficiência energética da abordagem é um motivo importante por que ela representa o futuro. Por exemplo: na inferência de AI, as GPUs oferecem uma eficiência energética 42 vezes maior que as CPUs.

Se todos os servidores apenas com CPU executando AI do mundo fossem substituídos por sistemas acelerados por GPU, haveria uma economia impressionante de 10 trilhões de watts-hora de energia por ano. É o equivalente à energia que 1,4 milhões de lares consomem por ano.

Os especialistas em computação acelerada já estão observando as vantagens disso.

Trinta e cinco dos 40 melhores sistemas da lista Green500 de supercomputadores com maior eficiência energética do mundo usam tecnologias NVIDIA, incluindo nove dos 10 melhores. Os supercomputadores da lista que usam GPUs NVIDIA têm uma eficiência energética 3,5 vezes maior que os que não usam, uma tendência consistente e crescente.

Para saber mais, assista a uma prévia de palestras do GTC sobre computação acelerada e confira o vídeo sobre computação acelerada empresarial abaixo.