Optimisation des clusters GPU pour la formation de modèles d’IA générative : un guide complet

Lecture 6 minutes

Zach Anderson
14 août 2024 04:45

Explorez les subtilités des tests et de l’exécution de grands clusters de GPU pour la formation de modèles d’IA génératifs, garantissant des performances et une fiabilité élevées.



Optimisation des clusters GPU pour la formation de modèles d'IA générative : un guide complet

La formation de modèles d’IA génératifs nécessite des clusters de matériel de pointe coûteux, tels que des GPU H100 et un stockage rapide, interconnectés via des topologies multi-réseaux impliquant des liaisons Infiniband, des commutateurs, des émetteurs-récepteurs et des connexions Ethernet. Bien que les services de calcul haute performance (HPC) et de cloud computing d’IA offrent ces clusters spécialisés, ils impliquent des engagements financiers substantiels. Cependant, selon together.ai, tous les clusters ne sont pas créés égaux.

Introduction aux tests de clusters GPU

La fiabilité des clusters de GPU varie considérablement, les problèmes pouvant aller de mineurs à critiques. Par exemple, Meta a signalé que lors de la formation de 54 jours du modèle Llama 3.1, les problèmes de GPU représentaient 58,7 % de tous les problèmes inattendus. Together AI, au service de nombreuses startups d’IA et d’entreprises du Fortune 500, a développé un cadre de validation robuste pour garantir la qualité du matériel avant le déploiement.

Le processus de test des clusters chez Together AI

L’objectif des tests d’acceptation est de garantir que l’infrastructure matérielle répond aux exigences spécifiées et offre la fiabilité et les performances nécessaires aux charges de travail IA/ML exigeantes.

1. Préparation et configuration

La phase initiale consiste à configurer un nouveau matériel dans un environnement de cluster GPU, en imitant les scénarios d’utilisation finale. Cela comprend l’installation des pilotes NVIDIA, des pilotes OFED pour Infiniband, CUDA, NCCL, HPCX et la configuration des paramètres de cluster SLURM et PCI pour les performances.

2. Validation du GPU

La validation commence par vérifier que le type et le nombre de GPU correspondent aux attentes. Des outils de test de stress tels que DCGM Diagnostics et gpu-burn sont utilisés pour mesurer la consommation d’énergie et la température sous charge. Ces tests permettent d’identifier des problèmes tels que les incompatibilités de pilotes NVML ou les erreurs « GPU tombé du bus ».

3. Validation de NVLink et NVSwitch

Après la validation individuelle du GPU, des outils tels que les tests NCCL et nvbandwidth mesurent la communication GPU à GPU via NVLink. Ces tests permettent de diagnostiquer des problèmes tels qu’un NVSwitch défectueux ou des NVLinks en panne.

4. Validation du réseau

Pour la formation distribuée, la configuration du réseau est validée à l’aide de structures réseau Infiniband ou RoCE. Des outils tels que ibping, ib_read_bw, ib_write_bw et les tests NCCL sont utilisés pour garantir des performances optimales. Un bon résultat dans ces tests indique que le cluster fonctionnera bien pour les charges de travail de formation distribuées.

5. Validation du stockage

Les performances de stockage sont cruciales pour les charges de travail d’apprentissage automatique. Des outils comme fio mesurent les caractéristiques de performances de différentes configurations de stockage, notamment les lectures aléatoires, les écritures aléatoires, les lectures continues et les écritures continues.

6. Construction du modèle

La phase finale consiste à exécuter des tâches de référence adaptées aux cas d’utilisation du client. Cela garantit que le cluster peut atteindre les performances de bout en bout attendues. Une tâche courante consiste à créer un modèle avec des frameworks tels que Fully Sharded Data Parallel (FSPD) de PyTorch pour évaluer le débit de formation, l’utilisation des flops du modèle, l’utilisation du GPU et les latences de communication réseau.

7. Observabilité

La surveillance continue des pannes matérielles est essentielle. Together AI utilise Telegraf pour collecter les mesures du système, garantissant ainsi une disponibilité et une fiabilité maximales. La surveillance comprend des mesures au niveau du cluster et de l’hôte, telles que l’utilisation du processeur/du processeur graphique, la mémoire disponible, l’espace disque et la connectivité réseau.

Conclusion

Les tests d’acceptation sont indispensables pour les startups d’IA/ML qui fournissent des ressources informatiques de premier ordre. Une approche complète et structurée garantit une infrastructure stable et fiable, prenant en charge les charges de travail GPU prévues. Les entreprises sont encouragées à effectuer des tests d’acceptation sur les clusters de GPU livrés et à signaler tout problème pour dépannage.

Source de l’image : Shutterstock


Source https://blockchain.news/news/optimizing-gpu-clusters-for-generative-ai-model-training

Crypto Week

Avertissement : Crypto Week ne fournit pas de conseils financiers de quelque manière que ce soit. Nous ne vous recommandons pas d'investir de l'argent dans une crypto-monnaie ou un actif financier sans avoir effectué des recherches approfondies. Nous ne sommes pas responsables de vos décisions financières de quelque manière que ce soit.

Derniers articles de Featured Posts