- Le CEO d’Intel, Pat Gelsinger, a présenté les puces de datacenter Core Ultra et Xeon de 5e génération lors d’un événement à New York, en affirmant que la domination de CUDA de Nvidia dans l’entraînement de l’IA ne durerait pas éternellement
- Gelsinger estime que l’industrie se dirige vers une couche de programmation Pythonic afin de rendre l’entraînement de l’IA plus ouvert, citant MLIR, Google et OpenAI comme exemples
- Intel considère le marché de l’inférence — qui ne dépend pas de CUDA — comme le terrain de bataille le plus important, et veut se positionner sur l’exécution des modèles après l’entraînement avec Gaudi 3, Xeon et les PC edge
- OpenVINO est au cœur de la stratégie IA d’Intel, qui anticipe un environnement de calcul hybride où certaines opérations seront traitées dans le cloud et d’autres sur le PC
- Gelsinger a déclaré vouloir concurrencer le marché de l’IA pour datacenters sur trois axes : les CPU, les accélérateurs et la fonderie, en visant à la fois les opportunités internes et les opportunités commerciales avec Nvidia, AMD et d’autres
L’offensive d’Intel contre la domination de CUDA
- Pat Gelsinger a présenté les puces Intel Core Ultra et Xeon de 5e génération pour datacenters lors d’un événement à New York, en visant directement la technologie CUDA de Nvidia
- Interrogé par le NASDAQ, il a répondu que la domination de Nvidia CUDA dans l’entraînement de l’IA ne serait pas éternelle
- Il a déclaré que « toute l’industrie est motivée à éliminer le marché de CUDA »
- Il estime que MLIR, Google et OpenAI évoluent vers une couche de programmation Pythonic pour rendre l’entraînement de l’IA plus ouvert
- Il a décrit le fossé défensif de CUDA comme « peu profond et étroit », affirmant que l’industrie cherche à mobiliser un ensemble de technologies plus large pour l’entraînement à grande échelle, l’innovation et la science des données
Une stratégie qui privilégie l’inférence plutôt que l’entraînement
- Intel voit l’inférence comme le marché clé, plutôt que de chercher à rivaliser uniquement sur l’entraînement
- Selon Gelsinger, une fois qu’un modèle a été entraîné, il ne dépend plus de CUDA ; l’essentiel est alors de savoir à quel point ce modèle peut être exécuté efficacement
- Gaudi 3, dévoilé pour la première fois sur scène, a été présenté comme le produit destiné à répondre à cette compétition
- Xeon et les PC edge ont également été mentionnés comme autres axes de cette même concurrence
- Cela ne signifie pas qu’Intel abandonne le marché de l’entraînement, mais Gelsinger considère que « fondamentalement, le marché de l’inférence est le véritable terrain décisif »
OpenVINO et le calcul hybride
- Gelsinger a mis en avant OpenVINO comme standard central des efforts d’Intel dans l’IA
- Il anticipe un monde de calcul hybride où certaines opérations seront exécutées dans le cloud et d’autres sur le PC de l’utilisateur
- Sandra Rivera a ajouté qu’Intel pouvait devenir le partenaire de choix grâce à sa capacité à opérer à l’échelle, du datacenter jusqu’au PC
- Rivera a également mis en avant la capacité d’Intel à produire en masse comme un atout majeur
Une concurrence sur trois fronts dans le marché de l’IA pour datacenters
- Gelsinger a déclaré qu’Intel comptait rivaliser sur l’ensemble du marché de l’IA pour datacenters de trois façons : les CPU, les accélérateurs et la fonderie
- Côté opportunités internes, il a mentionné des puces comme TPU, Inferentia et Trainium
- Du côté des opportunités commerciales, Intel entend également poursuivre toutes les possibilités de collaboration avec Nvidia, AMD et d’autres
- Intel met ainsi en avant à la fois une stratégie de concurrence avec ses propres produits et l’ambition de devenir un acteur de la fonderie
Les questions qui restent sur le paysage concurrentiel
- Gelsinger a affiché une forte confiance lors de cette présentation et a conduit les annonces de son équipe
- La question de savoir si Intel pourra réellement tenir tête à CUDA ne pourra être tranchée qu’une fois que les applications des puces présentées par Intel, ainsi que celles en développement chez ses concurrents, seront plus largement déployées
1 commentaires
Avis sur Hacker News
Comme le disent d’autres commentaires, le cœur du sujet, c’est CUDA. Intel ou AMD peuvent eux aussi fabriquer des puces assez rapidement, mais ils ne comprennent pas que le véritable concurrent, ce sont le logiciel et l’écosystème
Par exemple, on peut acheter sur eBay une MI100 d’occasion aux performances presque équivalentes à celles d’une A100 pour un cinquième du prix, mais si elle est si bon marché, c’est parce que les incompatibilités logicielles par rapport aux GPU Nvidia font perdre énormément de temps pour la faire fonctionner
Google aussi se contente plus ou moins d’ajouter une interface XLA à PyTorch pour offrir aux chercheurs une voie de compatibilité acceptable, et Intel fait quelque chose de similaire
Une entreprise de ce secteur ne pourra vendre ses puces qu’en constituant un énorme ensemble de tests, par exemple tous les modèles de Hugging Face, puis en corrigeant les problèmes un par un de façon laborieuse
Comme toujours, Intel annonce une initiative ouverte puis n’y apporte qu’un soutien minimal, et OpenVINO semble avoir de fortes chances de finir sans grand résultat. Triton d’OpenAI semble déjà être davantage mentionné
Si PyTorch fonctionne bien sur les GPU Intel, beaucoup de gens seront tout à fait prêts à migrer
Si vous avez un peu d’âge, vous avez vu ce schéma se répéter dans l’industrie. L’histoire d’Unix contre Windows NT dans les années 1990 était pleine de ce genre de mouvements, et le réseau revit la même chose avec UltraEthernet
OpenGL a probablement été l’approche la plus réussie, mais cela a à peine fonctionné, et cela n’a pas vraiment aidé les acteurs qui n’étaient pas déjà en voie de gagner. Unix 95 n’a pas marché non plus, ni Unix 98
Intel risque fort de faire du bruit autour de ses initiatives, puis de sabrer largement le département concerné un ou deux trimestres plus tard
Pour rivaliser dans le domaine de CUDA, il faut un engagement sur plusieurs années et des recrutements massifs, et pour cela il faut aussi aligner les salaires sur le marché
Pour prendre une part du gâteau de NVIDIA, il n’est pas nécessaire de faire tout de suite mieux qu’un H100. Beaucoup de consommateurs se contenteraient du niveau d’une 4090, 4080, voire 3080, si le produit coûtait deux fois moins cher, était disponible immédiatement sur Amazon, NewEgg, etc., et n’avait pas de bouton « demander le prix »
AMD et Intel sont bien meilleurs que NVIDIA pour rendre leurs puces réellement achetables, mais cela ne suffit pas
Ce qu’il faut, c’est un
intelcc, unamdcc, unqualcommccqui acceptent et compilent exactement le même code que celui qu’on mettait dansnvcc. Pas une seule signature de fonction ne doit différer, et cela doit fonctionner sur le matériel cible sans poser de questions. Il faut un substitut drop-in à CUDAÀ partir de là, recompiler PyTorch et tout le reste pour d’autres puces deviendrait trivial
Fait intéressant, plus de la moitié des ingénieurs de NVIDIA sont des ingénieurs logiciels. Jensen a délibérément et stratégiquement construit une puissante pile logicielle au-dessus des GPU, et il le fait depuis des décennies
Tant qu’Intel ne trouvera pas un CEO aussi technique et stratégique que Jensen, plutôt qu’un dirigeant qui ne regarde que les chiffres, il paraît difficile d’imaginer une riposte réussie contre CUDA
Gelsinger a rejoint Intel en 1979 à l’âge de 18 ans, a coécrit en 1987 un livre de programmation sur le microprocesseur 80386, et a été l’architecte principal du processeur 80486 de quatrième génération sorti en 1989
À 32 ans, il est devenu le plus jeune vice-président de l’histoire d’Intel, puis CTO en 2001, où il a dirigé le développement de technologies clés comme le Wi‑Fi, l’USB, Intel Core, Intel Xeon et 14 projets de puces. Il a aussi lancé l’Intel Developer Forum, pendant du Microsoft WinHEC
Même si Intel se tire une balle dans le pied, l’incitation à entraîner davantage de fabricants de puces est forte. Cela arrivera ; la seule question est de savoir si cela prendra des mois, des années ou une décennie
Personnellement, je parierais sur l’option courte. Cela semble surtout être un problème de multiplication matricielle, et il y a soudain énormément d’argent et d’attention qui affluent. La stratégie APU d’AMD [0] commence aussi à atteindre le haut de gamme avec le MI300A, ce qui est une évolution intéressante
[0] Pour ceux qui ne suivent pas cette tendance, AMD unifie la mémoire système et la mémoire GPU. Si j’ai bien compris, avec ces puces il n’est plus nécessaire de « copier les données vers le GPU ». En gros, le CPU se retrouve avec une grosse extension pour les calculs matriciels. Par le passé, cette technologie était intégrée à des CPU bas de gamme et n’était pas utile pour les workloads IA, mais elle arrive maintenant dans de grosses puces
Bien sûr, ma première impression a peut-être été mauvaise. Lors de l’annonce de l’acquisition, la première chose qu’il a dite à Pivotal a été : « vous étiez nos cousins, mais vous êtes désormais plus proches de nos enfants », ce qui a rendu toute l’ambiance bizarre
Du matériel sans logiciel, ce n’est que du sable coûteux. Toutes les entreprises de semi-conducteurs le savent. C’est Intel qui, à l’origine, a complété tout ce package avec x86
Dans le domaine du calcul GPU, CUDA est le x86. Il est partout, il est de facto le standard, et il finira un jour par être bousculé. La question est de savoir si cela prendra un an ou dix ans
Ce serait excellent si l’on créait une chaîne d’outils, un écosystème et une expérience de programmation meilleurs que CUDA, tout en assurant la compatibilité avec les meilleures performances sur toutes les plateformes de calcul. Tout le monde y gagnerait
D’ici là, ce genre d’affirmation est un peu risible, surtout quand on pense à l’échec d’OpenCL en matière d’expérience programmeur et au soutien qui s’est réduit. Même chose pour les tentatives de faire du calcul GPU généraliste avec les compute shaders de DX/GL/Vulkan
Sont-ils vraiment « motivés » ? Ils ont déjà eu des années, et le résultat est désastreux. Je ne sais même pas s’ils ont investi ne serait-ce qu’une fraction de ce qui a été investi dans CUDA. Il faut le montrer avec de l’argent, pas avec des paroles
Je ne veux pas de coprocesseur, ni d’un énième langage spécialisé cassé, qu’il s’agisse d’un C/C++ plein d’exceptions ou d’une pâle copie de Python. Qu’ils ajoutent juste plus de cœurs et permettent d’utiliser de vrais threads dans des langages de programmation généralistes
Intel et AMD ont eu des années pour fournir des fonctionnalités similaires au-dessus d’OpenCL
Il me semble qu’ils devraient d’abord regarder leurs propres échecs
Quand j’ai envisagé d’essayer, il y avait plusieurs implémentations, chacune prenant en charge un sous-ensemble différent de systèmes d’exploitation et de matériel, ce qui était assez chaotique
https://www.intel.com/content/www/us/en/developer/tools/onea...
Les gens n’ont pas envie d’acheter du calcul moins rapide, même s’il est peut-être moins cher, sur du matériel Nvidia. Alors pourquoi le feraient-ils sur du matériel Intel ? Comme il faut aussi modifier les applis, cela semble manifestement difficile dès le départ
Je ne suis pas spécialiste du domaine, mais est-ce que je rate quelque chose ? Si l’industrie x86 veut s’éloigner de ce que fournit Nvidia, Intel doit, d’une manière ou d’une autre, cocher une case correspondant à « meilleur »
Au lieu de cela, elle a construit au-dessus de CUDA et se plaint que les autres fabricants de matériel n’aient pas CUDA
À mon avis, c’est parce qu’OpenCL était le sous-ensemble commun sur lequel plusieurs entreprises pouvaient s’accorder comme étant implémentable. J’ai écrit du code compilable à la fois en CUDA, OpenCL, C++ et OpenMP, et c’était sans cesse la même répétition : « quoi, OpenCL ne peut même pas faire ça ? Bon sang »
J’aimerais que quelqu’un qui connaît bien le domaine de l’IA explique ce qu’est le vrai moat de CUDA
Il est évident pour tout le monde que ce n’est pas le matériel, mais le logiciel, c’est-à-dire l’écosystème CUDA
J’ai un peu touché au machine learning par le passé, mais au niveau de l’entraînement et de l’ajustement de modèles, j’utilisais des bibliothèques de haut niveau et, à ma connaissance, ces bibliothèques décidaient simplement avec des
ifquel backend utiliserDonc, en supposant qu’Intel et d’autres implémentent un concurrent pratique, ai-je tort de penser que la transition serait fluide pour beaucoup d’utilisateurs ? Peut-être pas pour les chercheurs ou ceux qui repoussent les limites, mais pour la plupart des entreprises, le coût de migration ne me semble pas énorme
Ces produits étaient pourtant fabriqués par de grandes entreprises américaines. Elles ne cherchaient pas à transformer le PC en produit de commodité généraliste, elles voulaient une petite part d’un grand marché
Les vrais clones de PC, c’est-à-dire les remplacements parfaitement interchangeables, ont été fabriqués à Taïwan et ont dominé le marché. Les grandes entreprises ne veulent pas d’un marché banalisé, aux prix bas, où tout le monde se bat sur un pied d’égalité. Une « transition fluide » conduit précisément à ce résultat, et c’est pour cela que ces entreprises ne la créent pas
Bien sûr, ce n’est pas aussi facile à faire qu’à dire. Même le TPU de Google a encore du mal à égaler le H100 en opérations flottantes par dollar, et son utilisation est assez pénible si l’on n’utilise pas Jax
Les concurrents, en particulier Intel, semblent vouloir entrer sur le marché avec une approche top-down. Ils essaient d’obtenir une partie du marché de l’inférence avec du matériel de traitement séquentiel et s’appuient en fait sur les innovations qui se produisent chez Nvidia. CUDA aura toujours un coup d’avance
Dans l’entraînement de LLM à grande échelle, CUDA n’est pas un moat important. On le voit avec Anthropic, qui est passé de CUDA à Trainium. Ils ont probablement réécrit tous les kernels pour Trainium
On n’a pas vraiment l’impression que les gens veuillent s’éloigner de CUDA. Ces derniers mois, j’ai regardé plusieurs modèles et outils, et la plupart ressemblent à peu près à ça
device = "cuda" if torch.cuda.is_available() else "cpu"Je n’ai encore rien vu qui implémente le middleware de réseaux de neurones d’AMD : https://www.amd.com/en/developer/zendnn.html
cudaafin que ROCm ressemble à CUDA lors des vérifications de fonctionnalitésIls veulent rendre la transition fluide, et comme le code existant vérifie souvent la présence de CUDA, ils font le nécessaire pour que ce code fonctionne
La manière raisonnable de briser le cercle serait qu’AMD contribue activement du code, des tests et des installations simples qui “marchent tout de suite” aux grands projets populaires pour y ajouter le support d’AMD, puis vende davantage de matériel par la suite. Mais je ne vois pas AMD faire ça
Donc, même avec un GPU AMD, quelque chose comme
device = "cuda"fonctionne avec la même significationIntel n’a rien fait ces dix dernières années. Ils ont gaspillé des milliards de dollars dans des GPU qui fonctionnent à peine, et se sont appuyés sur leur monopole CPU pour ralentir l’innovation tout en extrayant des profits
Au moins, Nvidia a créé quelque chose qui aide les progrès de l’IA, et son pari audacieux a réussi
Pat Gelsinger et Lisa Su semblent tous deux ne rien comprendre au logiciel, et même incapables de déléguer. Ils attendent de la “communauté” qu’elle écrive le logiciel pour leur matériel extrêmement complexe
La présentation de Bill Daly chez Nvidia [1] montre qu’ils ont fait progresser matériel et logiciel ensemble. Le modèle de programmation CUDA était un immense pari pris il y a longtemps, et ils ont légitimement gagné dans le machine learning/l’IA
Si Intel et AMD ne changent pas radicalement, la partie est terminée. Ils perdront face à ARM et Nvidia
[1] https://www.youtube.com/watch?v=kLiwvnr4L80
C’est bien plus difficile que ce que les gens disent
Le bateau a déjà appareillé il y a 10 ans. À l’époque, je m’étais inscrit à un cours universitaire de calcul généraliste sur GPU, probablement intitulé quelque chose comme “programmation parallèle hétérogène”, et ce n’est qu’au premier cours que j’ai appris que tout le matériel et les supports avaient été fournis gratuitement par NVIDIA
Au final, c’était un cours purement CUDA, sans aucune mention d’alternative, comme les anciens cours universitaires sur Word et Excel
Nvidia est vraiment douée pour créer ou acheter des douves
Avec PhysX, sans GPU Nvidia, même sur un CPU compatible SSE, on tombait sur un chemin lent FPU non optimisé : https://arstechnica.com/gaming/2010/07/did-nvidia-cripple-it... https://www.realworldtech.com/physx87/3/ « Du point de vue de Nvidia, utiliser les instructions x87 et un seul thread pour réduire les performances CPU de base rend le GPU plus attrayant »
Le programme “The Way It’s Meant To Be Played” payait les studios pour désavantager directement AMD. Le retrait du patch DX10.1 par Ubisoft en est un exemple : https://techreport.com/news/14707/ubisoft-comments-on-assass...
Avec le programme “GameWorks”, ils sont allés encore plus loin en payant des studios de jeux pour intégrer directement dans leurs jeux les bibliothèques Nvidia qui dégradent les performances : https://techreport.com/review/21404/crysis-2-tessellation-to... https://arstechnica.com/gaming/2015/05/amd-says-nvidias-game... https://wccftech.com/fight-nvidias-gameworks-continues-amd-c...
Je comprends tout à fait que NVIDIA ait intérêt à maintenir la domination de CUDA, et je comprends aussi que, dans ces conditions de marché, d’autres entreprises comme AMD et Intel aient raté le coche
Cela dit, il vaut la peine de rappeler que lorsque ce type de fossé technique et fonctionnel maintient, dans certains cas d’usage, un monopole de fait, au final ce sont les consommateurs qui y perdent
CUDA ne sert pas seulement à l’IA, mais aussi à la physique, à la modélisation numérique, à la cryptographie, à la biologie, etc. Nvidia a construit sa plateforme en identifiant des milliers de cas d’usage et en écoutant ses clients, et l’IA est devenue une énorme source de revenus
Le problème, c’est qu’Intel et AMD risquent fort de continuer à ne regarder que la manne de « l’IA » et à ignorer le reste de la plateforme, y compris le débogage, les compilateurs, l’intégration des langages, les interfaces graphiques et les corrections de bugs
Si Intel disait : « Nous allons investir des milliards de dollars dans OpenCL pour garantir une expérience développeur et une plateforme de tout premier ordre, et éliminer CUDA », ce serait enthousiasmant. Mais ce qu’on lit aujourd’hui ressemble plutôt à : « Nous allons remplacer quelques appels de fonctions CUDA dans PyTorch ». Ce sera amusant seulement jusqu’au moment où, en devant déboguer un problème de performances, on réalisera qu’au lieu de discuter directement avec un ingénieur CUDA sur GitHub, il faudra envoyer un e-mail à une liste de diffusion Intel morte
De ce point de vue, CUDA est un grand bénéfice pour les consommateurs. Parce que les alternatives sont vraiment médiocres