Développement

Ce que le plugin Nvidia Device peut apporter à l’apprentissage automatique

• Bookmarks: 4


L’IA générative a le vent en poupe en ce moment. Pour la Cloud Native Computing Foundation, Kubernetes est un choix naturel. Encore faut-il lui adjoindre le dernier NVIDIA Device Plugin for Kubernetes. Explications.

Les GPU sont devenus le matériel de prédilection pour accélérer les tâches d’apprentissage automatique. Dans le domaine, la plateforme CUDA de NVIDIA s’est imposée comme le cadre dominant pour le calcul par le GPU.

La Cloud Native Computing Foundation reconnaît toutefois que l’orchestration des charges de travail accélérées par le GPU dans les environnements Kubernetes présente de nombreux défis. Et c’est ici que le NVIDIA Device Plugin entre en jeu.

Avec le NVIDIA Device Plugin for Kubernetes, disponible en open source sous licence Apache, les développeurs et les data scientists peuvent se concentrer sur la construction et le déploiement de leurs modèles sans se soucier de l’infrastructure sous-jacente. Ce dernier s’intègre de manière transparente à Kubernetes.

Comment ça marche ?

Le NVIDIA Device Plugin est un Daemonset Kubernetes qui va simplifier la gestion des ressources GPU dans un cluster. Sa fonction principale est d’exposer automatiquement le nombre de GPU sur chaque nœud, les rendant découvrables et allouables par le planificateur Kubernetes.

Cela permet aux pods de demander et de consommer des ressources GPU de la même manière que le cpu et la mémoire. Sous le capot, le greffon communique avec le kubelet sur chaque nœud, fournissant des informations sur les GPU disponibles et leurs capacités. Il surveille également la santé des GPU, s’assurant qu’ils fonctionnent de manière optimale et signalant tout problème à Kubernetes.

Pré-requis et installation

Quelques conditions préalables doivent être respectées : vos nœuds GPU devront disposer des pilotes NVIDIA nécessaires (version ~= 384.81), il faudra installer nvidia-container-toolkit (version >= 1.7.0) sur chaque nœud GPU et configurer le nvidia-container-runtime comme runtime par défaut pour Docker ou containerd, le tout avec une version de Kubernetes 1.10 minimum. Si vous utilisez AWS EKS par exemple, ces éléments seront gérés par défaut lors de l’utilisation de nœuds GPU.

L’installation complète est décrite dans cet article (en anglais).

4 recommended
bookmark icon
Mastodon