Nvidia libera código-fonte do KAI Scheduler para colaboração em IA

Nvidia disponibiliza o KAI Scheduler como código aberto, facilitando o gerenciamento de recursos de IA e promovendo inovação.
Atualizado há 1 dia
Nvidia libera código-fonte do KAI Scheduler para colaboração em IA
Nvidia lança KAI Scheduler open-source, simplificando a gestão de recursos de IA. (Imagem/Reprodução: Venturebeat)
Resumo da notícia
    • Nvidia liberou o código-fonte do KAI Scheduler, uma ferramenta de agendamento de GPU para Kubernetes.
    • O objetivo é simplificar o gerenciamento de cargas de trabalho de IA e incentivar a colaboração na comunidade de desenvolvedores.
    • Impacto: melhora a eficiência no uso de recursos computacionais e acelera projetos de IA.
    • Segundo impacto: promove a inovação e a adaptação da ferramenta a novos desafios.
CONTINUA DEPOIS DA PUBLICIDADE

A Nvidia liberou o código-fonte de novos elementos da plataforma Run:ai, incluindo o KAI Scheduler. Essa solução de agendamento de GPU, nativa do Kubernetes e agora sob licença Apache 2.0, visa simplificar o gerenciamento de cargas de trabalho de Inteligência Artificial (IA) e estimular a colaboração na comunidade de desenvolvedores.

Originalmente desenvolvido dentro da plataforma Run:ai, o KAI Scheduler está disponível para a comunidade. Ele também continua sendo parte integrante e distribuído na plataforma Nvidia Run:ai platform. A iniciativa busca avançar tanto na infraestrutura de IA de código aberto quanto na empresarial, incluindo a segurança em aplicações de IA empresarial, fomentando colaboração e inovação.

Detalhes da Iniciativa Open Source

A Nvidia destacou que essa ação reforça seu compromisso com o avanço da infraestrutura de IA, tanto em ambientes open-source quanto empresariais. A empresa espera criar uma comunidade ativa e colaborativa, incentivando contribuições, feedback e inovações, similar a como o Google libera acesso experimental ao Gemini para desenvolvedores.

Em uma postagem, Ronen Dar e Ekin Karabulut da Nvidia detalharam aspectos técnicos do KAI Scheduler. Eles explicaram seu valor para equipes de TI e Machine Learning (ML), além de descreverem o ciclo de agendamento e suas ações principais. O foco é mostrar como a ferramenta pode otimizar o uso de recursos computacionais.

Benefícios do KAI Scheduler

Gerenciar cargas de trabalho de IA em GPUs e CPUs apresenta desafios que agendadores tradicionais falham, um cenário comum com o aumento dos gastos com IA generativa. O KAI Scheduler foi criado para lidar especificamente com essas questões: demandas variáveis de GPU, tempos de espera reduzidos, garantia de recursos e integração com ferramentas de IA.

CONTINUA DEPOIS DA PUBLICIDADE

Leia também:

Gerenciamento de demandas flutuantes de GPU

As cargas de trabalho de IA podem mudar rapidamente. Por exemplo, você pode precisar de apenas uma GPU para exploração de dados e, de repente, necessitar de várias GPUs para treinamento distribuído. Agendadores comuns têm dificuldade com essa variação.

O KAI Scheduler recalcula continuamente valores de fair-share (compartilhamento justo) e ajusta cotas e limites em tempo real. Isso adapta automaticamente a alocação de recursos às demandas atuais das cargas de trabalho. Essa abordagem dinâmica visa garantir o uso eficiente de GPUs sem intervenção manual constante dos administradores.

Redução nos tempos de espera por acesso computacional

Para engenheiros de ML, o tempo é crucial. O KAI Scheduler diminui a espera combinando gang scheduling (agendamento em grupo), compartilhamento de GPU (GPU sharing) e um sistema de filas hierárquico. Isso permite submeter lotes de trabalhos e saber que as tarefas iniciarão assim que os recursos estiverem disponíveis, seguindo prioridades e justiça.

Para otimizar ainda mais o uso de recursos, mesmo com demanda flutuante, o agendador usa duas estratégias para cargas de trabalho de GPU e CPU:

  • Bin-packing e consolidação: Maximiza a utilização computacional combatendo a fragmentação de recursos – agrupando tarefas menores em GPUs e CPUs parcialmente usadas – e tratando a fragmentação de nós realocando tarefas entre eles.
  • Spreading (Distribuição): Distribui uniformemente as cargas de trabalho entre nós ou GPUs e CPUs para minimizar a carga por nó e maximizar a disponibilidade de recursos por carga de trabalho.

Garantias de recursos ou alocação de GPU

Em clusters compartilhados, alguns pesquisadores reservam mais GPUs do que o necessário para garantir disponibilidade. Essa prática pode levar a recursos subutilizados, mesmo quando outras equipes têm cotas não utilizadas.

CONTINUA DEPOIS DA PUBLICIDADE

O KAI Scheduler aborda isso aplicando garantias de recursos. Ele assegura que as equipes recebam suas GPUs alocadas, enquanto realoca dinamicamente recursos ociosos para outras cargas de trabalho. Isso evita o acúmulo desnecessário de recursos e promove a eficiência geral do cluster.

Conexão simplificada com ferramentas e frameworks de IA

Conectar cargas de trabalho de IA com diferentes frameworks pode ser complexo. Tradicionalmente, as equipes enfrentam configurações manuais para ligar cargas de trabalho a ferramentas como Kubeflow, Ray, Argo e o Training Operator. Essa complexidade atrasa a prototipagem.

O KAI Scheduler resolve isso com um podgrouper integrado que detecta e conecta automaticamente essas ferramentas e frameworks. Isso reduz a complexidade da configuração e acelera o desenvolvimento de projetos de inteligência artificial.

A disponibilização do KAI Scheduler como código aberto pela Nvidia sinaliza um movimento em direção a ferramentas mais flexíveis e colaborativas para a infraestrutura de IA. A expectativa é que a comunidade contribua para a evolução da ferramenta, adaptando-a a novos desafios e casos de uso no gerenciamento de recursos computacionais intensivos.

Este conteúdo foi auxiliado por Inteligência Artificial, mas escrito e revisado por um humano.

André atua como jornalista de tecnologia desde 2009 quando fundou o Tekimobile. Também trabalhou na implantação do portal Tudocelular.com no Brasil e já escreveu para outros portais como AndroidPIT e Techtudo. É formado em eletrônica e automação, trabalhando com tecnologia há 26 anos.