Aller au contenu principal

Pourquoi utiliser AI Runtime au lieu du compute classique

AI Runtime est un compute GPU Serverless pour l'entraînement, l'affinement et l'exécution d'inférences batch sur des modèles de deep learning personnalisés. Si vous exécutez ces charges de travail sur un compute classique avec Databricks Runtime ML, Databricks recommande de les déplacer vers AI Runtime afin de réduire le coût total de possession, d’offrir une expérience de développement plus flexible et une Monter en charge multinœud. Les sections suivantes comparent les deux pour les ingénieurs ML et les équipes de plateforme, et décrivent comment Genie Code peut vous aider à effectuer la migration.

Comparer AI Runtime au compute classique​

Le tableau suivant compare AI Runtime et Databricks Runtime ML sur un compute classique :

Compétence

Runtime de l'IA

compute classique avec Databricks Runtime ML

Coût total de possession (TCO)

Réduisez votre TCO grâce à une infrastructure GPU Serverless gérée, une performance à haut throughput, un chargement de données optimisé et un accès à Spark via Spark Connect. Vous ne payez que le compute utilisé par vos workloads. Databricks gère les clusters, les drivers et l'état de santé des GPU pour vous.

Un TCO plus élevé du fait de la gestion des clusters, d'un Startup lent et d'un chargement de données et de checkpoints non optimisés. Vous gérez la configuration du cluster et la santé du GPU, ce qui augmente le coût d'acquisition et de maintenance des clusters GPU.

Expérience de développement

Développez et déployez depuis la CLI de Databricks, des IDEs et des Notebooks. Prise en charge native de Ray. Choisissez un environnement standard minimal pour un contrôle total des dépendances, l'environnement Databricks AI avec des packages ML et IA courants, ou une image Docker personnalisée.

Développez dans des notebooks ou connectez-vous à partir d'un IDE via le tunnel SSH. Pas de CLI dédiée pour les charges de travail d'entraînement GPU. Ray s'exécute sur Spark. Un grand nombre de bibliothèques préinstallées liées à la version du runtime, y compris des packages non liés à l'IA et au ML.

Monter en charge et performance

Entraînement multinœuds et inférence par batch. Chargement des données et checkpoints optimisés. Fiabilité GPU élevée pour les entraînements longs.

Pas optimisé pour l'entraînement multinœuds, car vous configurez vous-même les nœuds et la mise en réseau. Vous optimisez manuellement le chargement des données et les checkpoints, et vérifiez manuellement la santé du GPU.

Compétence

Runtime de l'IA

compute classique avec Databricks Runtime ML

Coût total de possession (TCO)

Réduisez votre TCO grâce à une infrastructure GPU Serverless gérée, une performance à haut throughput, un chargement de données optimisé et un accès à Spark via Spark Connect. Vous ne payez que le compute utilisé par vos workloads. Databricks gère les clusters, les drivers et l'état de santé des GPU pour vous.

Un TCO plus élevé du fait de la gestion des clusters, d'un Startup lent et d'un chargement de données et de checkpoints non optimisés. Vous gérez la configuration du cluster et la santé du GPU, ce qui augmente le coût d'acquisition et de maintenance des clusters GPU.

Expérience de développement

Développez et déployez depuis la CLI de Databricks, des IDEs et des Notebooks. Prise en charge native de Ray. Choisissez un environnement standard minimal pour un contrôle total des dépendances, l'environnement Databricks AI avec des packages ML et IA courants, ou une image Docker personnalisée.

Développez dans des notebooks ou connectez-vous à partir d'un IDE via le tunnel SSH. Pas de CLI dédiée pour les charges de travail d'entraînement GPU. Ray s'exécute sur Spark. Un grand nombre de bibliothèques préinstallées liées à la version du runtime, y compris des packages non liés à l'IA et au ML.

Monter en charge et performance

Entraînement multinœuds et inférence par batch. Chargement des données et checkpoints optimisés. Fiabilité GPU élevée pour les entraînements longs.

Pas optimisé pour l'entraînement multinœuds, car vous configurez vous-même les nœuds et la mise en réseau. Vous optimisez manuellement le chargement des données et les checkpoints, et vérifiez manuellement la santé du GPU.

Coût total de possession​

AI Runtime réduit le coût total de possession avec des GPU serverless haute performance gérés :

  • Faster Startup : l'infrastructure GPU Serverless est disponible à la demande. Vous n'avez donc pas à attendre le start d'un cluster GPU. Les clusters GPU classiques peuvent mettre plusieurs minutes ou plus à start, selon la taille du cluster et la disponibilité des GPU.
  • Tarifs à l'usage : vous payez uniquement le compute GPU Serverless utilisé par vos workloads, sans gérer ni payer de clusters inutilisés.
  • Utilisation plus élevée du GPU : des options de compute flexibles, un chargement rapide des données, un checkpointing efficace et un entraînement multinœud réduisent le temps d’inactivité du GPU.
  • Réduction de la charge administrative : AI Runtime gère le déploiement du compute, la mise en réseau des clusters, la gestion de la santé des GPU et les mises à niveau des pilotes CUDA. Avec le compute classique, votre équipe gère l'administration des nœuds, la configuration des clusters et la maintenance continue de l'infrastructure.

