Durante o evento NVIDIA GTC 2021, que ocorreu em abril, a Microsoft apresentou suas últimas inovações na área de machine learning, possibilitadas por sua própria tecnologia como o Azure, ferramentas abertas e hardware da NVIDIA.
Em um dos painéis, a empresa mostrou seus esforços para permitir a inferência em escala. Muito se fala sobre os recursos computacionais necessários na fase de treinamento de um modelo, mas conforme os modelos vão se tornando mais complexos e seu uso mais generalizado, o impacto das operações em modo de inferência também começa a ser relevante. Ademais, a etapa de treinamento ocorre esporadicamente, enquanto que a inferência ocorre de maneira contínua. Por fim, é durante a inferência que os clientes finais se relacionam com a inteligência artificial, sendo esta fase impactante na impressão que os clientes desenvolvem das ferramentas que usam. Para melhorar o tempo de inferência em escala, a Microsoft desenvolveu um framework que usa o Triton Inference Server da NVIDIA, otimizado para fazer proveito máximo das GPUs, junto ao Azure Machine Learning, para entregar uma experiência com fricção mínima. O framework tem suporte às bibliotecas mais populares, como PyTorch, TensorFlow, MXNet e ONNX.
Em outra sessão, foi apresentado o Azure Arc, uma infraestrutura que entrega governança a frameworks baseados em contêiners utilizados para treinamento em ambientes híbridos, como aqueles que usam recursos locais e na nuvem ao mesmo tempo. Antes disso, esta administração era complicada, tornando a tarefa de orquestrar esta configuração impeditiva; com a nova ferramenta, é fácil trocar um ambiente operacional conteinerizado entre clusters computacionais. A integração do Azure Machine Learning com o Kubernetes, administrador de contêneirs, foi desenvolvida estendendo o Kubernetes API.
Por último, a Microsoft mostrou o PyTorch Profiler, desenvolvido em conjunto com o Facebook, uma ferramenta de debug que pretende ajudar os desenvolvedores a analisar e resolver problemas de performance no treinamento de modelos robustos com o objetivo de otimizar o uso de recursos computacionais mais caros. Assim, será possível capturar e correlacionar informações sobre as operações realizadas pelo PyTorch e informações de uso das GPUs, de forma que os desenvolvedores possam reorganizar seu código para que as GPUs não fiquem ociosas. O profiler foi totalmente integrado às ferramentas que a Microsoft já oferece no Azure.