GPU, componente de arquitetura indispensável a serviço da IA A GPU, do acrônimo em inglês Graphical Processing Unit, designa o processador dedicado ao tratamento de dados gráficos.
GPU para uma IA em escala
A utilização de GPUs é hoje difundida em todas as indústrias. Sabemos que construir ofertas de GPU não é trivial. Os algoritmos e modelos modernos de deep learning pressupõem que tenhamos uma grande capacidade de CPU+GPU disponível para realizar o treinamento e a inferência.
As GPUs estão em alta hoje em dia e se mostram uma resposta concreta às necessidades de processar grandes volumes de dados em paralelo. As GPUs são principalmente úteis em algoritmos de IA/Deep Learning que envolvem o processamento de imagens ou vídeos, arquivos digitalizados, etc...
Quando se busca disponibilizar GPUs para um grupo de usuários, isso se torna rapidamente complexo. Trata-se, de fato, de poder alocar e liberar GPUs para servir os processamentos dos usuários.
As dificuldades de consumo de GPU
As arquiteturas de GPU compartilhadas são complexas de construir por várias razões evidentes.
Sem Hypervisors de GPU
O compartilhamento de CPU entre vários usuários é simples com os hypervisors; no caso das GPUs... nada é previsto nativamente. É necessário necessariamente vincular a GPU (reservar) a um controlador. Isso pressupõe, portanto, que para GPUs on-demand em nuvem pública, os recursos de GPU sejam cobrados a partir do momento em que o controlador ou a VM os vinculam!
Escassez de competências DevOps Full Stack
Integrar componentes GPU exige trabalhar em todas as camadas (IaaS, PaaS, Driver GPU, networking) e instalar máquinas, para depois garantir a manutenção e os patches. Os DevOps capazes de trabalhar em full stack são raros no mercado.
Compartilhamento seguro de dados com a GPU
Dar acesso aos dados e garantir o nível adequado de segurança não é previsto nativamente. Isso pode envolver anonimização, pseudonimização ou outro mecanismo de criptografia.
FinOps
No contexto de recursos pagos sob demanda, a otimização do custo de GPU exigirá liberar os recursos assim que os jobs forem concluídos e realocá-los dinamicamente em seguida.





