Recommandations de stockage pour les charges de travail d’IA sur l’infrastructure Azure (IaaS)
Cette rubrique fournit des recommandations de stockage pour les organisations exécutant des charges de travail d’IA sur l’infrastructure Azure (IaaS). Une solution de stockage pour les charges de travail d’IA sur l’infrastructure Azure doit être capable de gérer les exigences de stockage, d’accès et de transfert de données, essentielles pour l’entraînement et l’inférence des modèles d’IA.
Les charges de travail d’IA nécessitent un débit élevé et une faible latence pour un accès et un traitement efficaces des données. Elles nécessitent également des mécanismes de contrôle de version et de cohérence des données pour garantir des résultats précis et reproductibles dans des environnements distribués. Lors de la sélection de la solution de stockage appropriée, prenez en compte des facteurs tels que les temps de transfert des données, la latence, les exigences de performance et la compatibilité avec les systèmes existants.
Utilisez un système de fichiers pour les données actives. Implémentez un système de fichiers pour stocker les données « spécifiques aux tâches/à chaud » activement utilisées ou générées par les tâches d’IA. Cette solution est idéale pour le traitement de données en temps réel grâce à sa faible latence et son débit élevé. Ces capacités sont cruciales pour optimiser les performances des flux de travail d’IA. Azure propose trois principales solutions de systèmes de fichiers pour prendre en charge l’entraînement et l’inférence des modèles d’IA sur l’infrastructure Azure. Pour choisir le bon système de fichiers, suivez ces recommandations :
Utilisez Azure Managed Lustre pour des temps de transfert de données minimaux et une latence réduite. Azure Managed Lustre offre des performances élevées avec des capacités de système de fichiers parallèle et simplifie la gestion grâce à l’intégration Azure. Il est rentable, avec des coûts de stockage basés sur l’utilisation, et permet l’importation sélective de données depuis le Blob Storage, optimisant ainsi la gestion des données.
Utilisez Azure NetApp Files si vous avez besoin de fonctionnalités de niveau entreprise et de performances pour les charges de travail d’IA. Azure NetApp Files offre une fiabilité et des performances élevées, idéales pour les applications critiques. Azure NetApp Files est bénéfique si vous avez déjà investi dans une infrastructure NetApp. Il est utile pour les capacités hybrides dans le cloud et lorsque vous devez personnaliser et affiner les configurations de stockage.
Utilisez les systèmes de fichiers locaux NVMe/SSD lorsque la performance est la priorité absolue. Il agrège le NVMe local des nœuds de calcul (nœuds de travail) en utilisant un système de fichiers parallèle dédié aux tâches, comme BeeGFS On Demand (BeeOND). Ils fonctionnent directement sur les nœuds de calcul pour créer un système de fichiers temporaire et performant pendant la tâche. Ces systèmes offrent une latence ultra-faible et un débit élevé, les rendant idéaux pour les applications gourmandes en E/S telles que l’entraînement au deep learning ou l’inférence en temps réel.
Transférez les données inactives vers Azure Blob Storage. Après avoir terminé une tâche, transférez les données de la tâche inactive depuis Azure Managed Lustre vers Azure Blob Storage pour un stockage à long terme et économique. Le Blob Storage offre des options évolutives avec différents niveaux d’accès, assurant un stockage efficace des données inactives ou peu consultées, tout en les gardant disponibles au besoin.
Mettez en place un mécanisme de sauvegarde pour l’entraînement des modèles. Configurez un mécanisme de sauvegarde qui enregistre l’état du modèle, y compris les poids et paramètres d’entraînement, à intervalles réguliers, par exemple toutes les 500 itérations. Stockez ces données de sauvegarde dans Azure Managed Lustre pour permettre la reprise de l’entraînement du modèle depuis un état précédemment enregistré, améliorant ainsi la flexibilité et la résilience de vos flux de travail d’IA.
Automatisez la migration des données vers des niveaux de stockage à coût réduit. Configurez des politiques de gestion du cycle de vie du Blob Storage Azure pour migrer automatiquement les données plus anciennes et peu consultées vers des niveaux de stockage à coût réduit, tels que les niveaux Cool ou Archive. Cette approche optimise les coûts de stockage tout en assurant que les données importantes restent accessibles au besoin.
Assurez la cohérence des données dans les environnements distribués. Assurez la cohérence des données dans les charges de travail d’IA distribuées en configurant la synchronisation entre Azure Managed Lustre et Azure Blob Storage. Cette synchronisation garantit que tous les nœuds accédant aux données travaillent avec la même version cohérente, évitant ainsi les erreurs et les incohérences dans les environnements distribués.
Activez la gestion des versions des données pour la reproductibilité. Activez la gestion des versions dans Azure Blob Storage pour suivre les modifications apportées aux ensembles de données et aux modèles au fil du temps. Cette fonctionnalité facilite les retours en arrière, améliore la reproductibilité et soutient la collaboration. Elle conserve un historique détaillé des modifications apportées aux données et aux modèles et permet de comparer et de restaurer les versions précédentes au besoin.