Expérience développeur​

AI Runtime offre une expérience de développement flexible pour les workloads d'IA et de deep learning :

  • Connectivité : travaillez depuis des notebooks, connectez-vous depuis un IDE via un tunnel SSH (bêta) ou soumettez des tâches avec le CLI Databricks. Pour automatiser les exécutions, planifiez des jobs ou utilisez des Declarative Automation Bundles. Le compute classique ne dispose pas de CLI dédiée pour soumettre des tâches d'entraînement sur GPU.
  • Environnement d'exécution de deep learning dédié : l'environnement d'exécution de l'IA prend en mode natif en charge des infrastructures telles que Ray et PyTorch. Choisissez l'environnement standard pour un contrôle total sur votre pile de dépendances, l'environnement Databricks AI avec des packages ML et IA courants, ou une image Docker personnalisée. Les environnements d'exécution classiques comprennent un ensemble important de bibliothèques préinstallées liées à la version de l'environnement d'exécution.
  • debugging et observabilité : suivez vos expérimentations, surveillez l’utilisation des ressources de compute, gérez vos modèles et dépannagez les problèmes avec l’ intégration MLflow intégrée. Avec classic compute, les logs et les métriques d’utilisation du compute ne sont pas automatiquement stockés dans l’exécution MLflow.
  • Accès sécurisé aux données : accédez aux données structurées et non structurées gérées par Unity Catalog via Spark Connect, sans avoir besoin d’exécuter un cluster Apache Spark.

Monter en charge et performance​

AI Runtime vous aide à monter en charge efficacement pour les workloads de deep learning :

  • Chargement des données et checkpoints optimisés : le chargement de données à haut throughput et le checkpointing distribué asynchrone accélèrent les pipelines d'entraînement et réduisent les temps d'inactivité des GPU. Le compute classique ne dispose pas de chargeurs de données à haut throughput natifs ni de checkpointing distribué. Voir Améliorer les performances et la résilience de l'entraînement dans l'environnement Runtime de l'IA.
  • Résilience GPU intégrée : des contrôles de santé automatisés et continus aident à détecter et à isoler les nœuds GPU défaillants, ce qui réduit les disruptions lors des longues exécutions d'entraînement. Avec le compute classique, vous maintenez vous-même l'état de santé des nœuds GPU, et l'isolement d'un nœud défaillant nécessite d'interrompre les charges de travail actives. Consultez la façon dont nous garantissons la fiabilité des GPU dans Databricks AI sur le blog Data Engineering Databricks.
  • Entraînement multinœud : montez en charge depuis un GPU unique jusqu’à un entraînement distribué multinœud avec un réseau à haut débit et une configuration automatique de l’environnement. Pour les accélérateurs prenant en charge l’entraînement multinœud, voir les options matérielles.
  • Inférence par batch personnalisée : exécutez une inférence par batch personnalisée pour Monter en charge sur des GPU distribués sans gérer de clusters GPU.

Migrer de classic compute avec Genie Code​

Genie Code peut vous aider à automatiser la refactorisation de code et la configuration de l’environnement dans les notebooks connectés à AI Runtime lorsque vous déplacez une charge de travail depuis un compute classique. Pour la liste complète des étapes de migration, voir Migrer les charges de travail GPU classiques vers serverless.

Ce que Genie Code automatise​

Genie Code peut vous aider avec les tâches de migration suivantes :

  • Refactorisation : convertit les notebooks Databricks Runtime ML, tels que les notebooks utilisant TorchDistributor, en notebooks AI Runtime utilisant le décorateur @distributed de databricks.air.
  • Résolution des dépendances : évalue les importations de notebook, identifie les packages manquants ou incompatibles et configure un environnement GPU serverless.
  • Diagnostic d’erreurs multi-rangs : Analyse les logs de sortie sur tous les nœuds pour isoler les causes profondes telles que les erreurs de mémoire insuffisante (OOM) GPU ou les blocages de communication.

Exemple de prompts de migration Genie Code​

Voici des exemples de prompts que vous pouvez donner à Genie Code :

  • Conversion de code : « Migrez ce notebook de TorchDistributor vers le décorateur databricks.air @distributed. »
  • Configuration de l’environnement : « Inspecter les packages importés, recommander l’environnement Databricks AI ou Standard, et générer les commandes %pip install requises. »
  • Debugging : « Analysez les logs d'entraînement distribué sur tous les rangs pour déterminer pourquoi le job a échoué. »

Ressources supplémentaires​