quarta-feira, 4 de abril de 2018

NVIDIA Anúncios da GPU Technical Conference 2018 parte 1

Alexandre Ziebert, Gerente de Technical Marketing Latam, quem conheço há tanto tempo, pode me ajudar a entender os vários anúncios feitos na GTC 2018, GPU Technology Conference, das novas GPUs, novas versões, otimizações, incluindo a maior de todas a DGX-2 e suas aplicações.

Gravado dia 27/03/2018 em San Jose California durante a GTC 2018 


PAPOFÁCIL #164 NVIDIA Anúncios da GPU Technical Conference 2018 parte 1


Esta primeira parte do texto, publicada agora é de caráter mais simples, mais conceitual. Procuro equalizar os conceitos. Já o vídeo acima, a ótima conversa com Alexandre Ziebert, entra mais a fundo em detalhes técnicos e especificações de produtos. A segunda parte do texto, ainda a ser publicada explorará os aspectos de utilização, inteligência artificial, visualização e carros autônomos. Vamos à primeira parte!!

Minha participação no GTC, evento da NVIDIA focado em GPU e aplicações, aliás inúmeras, ampliou sobremaneira minha visão desta forte vertente de computação!! Até um certo momento havia apenas a computação “tradicional”, baseada em processadores cada vez maiores e mais velozes. Quando as GPUs entraram no cenário, mudaram o jogo!!

corredores da GTC 2018

corredores da GTC 2018


Entendendo a GPU

Mas vamos equalizar os conceitos, afinal os leitores têm graus diferentes de informações. As necessárias e famosas placas de vídeo, presentes em todos os PCS, desde sua origem, as avós (ou bisavós) das atuais GPUs. Um belo dia aplicações mais sofisticadas nos PCs passaram e exigir processamento gráfico mais sofisticado e principalmente mais desempenho.

Estou falando dos jogos, que se tornaram uma indústria imensa e poderosa. Além disso aplicações de engenharia como CAD, aplicações 3D e até mesmo geração de animações e efeitos especiais para cinema e TV passaram a se beneficiar desta tecnologia. Mas por que?

Erroneamente quando se imagina uma tarefa complexa sendo executada, a cultura do “processamento bruto”, ou seja, um sistema de grande potência concentrada parece fazer sentido para as pessoas, a despeito dos processadores tradicionais modernos terem vários núcleos, 2, 4, 8, etc. Há até processadores ditos “tradicionais” com mais de 24 núcleos físicos (48 núcleos lógicos) que ainda têm dificuldade de lidar com certas demandas que se antes eram esparsas, específicas, hoje em dia são demandas muito mais frequente e comuns.

Por definição todo processador trabalha em paralelo em seus vários núcleos. Mas há situações nas quais é muito mais eficiente ter não 8, 16 ou 24 núcleos muito poderosos e sim centenas, muitas centenas ou até mais de núcleos de processamento que mesmo com menor capacidade conseguem repartir uma tarefa complexa em uma infinidade de sub tarefas menores. Essa é a natureza de uma GPU (Graphics Processessing Unit).

Claro, dar conta de atualizar o conteúdo de uma tela de computador ou gerar imagens entre 30, 60 ou mais vezes por segundo, em resoluções cada vez maiores, é a tarefa perfeita para este exército de “mini processadores” cada um tomando conta de um pedacinho da tela a fim de completar a tarefa mais rapidamente. Muito mais!

Só que esta natureza granular, essa filosofia de repartir processamento em muitos pedaços menores se aplica maravilhosamente bem a muitos outros cenários e casos de uso. Cálculos matemáticos complexo, modelos financeiros, atuariais, modelagem de mercado e... processamento de redes neurais. Opa!! O que significa isso?

Redes neurais foram criadas com a dificílima missão de tentar mimetizar o processo de funcionamento e aprendizagem do cérebro humano com seus incontáveis neurônios e bilhões de sinapses. Matematicamente ainda não chegamos lá, mas nos aproximamos de imitar por meio das tais redes neurais o funcionamento do cérebro. E o leitor já deve ter associado a ideia dos inúmeros elementos “pensantes” de uma GPU, mesmo que de menor capacidade, àqueles necessários para a tarefa.

Mas não só redes neurais. Tarefas de processamento em altíssima escala, que são subdivididas em unidades menores, a GPU atua de forma brilhante. Acho que ficou clara a importância de um “novo” paradigma para processamento. Entre aspas porque já faz um certo tempo que esta tecnologia existe.

Aplicações para a GPU

Por sua natureza, sua grande granularidade no processamento, aplicações de projetos de engenharia, construção civil, mecânicos, elétricos... são situações nas quais milhares de elementos geométricos, retas, arcos, polígonos, são necessários. Em um segundo momento estes projetos precisavam ser visualizados de uma forma não tão técnica e por isso a criação de elementos sólidos que representassem o projeto eram necessários. Dá-se o nome de renderização para esta operação e isso demanda uma quantidade imensa de cálculos e processamento.

Essa habilidade de renderização deu margem para utilizar essa tecnologia para criação de séries de imagens digitais encadeadas, ou seja, animação. Sim os grandes estúdios de criação de títulos de animação usam GPU em suas produções. Mas não apenas isso. Com o crescimento da capacidade de processamento, edição de vídeo para inclusão de efeitos especiais, cenas que seriam virtualmente impossíveis de serem filmadas também. O máximo seria conseguir gerar conteúdo 100% digital em tempo real!! Será que isso é possível? Vamos descobrir.

Ampliando ainda mais a utilização, modelagem, processamento e treinamento de redes neurais também é tarefa para a qual GPUs se revelaram extremamente relevantes. Aplicações de inteligência artificial (AI), evoluíram intensamente com o uso de sistemas de GPUs trabalhando em conjunto. Um ser humano adulto tem cerca de 20 bilhões de neurônios em seu cérebro que se comunicam por meio das sinapses. A quantidade de interconexões possíveis é inacreditavelmente grande, por isso, mimetizar este processo por meio de processamento digital é incrivelmente trabalhoso!!

Mas a inteligência artificial (AI) não é um fim em si mesmo. Ela serve para criar processos que se valem de conhecimento adquirido para acumular mais conhecimento, realizar inferências, tirar conclusões, etc. Já existem muitas aplicações que usam AI, seja na comunicação com usuário (por exemplo os chat bots), aprimoramento de fotografias (câmeras que aprendem com o usuário e realizam intervenções nas fotos), diagnósticos médicos, interpretação de imagens... são tantas! E cada vez mais, na quantidade e na profundidade.

Se o leitor associava NVIDIA apenas às placas gráficas dos PCs , saiba que no ecossistema da empresa e suas GPUs, tudo isso que citei acima e ainda mais estão presentes. E sobre isso tudo que se discutiu e apresentou na GTC (GPU Technicall Conference) 2018!! 




Jensen H GTC 2018

Nenhum comentário:

Postar um comentário