Connexion Premium

#Nextquick Pourquoi tout le monde se jette encore sur les GPU NVIDIA pour l’IA

Dans l'IA, tous les chemins mènent à CUDA

#Nextquick Pourquoi tout le monde se jette encore sur les GPU NVIDIA pour l’IA

Illustration : Flock

NVIDIA est toujours le maître incontesté quand on parle d’entraînement et d’inférence de l’intelligence artificielle (générative). Ses GPU sont encore et toujours incontournables alors qu’il existe des alternatives, parfois plus économes, avec des puces spécialisées (ASIC) développées par Google, Microsoft ou encore Amazon. Pourquoi une telle situation ?

Avant toute chose, rendons à Furanku ce qui appartient à Furanku : l’idée de ce Nextquick. Dans les commentaires sur notre analyse de la consommation électrique des datacenters, il a soulevé une très intéressante question : « Pourquoi alors les TPU ne sont pas plus présents au sein des DC ? S’ils sont plus efficients, etsi j’ai bien suiviplus économiques, comment se fait-il que tout le monde continue à se jeter sur des GPU ? »

Les TPU, ou Tensor Processing Unit (unité de traitement de tenseur), sont développés par Google, mais il existe aussi les Trainium de chez Amazon et les Maia chez Microsoft, pour ne citer qu’eux. Il s’agit d’ASIC, des circuits spécialisés, contrairement aux GPU qui sont généralistes (avec quand même une forte optimisation pour les calculs massivement parallélisables). Nous élargissons la question aux ASIC dans leur ensemble.

La réponse courte de la domination de NVIDIA tient en quatre lettres : CUDA, pour Compute Unified Device Architecture, une plateforme de programmation lancée en 2007, bien avant l’arrivée de l’IA. Depuis 20 ans, NVIDIA la développe et l’enrichit. La force de NVIDIA sur le logiciel est telle que son arrivée sur le quantique « fait peur à tout le monde ».

Maintenant, la réponse détaillée.

CUDA s’impose comme un standard de fait

Il reste 78% de l'article à découvrir.

Cadenas en colère - Contenu premium

Soutenez un journalisme indépendant,
libre de ton, sans pub et sans reproche.

Accédez en illimité aux articles

Profitez d'un média expert et unique

Intégrez la communauté et prenez part aux débats

Partagez des articles premium à vos contacts

Commentaires (11)

votre avatar
Merci pour ce papier fort enrichissant et qui répond totalement aux questions que je me posais !

Je me doutais fortement qu'il y avait du lock-in dans tout cela, mais pas à ce point.
Et je suis même surpris que les régulateurs ne se penchent pas plus sur la question. Il y a une situation de monopole évidente. Alors quand on nous vend du "libre marché" et que l'on constate ce type de situation, avec un acteur qui étouffe tout un pan industriel...

Typiquement CUDA devrait, amha, finir comme un standard ouvert de facto.
Cela réduirait en partie la dépendance à NVIDIA, en plus de permettre à la concurrence d'arriver plus fortement sur les marchés l'intégrant, donc stimuler l'innovation.
votre avatar
CUDA est un standard de facto. L'implémentation est propriétaire, mais l'interface est publique. Rien n'empêche les autres de proposer cette interface sur leur matériel ; c'est d'ailleurs le principe de HIP sur ROCm. Mais CUDA est pensé pour les GPU nvidia, leur architecture, leur workflow. C'est forcément moins efficace une fois que tu le plaques sur une archi qui n'a pas été conçue dès le départ pour faire du CUDA.
votre avatar
nVidia refuseront cette ouverture en open standard : ils auraient trop à perdre.
votre avatar
Merci, bien utile pour avoir une vision globale sur cette question, sans que ce soit trop technique :yaisse:
votre avatar
Les TPUs sont beaucoup plus efficient que les GPU parce qu’ils sont plus spécialisés, ce qui est très bien pour l’inférence. Par contre quand tu entraînes une IA, tu tâtonnes encore, tu essaies pleins de choses, et tu as besoin de plus de souplesse et de généralité. C’est pour ça que de plus en plus d’entreprises se tournent vers une utilisation hybride : des GPU pour l’entraînement, et des TPU pour l’inférence.

Il y a aussi torchTPU qui est, ou va sortir, et si je ne me trompe pas, qui a été développé par Google et le créateur de PyTorch. Et ça permettrait de faire tourner du PyTorch nativement sur des TPU. Ce qui déverrouille encore un peu le “lock-in”
votre avatar
L'autre point à prendre en compte, c'est que les GPU sur un cluster de calculs, ils ne sont pas utilisés exclusivement pour faire du réseau de neurone. Beaucoup de projets utilisent les GPU pour faire du calcul plus classique sur des grosses tables. Les TPUs spécialisés ne servent plus à rien dans ces cas là.
votre avatar
Il y a quand même un truc inexplicable : certes, les GPU nvidia sont bons, c'est un ecosystème dont on est prisonnier, et il y a une montagne de code existant dessus. Mais quand même, on sait bien que ce qui dirige le monde, c'est le pognon : si les TPU sont moins chers à produire que les GPU nvidia hors de prix, et consomment moins d'énergie qui est hors de prix en ce moment, pourquoi est-ce que les dirigeants des grandes entreprises ne les imposent pas à leurs troupes ? Parce que bon, on sait bien que ce sont les financiers qui dirigent les entreprises, pas les ingénieurs.
votre avatar
Parce que pratiquement tous les devs ont été et son biberonnés sur du nVidia depuis 20 piges, les formations et les dépendances ne se suppriment pas comme ça.

Il y a en plus un coût énorme de migration (hardware et software) en plus des formations nécessaires pour les devs afin d'avoir en sortie des perfs similaires que peu sont près a encaisser.
votre avatar
Tout d'abord, les TPU, ce n'est pas si "pas cher" que ça. Google a développé ses propres puces, et il les fait produire et adapté les grosses bibliothèques à son matos. Une carte graphique, il suffit juste de commander, c'est une ligne dans la conta, et tu as une solution clé en mains, matériel, driver et logiciel.

La majorité des développeurs en ML, eux, utilisent des bibliothèques haut niveau comme pyTorch, Jax, Tensorflow. Le code est, pour l'immense majorité, ligne, agnostique du matos. Techniquement, si tu as le backend qui permet d'utiliser un TPU, il sera compatible avec les TPU. Microsoft a même créé un format ouvert "ONNX" pour les modèles de machine learning et avec un environnement capable de s'adapter à la machine.

Bon après, le TPU, c'est trop spécialisé, certain modèle risque de ne pas fonctionner là-dessus.
votre avatar
Et dire que tout avait commencé avec Brooktree gpgpu qui tournait sur n'importe quel matos...
Et concernant l'enfermement dans le système CUDA, c'est un comble quand on vois que n projets sont rétroengeineré à coup d'IA pour ressortir du code dans un autre langage !
votre avatar
Hum. Brook GPU, c'était quand même vachement restreint.