
Le framework d’apprentissage automatique MLX d’Apple, initialement conçu pour les puces Apple Silicon, s’apprête à intégrer un backend CUDA. Cela signifie que les développeurs pourront exécuter directement des modèles MLX sur des GPU NVIDIA, une avancée significative pour la communauté des développeurs.
Le travail est dirigé par le développeur @zcbenz sur GitHub, qui a commencé à prototyper le support de CUDA il y a quelques mois. Depuis, il a décomposé le projet en morceaux plus petits, les intégrant progressivement à la branche principale de MLX.
Bien que le backend soit encore en développement, plusieurs opérations de base, telles que la multiplication matricielle, le softmax, la réduction, le tri et l’indexation, sont déjà prises en charge et testées.
QU’EST-CE QUE CUDA ?
CUDA (Compute Unified Device Architecture) est la plateforme de calcul développée par NVIDIA spécifiquement pour ses propres GPU, permettant de maximiser leurs performances pour des tâches de calcul parallèle à haute performance. Pour de nombreux développeurs, CUDA est la norme pour exécuter des charges de travail d’apprentissage automatique sur des GPU NVIDIA, utilisé à la fois dans la recherche académique et le déploiement commercial.
POUQUOI APPLE MLX SOUTIENT-IL MAINTENANT CUDA ?
Étant donné que MLX est étroitement intégré à Metal sur les plateformes Apple, il n’était pas initialement conçu pour fonctionner en dehors de macOS. Cependant, l’ajout d’un backend CUDA change la donne. Cela permet aux chercheurs et aux ingénieurs de prototyper localement sur un Mac, en utilisant Metal et Apple Silicon, puis d’exécuter le même code sur de grands clusters GPU NVIDIA, qui dominent encore les charges de travail d’entraînement en apprentissage automatique.
Cependant, certaines limitations subsistent, la plupart encore en cours de développement. Par exemple, tous les opérateurs MLX ne sont pas encore implémentés, et le support des GPU AMD est encore à l’horizon. Néanmoins, permettre aux utilisateurs d’exécuter du code MLX sur des GPU NVIDIA sans avoir à le réécrire ouvre la porte à un test plus rapide, à l’expérimentation, et à des cas d’utilisation en recherche, ce qui est une perspective enthousiasmante pour les développeurs IA.