De [GeForce] à l'intelligence artificielle [AI] : pourquoi la décision de [NVIDIA] sur [CUDA] a-t-elle changé l'avenir de l'entreprise ?

Introduction : peut-on renoncer aux bénéfices d'aujourd'hui pour construire l'informatique de demain ?
Une entreprise dépense beaucoup pour une capacité que ses clients ne réclament pas immédiatement. Son ajout augmente le coût de production, mais les clients ne veulent pas payer davantage. Pourtant, l'entreprise ne recule pas. Elle ne cherche pas seulement à vendre un nouveau produit : elle veut construire une plateforme informatique [Computing Platform] sur laquelle d'autres pourront créer leurs propres réalisations.
Voilà la logique de la décision de [NVIDIA] d'intégrer [CUDA] aux processeurs graphiques [GPU] [GeForce]. Jensen Huang explique que cette décision n'a pas apporté de succès immédiat. Elle a entraîné des coûts, une pression sur les bénéfices et une longue attente. Elle est néanmoins devenue ensuite l'un des fondements de l'essor de l'apprentissage profond [Deep Learning].
1. D'un accélérateur spécialisé à une plateforme informatique [Computing Platform] plus large
Au départ, [NVIDIA] accélérait une tâche précise. Cette spécialisation faisait sa force. Mais dépendre d'un marché étroit pouvait aussi limiter ses capacités de recherche et développement [Research and Development].
Une tension existait : une conception très spécialisée pouvait rendre les tâches informatiques plus générales difficiles. Vouloir tout faire risquait, à l'inverse, de faire perdre l'avantage initial. L'approche de Huang consistait à avancer progressivement entre ces deux exigences.
Il présente le nuanceur de pixels programmable [Programmable Pixel Shader] comme une première étape. Le calcul à virgule flottante sur 32 bits compatible IEEE [IEEE-compatible FP32] a ensuite été introduit dans les nuanceurs [Shaders]. Les chercheurs ont alors envisagé d'utiliser un processeur graphique pour d'autres calculs.
Puis est arrivé [Cg], fondé sur le langage de programmation (C). Ce parcours a finalement conduit à [CUDA]. Il ne s'agissait donc pas d'une solution magique apparue en un jour, mais d'une progression reliant chaque capacité technique à la suivante.
2. La diffusion de [CUDA] comptait davantage que sa seule création
Créer une excellente technologie ne suffit pas pour qu'elle soit utilisée. Il faut des développeurs [Developers] pour écrire les programmes, mais aussi une population suffisamment nombreuse pour les utiliser.
La force d'une plateforme informatique [Computing Platform] tient à l'élégance de sa conception, mais aussi au nombre de personnes qui la possèdent déjà. Huang souligne ainsi l'importance du parc installé [Installed Base].
Il cite l'architecture [x86], qui a résisté grâce à sa large adoption malgré de nombreuses critiques. Certaines architectures à jeu d'instructions réduit [RISC Architectures], pourtant élégantes, n'ont pas obtenu le succès attendu, explique-t-il. Cela ne signifie pas que toutes les conceptions [RISC] ont échoué : l'élégance technique ne garantit pas, à elle seule, le succès d'une plateforme.
À cette époque, [GeForce] se vendait déjà à des millions d'exemplaires par an. [NVIDIA] disposait donc d'un canal établi pour diffuser une nouvelle capacité de calcul.
3. [CUDA] dans chaque processeur [GeForce] : des fondations posées avant la demande
La capacité [CUDA] aurait pu rester réservée à quelques machines de recherche coûteuses. Moins de personnes auraient alors pu y accéder.
L'entreprise a plutôt choisi de l'introduire, grâce à [GeForce], dans les ordinateurs personnels [PC] largement disponibles. Un produit acheté pour jouer offrait aussi une possibilité de recherche. Un étudiant, un laboratoire universitaire ou un chercheur assemblant son propre ordinateur pouvait essayer de nouveaux calculs avec le matériel à sa disposition.
Cela ne veut pas dire que [CUDA] fonctionnait sur tous les ordinateurs. Le parc installé [GeForce] constituait un point de départ pour rendre cette capacité accessible à davantage de personnes.
Huang précise que l'effort ne s'arrêtait pas au matériel : il comprenait l'enseignement dans les universités, la rédaction de livres et l'organisation de cours. Construire une plateforme exige aussi de développer les connaissances et la communauté capables de l'utiliser.
4. Le prix immédiat : hausse des coûts et pression sur les bénéfices
Le poids économique était considérable. Huang se souvient que l'ajout de [CUDA] avait augmenté le coût du processeur d'environ 50 %, alors que l'entreprise affichait une marge brute [Gross Margin] d'environ 35 %.
Les joueurs ne paieraient pas davantage pour une capacité de calcul inutilisée. L'entreprise devait donc en absorber le coût. Selon lui, celui-ci était assez élevé pour engloutir la totalité du bénéfice brut en valeur absolue [Gross Profit Dollars].
On ne peut pas simplement soustraire ces deux pourcentages pour déterminer la situation financière. Le premier porte sur le coût de production, le second sur une marge calculée à partir du chiffre d'affaires. Huang décrit moins une opération arithmétique que la difficulté de sacrifier les revenus présents pour la plateforme future.
Il évoque aussi, approximativement, une capitalisation boursière [Market Capitalisation] de 6 à 8 milliards de dollars américains à l'époque, puis d'environ 1,5 milliard. Ce sont ses estimations rétrospectives. Elles ne permettent pas d'attribuer l'intégralité de cette baisse au seul [CUDA].
Son observation selon laquelle le bénéfice attendu a mis environ une décennie à se concrétiser reste importante. Cette décision ne visait pas les résultats du trimestre suivant.
5. Pourquoi cette décision a-t-elle préparé l'apprentissage profond [Deep Learning] ?
Le coût et la difficulté d'accès au matériel constituent un obstacle à la recherche. Pouvoir commencer une nouvelle expérience avec des équipements déjà répandus réduit une partie de cet obstacle.
Diffusé par [GeForce], [CUDA] a permis aux chercheurs d'expérimenter dans un environnement de programmation commun [Programming Environment]. Les connaissances, les programmes et l'expérience ainsi acquis pouvaient servir aux travaux suivants.
Lorsque l'apprentissage profond [Deep Learning] s'est développé, les outils adaptés à son calcul parallèle massif [Parallel Computing], ainsi que les personnes sachant les utiliser, existaient déjà. C'était un avantage important.
L'histoire entière de l'apprentissage profond [Deep Learning] ne dépend pas d'une seule entreprise ou d'un seul outil. Mais cette décision a contribué à rendre largement disponible la plateforme nécessaire. D'où l'idée soulignée par Huang : [NVIDIA] est la maison construite par [GeForce].
6. La confiance construite avant la décision technique
Un dirigeant peut avoir une vision claire de l'avenir. Cela ne suffit pas si le conseil d'administration, les cadres, les salariés, les clients et les partenaires n'y adhèrent pas.
Huang décrit une explication progressive des liens de cause à effet. À chaque nouvelle information, avancée scientifique ou réalisation d'ingénierie, il explique à son entourage le rapport avec l'orientation future.
Selon lui, l'annonce d'une décision majeure ne devrait pas surprendre tout le monde. Les fondations devraient être si bien préparées que chacun se demande plutôt pourquoi cela a pris autant de temps.
Cette confiance à long terme et cette patience accompagnaient aussi la décision [CUDA]. En choisissant une trajectoire technique, il fallait préparer l'entreprise qui en supporterait le coût.
7. Une plateforme sur laquelle les partenaires peuvent construire, pas seulement un produit
La manière dont [NVIDIA] se considère comme une entreprise de plateforme informatique [Platform Company] importe aussi. Elle consiste à laisser d'autres entreprises contribuer et créer ensemble à chaque couche.
Cela ne signifie pas que tous ses programmes sont distribués en code source ouvert [Open Source]. Permettre aux partenaires de créer ensemble est différent de rendre le code source public.
Une bonne plateforme grandit grâce à son créateur, mais aussi aux applications que les chercheurs, programmeurs, entreprises et établissements d'enseignement y développent. La décision [CUDA] a ouvert la voie à cette croissance.
8. La leçon actuelle : accélérer un processeur ne suffit pas
Dans les grandes charges de travail distribuées [Distributed Workloads], accélérer une seule partie n'accélère pas l'ensemble dans la même proportion. La loi d'Amdahl [Amdahl's Law] l'explique.
Supposons que seule la moitié du temps nécessaire à une tâche puisse être améliorée. Quelle que soit son accélération, l'autre moitié reste inchangée. Même si la partie améliorée ne prend plus aucun temps, la vitesse globale ne peut être multipliée que par deux au maximum.
Il faut donc concevoir ensemble le processeur graphique [GPU], le processeur central [CPU], le réseau [Networking], la mémoire [Memory], l'alimentation électrique [Power] et le refroidissement [Cooling]. Huang parle de co-conception extrême [Extreme Co-design].
On retrouve la continuité avec la décision initiale [CUDA]. La capacité d'un outil isolé ne suffit pas : tout son environnement d'utilisation doit progresser avec lui.
Conclusion : une décision qui a créé les usages futurs
L'importance de [CUDA] dépasse l'arrivée d'une nouvelle capacité de programmation. Elle réside surtout dans son association avec [GeForce], déjà vendu en grandes quantités, afin de la placer en avance entre les mains de ses futurs utilisateurs.
Considérée uniquement sous l'angle des coûts de l'époque, cette décision pouvait sembler erronée. Mais [NVIDIA] comprenait que la valeur d'une plateforme informatique dépend aussi des applications que d'autres y créeront.
Technologie, adoption étendue, formation, communauté de développeurs et patience de l'entreprise ont créé ensemble une nouvelle possibilité. Celle-ci a ensuite rejoint l'essor de l'intelligence artificielle [AI]. La leçon de [CUDA] est la suivante : les grandes transformations de demain nécessitent aujourd'hui des fondations sur lesquelles beaucoup peuvent construire.
Powered By K7
