Por que usar o AI Runtime em vez do compute clássico
O AI Runtime é um compute de GPU Serverless otimizado para treinamento e inferência em lotes com aprendizagem profunda, com configuração simplificada, provisionamento mais rápido e melhor desempenho. Se você executar essas cargas de trabalho em compute clássico com Databricks Runtime ML, a Databricks recomenda movê-las para o AI Runtime para um menor custo total de propriedade, uma experiência de desenvolvedor mais flexível e escala multinó. As seções a seguir comparam os dois para engenheiros de ML e equipes de plataforma, e descrevem como o Genie Code pode ajudá-lo a migrar.
Compare o AI Runtime com o compute clássico
A tabela a seguir compara o AI Runtime com o Databricks Runtime ML no compute clássico:
Capacidade | AI Runtime | Compute clássico com Databricks Runtime ML |
|---|---|---|
Custo total de propriedade (TCO) | Menor TCO por meio de infraestrutura de GPU serverless gerenciada, desempenho de alta throughput, carregamento de dados otimizado e acesso ao Spark por meio do Spark Connect. Você paga apenas pela compute que suas cargas de trabalho usam. A Databricks gerencia os clusters, drivers e a integridade da GPU para você. | Maior TCO devido à sobrecarga de gerenciamento de cluster, startup lento e carregamento de dados e pontos de verificação não otimizados. Você gerencia a configuração do cluster e a integridade da GPU, o que aumenta o custo para adquirir e manter clusters de GPU. |
Experiência para desenvolvedores | Desenvolva e implante a partir da CLI do Databricks, IDEs e notebooks. Suporte nativo ao Ray. Escolha um ambiente Standard mínimo para controle total sobre dependências, o ambiente Databricks AI com pacotes comuns de AI e ML ou uma Docker Image personalizada. | Desenvolva em notebooks ou conecte-se de um IDE por meio do túnel SSH. Nenhuma CLI dedicada para cargas de trabalho de treinamento de GPU. Ray é executado no Spark. Um grande conjunto de bibliotecas pré-instaladas vinculadas à versão do runtime, incluindo pacotes não relacionados a AI e ML. |
Escala e desempenho | Treinamento multinó e inferência de lotes. Carregamento de dados e pontos de verificação otimizados. Alta confiabilidade de GPU para execuções de treinamento longas. | Não otimizado para treinamento multinó porque você mesmo configura os nós e a rede. Você otimiza o carregamento de dados e pontos de verificação e valida a integridade da GPU manualmente. |
Custo total de propriedade
O AI Runtime reduz o custo total de propriedade com GPUs serverless gerenciadas de alto desempenho:
- Startup mais rápida: A infraestrutura de GPU Serverless está disponível sob demanda, para que você não precise esperar que um cluster de GPU começar. Os clusters de GPU clássicos podem levar vários minutos ou mais para começar, dependendo do tamanho do cluster e da disponibilidade da GPU.
- Preços conforme o uso: Você paga apenas pelo compute de GPU Serverless que suas cargas de trabalho usam, sem gerenciar ou pagar por clusters parados.
- Maior utilização de GPU: opções flexíveis de compute, carregamento rápido de dados, pontos de verificação eficientes e treinamento multinó reduzem o tempo de GPU parado.
- Carga administrativa reduzida: o AI Runtime lida com a implantação de compute, rede de cluster, gerenciamento de integridade de GPU e atualizações de driver CUDA. Com o compute clássico, sua equipe gerencia a administração de nós, a configuração do cluster e a manutenção contínua da infraestrutura.
Experiência do desenvolvedor
O AI Runtime oferece uma experiência de desenvolvedor flexível para cargas de trabalho de IA e aprendizagem profunda:
- Conectividade: trabalhe em notebooks, conecte-se de uma IDE por um túnel SSH (Beta) ou envie cargas de trabalho com a CLI do Databricks. Para automatizar execuções, programe jobs ou use os Pacotes de Automação Declarativa. O compute clássico não tem CLI dedicada para enviar cargas de trabalho de treinamento de GPU.
- Runtime de aprendizagem profunda dedicado: o AI Runtime oferece suporte nativamente a frameworks como Ray e PyTorch. Escolha o ambiente Standard para controle total sobre sua pilha de dependências, o ambiente Databricks AI com pacotes comuns de AI e ML ou uma Docker Image personalizada. Os runtimes clássicos incluem um grande conjunto de bibliotecas pré-instaladas vinculadas à versão do runtime.
- Depuração e observabilidade: rastreie experimentos, monitore a utilização de compute, gerencie modelos e solucione problemas com a integração MLflow integrada. Com a compute clássica, os logs e as métricas de utilização de compute não são armazenados automaticamente na execução do MLflow.
- Acesso seguro a dados: Acesse dados estruturados e não estruturados governados pelo Unity Catalog por meio do Spark Connect, sem executar um cluster do Apache Spark.
Escala e desempenho
O AI Runtime ajuda sua escala de cargas de trabalho de aprendizagem profunda com eficiência:
- Carregamento de dados e pontos de verificação otimizados: o carregamento de dados de alto throughput e os pontos de verificação distribuídos assíncronos aceleram os pipelines de treinamento e minimizam o tempo de GPU parado. O compute clássico não possui carregadores de dados de alto throughput nativos nem pontos de verificação distribuídos. Consulte Melhorar o desempenho e a resiliência do treinamento no AI Runtime.
- Resiliência de GPU integrada: Verificações de integridade automatizadas e contínuas ajudam a detectar e isolar nós de GPU com falha, o que reduz as interrupções em execuções de treinamento longas. Com o compute clássico, você mantém a integridade dos nós de GPU por conta própria, e isolar um nó com defeito exige a interrupção das cargas de trabalho ativas. Consulte Como mantemos a confiabilidade das GPUs no Databricks AI no blog de engenharia da Databricks.
- Treinamento multinó: escala de uma única GPU para treinamento distribuído multinó com rede de alta velocidade e configuração automática de ambiente. Para os aceleradores compatíveis com treinamento multinó, consulte opções de hardware.
- Inferência de lotes personalizada: execução inferência de lotes personalizada em larga escala em GPUs distribuídas sem precisar gerenciar clusters de GPU.
Migrar da compute clássica com Genie Code
O Genie Code pode ajudar a automatizar a refatoração de código e a configuração de ambiente em notebooks conectados ao AI Runtime quando você move uma carga de trabalho de um compute clássico. Para obter a lista completa de etapas de migração, consulte Migrar cargas de trabalho de GPU clássicas para serverless.
O que o Genie Code automatiza
O Genie Code pode ajudar com as seguintes tarefas de migração:
- Refatoração: "Converta notebooks do Databricks Runtime ML, como notebooks que usam
TorchDistributor, em notebooks do AI Runtime que usam o decorador@distributeddedatabricks.air." - Resolução de dependências: avalia importações de notebook, identifica pacotes ausentes ou incompatíveis e configura um ambiente de GPU serverless.
- Diagnóstico de erros de multi-rank: Analisa logs de saída em todos os nós para isolar causas raízes, como erros de memória insuficiente (OOM) da GPU ou falhas de comunicação.
Exemplos de prompts de migração do Genie Code
Os seguintes são exemplos de prompts que você pode dar ao Genie Code:
- Conversão de código: "Migre este notebook do TorchDistributor para o decorador databricks.air @distributed."
- Configuração de ambiente: "Inspecione pacotes importados, recomende o ambiente Databricks AI ou o ambiente padrão e gere os comandos %pip install necessários."
- Depuração: "Analise os logs de treinamento distribuído em todas as classificações para determinar por que o job falhou."