Age of Nvidia

image

Apparemment, l'ère de l'informatique GPU est arrivée! Intel se porte mal. Si vous n'avez pas lu mon blog assez régulièrement ces dernières années, je vous expliquerai que [ Alex St. John ] suis à l'origine de l'équipe DirectX d'origine de Microsoft en 1994 et que j'ai créé l'API Direct3D avec d'autres premiers créateurs de DirectX (Craig Eisler et Eric Engstrom) et a contribué à sa distribution dans l'industrie du jeu vidéo et auprès des fabricants de puces graphiques. Sur ce sujet dans mon blog, vous pouvez trouver de nombreuses histoires, mais celle qui est directement liée à ce post, j'ai écrit en 2013.
Histoire de Nvidia

Je pense que la version des futurs jeux de Nvidia est correcte, et j'aime vraiment vivre à une époque où je peux travailler avec des capacités informatiques incroyables. Il me semble que j'ai vécu à une époque où je peux marcher le long du pont Enterprise et jouer avec le Warp Drive. Et littéralement - Nvidia appelle la chaîne l'unité minimale de processus parallèles pouvant être exécutés sur le GPU.

Ceux qui suivent les cotations boursières ont peut-être remarqué que les actions de Nvidia ont récemment fortement augmenté après de nombreuses années de lente montée. Il me semble que cette percée soudaine annonce un changement révolutionnaire dans l'informatique, représentant l'aboutissement de nombreuses années de progrès dans le développement de GPGPU . À ce jour, Intel a maintenu le monopole de l'informatique sur le marché industriel, repoussant avec succès les attaques des concurrents sur leur supériorité dans l'informatique industrielle. Cette domination a pris fin cette année, et le marché la voit approcher. Pour comprendre ce qui se passe et pourquoi cela se produit, je vais revenir à mes premières années chez Microsoft.

Dans les années 90, Bill Gates a inventé le terme «coopération» [coopération = concurrence + coopération] pour décrire des partenariats compétitifs torturés avec d'autres leaders de l'industrie technologique de l'époque. Quand on parle d'Intel, le terme apparaît particulièrement souvent. Et tandis que les destins et le succès de Microsoft et d'Intel se mêlaient de plus en plus étroitement, les deux sociétés se sont constamment battues pour la domination. Les deux sociétés avaient des équipes de personnes qui se sont «spécialisées» pour essayer de prendre un avantage sur leurs rivales. Paul Maritz, qui était alors PDG de Microsoft, était très inquiet qu'Intel puisse essayer de virtualiser Windows, permettant à de nombreux autres OS concurrents d'entrer sur le marché et d'exister sur un PC de bureau en parallèle avec Windows. Fait intéressant, Paul Maritz est devenu plus tard PDG de VMWARE. En effet, Intel a activement investi dans de telles tentatives. L'une de leurs stratégies était de tenter d'imiter au niveau logiciel toutes les fonctionnalités de fer généralement acceptées, avec lesquelles les OEM fournissaient généralement des PC - cartes vidéo, modems, cartes son, équipements réseau, etc. En transférant toute l'informatique externe au processeur Intel, la société pourrait détruire les ventes et la croissance de toutes les plates-formes informatiques alternatives qui pourraient autrement se développer, menaçant le processeur d'Intel. Plus précisément, l'annonce par Intel de la technologie 3DR en 1994 a incité Microsoft à créer DirectX.

J'ai travaillé pour l'équipe de Microsoft, responsable du positionnement stratégique de l'entreprise face aux menaces concurrentielles du marché, le «Developer Relations Group» [DRG]. Intel a exigé que Microsoft envoie un représentant pour prendre la parole lors de la présentation 3DR. En tant qu'expert en graphisme et en 3D chez Microsoft, j'ai été envoyé avec une mission spéciale pour évaluer la menace que la nouvelle initiative d'Intel pourrait potentiellement poser et pour formuler une stratégie efficace pour y faire face. J'ai décidé qu'Intel essayait vraiment de virtualiser Windows, en émulant au niveau logiciel tous les appareils de traitement de données possibles. J'ai écrit une proposition intitulée «prendre le divertissement au sérieux», dans laquelle je proposais de bloquer les tentatives d'Intel de réduire la taille de Windows pour créer un marché de consommation concurrentiel pour les nouvelles fonctionnalités matérielles. Je voulais créer un nouvel ensemble de pilotes Windows qui a permis une concurrence massive sur le marché du matériel, afin que le travail des nouveaux médias, y compris l'audio, la saisie de données, la vidéo, les technologies de réseau, etc. sur le marché des jeux PC que nous créons, dépendait de nos propres pilotes Windows. Intel ne pouvait pas faire face à la concurrence sur le marché libre que nous avons créée pour les entreprises produisant du fer de consommation et ne pouvait donc pas créer un processeur capable de virtualiser efficacement toutes les fonctionnalités dont les utilisateurs pourraient avoir besoin. Et c'est ainsi que DirectX est né.

Sur ce blog, vous trouverez de nombreuses histoires sur les événements entourant la création de DirectX, mais en bref, notre «stratégie maléfique» a été un succès. Microsoft s'est rendu compte que pour dominer le marché grand public et contenir Intel, il fallait se concentrer sur les jeux vidéo, après quoi des dizaines de fabricants de puces 3D sont apparus. Vingt ans plus tard, parmi le petit nombre de survivants, Nvidia, avec ATI, acquise depuis par AMD, a dominé le marché des graphiques grand public et, plus récemment, le marché de l'informatique industrielle.

Cela nous ramène à l'année en cours de 2017, lorsque le GPU commence enfin à supplanter complètement les processeurs x86, que tout le monde traitait avec admiration. Pourquoi maintenant et pourquoi le GPU? Le secret de l'hégémonie x86 était le succès de Windows et la rétrocompatibilité avec les instructions x86 jusqu'aux années 1970. Intel pourrait maintenir et accroître son monopole sur le marché industriel, car le coût de portage des applications vers un CPU avec tout autre jeu d'instructions, n'occupant aucune niche de marché, était trop élevé. L'ensemble phénoménal de fonctionnalités du système d'exploitation Windows lié à la plate-forme x86 a renforcé la position d'Intel sur le marché. Le début de la fin est survenu lorsque Microsoft et Intel, ensemble, n'ont pas réussi à franchir le pas vers la domination du marché émergent de l'informatique mobile. Pour la première fois depuis plusieurs décennies, une fissure est apparue sur le marché des processeurs x86, qui était remplie par des processeurs ARM, après quoi de nouveaux systèmes d'exploitation Windows alternatifs d'Apple et de Google ont réussi à conquérir un nouveau marché. Pourquoi Microsoft et Intel n'ont-ils pas fait ce saut? Vous pouvez trouver une voiture pour des raisons intéressantes, mais dans le cadre de cet article, je voudrais souligner une chose - les bagages à compatibilité descendante x86. Pour la première fois, l'efficacité énergétique est devenue plus importante pour le succès du processeur que la vitesse. Tous les transistors et tous les millions de lignes de code pour x86 intégrés par Intel et Microsoft dans les PC sont devenus des obstacles à l'efficacité énergétique. L'aspect le plus important de l'hégémonie du marché d'Intel et de Microsoft est devenu à un moment donné un obstacle.

image

Le besoin d'Intel d'une augmentation constante de la vitesse et de la prise en charge de la compatibilité descendante a obligé la société à dépenser de plus en plus de transistors énergivores pour obtenir des gains de vitesse sans cesse décroissants dans chaque nouvelle génération de processeurs x86. La rétrocompatibilité a également sérieusement entravé la capacité d'Intel à paralléliser ses puces. Le premier GPU parallèle est apparu dans les années 90, et les premiers processeurs Intel dual-core n'ont été lancés qu'en 2005. Même aujourd'hui, le processeur Intel le plus puissant ne peut gérer que 24 cœurs, bien que la plupart des cartes graphiques modernes aient des processeurs avec des milliers de cœurs. Les GPU qui étaient à l'origine parallèles ne transportaient pas de bagages de compatibilité descendante, et grâce à des technologies indépendantes de l'architecture, les API comme Direct3D et OpenGL étaient libres d'innover et d'augmenter le parallélisme sans avoir à compromettre la compatibilité ou l'efficacité des transistors. En 2005, les GPU étaient même devenus des plates-formes informatiques à usage général prenant en charge le calcul parallèle à usage général hétérogène. Par hétérogénéité, je veux dire que les puces d'AMD et de NVIDIA peuvent exécuter les mêmes programmes compilés, malgré l'architecture de bas niveau complètement différente et l'ensemble d'instructions. Et à une époque où les puces d'Intel atteignaient des pointes de performances décroissantes, le GPU doublait sa vitesse tous les 12 mois, tout en réduisant de moitié la consommation d'énergie! Une parallélisation extrême a permis d'utiliser les transistors de manière très efficace, offrant à chaque transistor successif ajouté au GPU la capacité d'influencer efficacement la vitesse de fonctionnement, tandis qu'un nombre croissant de transistors x86 en nombre croissant n'étaient pas occupés.

Bien que les GPU envahissent de plus en plus les superordinateurs industriels, les médias et les VDI, le tournant principal du marché est venu lorsque Google a commencé à utiliser efficacement les GPU pour former des réseaux de neurones capables de choses très utiles. Le marché s'est rendu compte que l'IA serait l'avenir du traitement des mégadonnées et ouvrirait d'énormes marchés d'automatisation. Les GPU étaient parfaitement adaptés au fonctionnement des réseaux de neurones. Jusqu'à présent, Intel s'est appuyé avec succès sur deux approches qui ont supprimé l'influence croissante du GPU sur l'informatique industrielle.

1. Intel a maintenu la vitesse du bus PCI faible et limité le nombre de chemins d'E / S pris en charge par leur processeur, garantissant ainsi que les GPU dépendraient toujours des processeurs Intel pour traiter leur charge et resteraient séparés des diverses applications informatiques à grande vitesse en temps réel de En raison de retards et de limitations de bande passante PCI. Alors que leur CPU était en mesure de limiter l'accès des applications à la vitesse du GPU, Nvidia languissait à cette extrémité du bus PCI sans accès à de nombreuses charges industrielles pratiquement utiles.
2. Fourni un GPU bon marché avec des fonctionnalités minimales sur le processeur grand public pour isoler Nvidia et AMD du marché des jeux premium et de l'acceptation générale par le marché.

La menace croissante de Nvidia et les tentatives infructueuses d'Intel de créer des accélérateurs de superordinateurs compatibles x86 ont forcé Intel à choisir une tactique différente. Ils ont acquis Altera et souhaitent inclure des FPGA programmables dans la prochaine génération de processeurs d'Intel. Il s'agit d'un moyen délicat de s'assurer que le processeur Intel prend en charge de plus grandes capacités d'E / S par rapport au matériel de bus PCI limité de ses concurrents, et que le GPU n'obtient aucun avantage. La prise en charge des FPGA a permis à Intel d'aller dans le sens de la prise en charge du calcul parallèle sur leurs puces, sans entrer dans les portes du marché en croissance pour les applications utilisant des GPU. Il a également permis aux fabricants d'ordinateurs industriels de créer du matériel hautement spécialisé, toujours dépendant de x86. C'était une décision brillante de la part d'Intel, car elle excluait la possibilité pour le GPU d'entrer sur le marché industriel dans plusieurs directions à la fois. Brillant, mais très probablement voué à l'échec.

Cinq nouvelles consécutives expliquent pourquoi je suis sûr que la fête x86 se terminera en 2017.

1. Le Fonds VisionFund de SoftBank obtient un investissement de 93 milliards de dollars de sociétés souhaitant remplacer Intel
2. SoftBank a acheté ARM Holdings pour 32 milliards de dollars
3. SoftBank a acheté des actions de Nvidia pour 4 milliards de dollars
4. Nvidia lance le projet Denver [nom de code pour la microarchitecture Nvidia qui implémente le jeu d'instructions ARMv8-A 64/32 bits en utilisant une combinaison d'un décodeur matériel simple et d'un traducteur binaire logiciel avec recompilation dynamique / env. perev.]
5. NVIDIA a annoncé le Xavier Tegra SOC avec un GPU Volta avec 7 milliards de transistors, 512 cœurs CUDA et 8 cœurs personnalisés ARM64 - une puce ARM / hybride mobile avec des cœurs ARM accélérés par GPU.

Pourquoi cette séquence d'événements est-elle importante? C'est cette année que la première génération de GPU indépendants est entrée sur le marché en accès large, et est capable de lancer son propre OS sans obstacles sous forme de PCI. Nvidia n'a plus besoin d'un processeur x86. ARM dispose d'un nombre impressionnant de systèmes d'exploitation et d'applications grand public et industriels qui leur sont portés. Tous les marchés industriels et cloud passent aux puces d'ARM en tant que contrôleurs pour une large gamme de leurs solutions de marché. Les FPGA sont déjà intégrés aux puces ARM. Les puces ARM consomment peu d'énergie, leurs performances sont inférieures, mais les GPU sont extrêmement rapides et efficaces, de sorte que les GPU peuvent fournir la puissance du processeur, et les cœurs ARM peuvent gérer des opérations d'E / S et d'interface utilisateur fastidieuses qui ne nécessitent pas de puissance de traitement. Un nombre croissant d'applications fonctionnant avec les mégadonnées, l'informatique hautes performances, l'apprentissage automatique n'ont plus besoin de Windows et ne fonctionnent pas sur x86. 2017 est l'année où Nvidia brise la laisse et devient une alternative compétitive vraiment viable à l'informatique industrielle basée sur x86 dans de nouveaux marchés précieux qui ne sont pas adaptés aux solutions basées sur x86.

Si le processeur ARM n'est pas assez puissant pour vos besoins, IBM, en collaboration avec Nvidia, va produire une nouvelle génération de processeurs Power9 pour le traitement de grandes données fonctionnant avec 160 voies PCIe.



AMD lance également un nouveau processeur Ryzen , et contrairement à Intel, AMD n'a aucun intérêt stratégique à étouffer les performances PCI. Leurs puces grand public prennent en charge 64 voies PCIe 3.0 et les puces professionnelles en prennent en charge 128. AMD lance également un nouveau compilateur croisé HIP qui rend les applications CUDA compatibles avec les GPU AMD. Malgré le fait que ces deux sociétés sont en concurrence, elles bénéficieront toutes deux du déplacement d'Intel sur le marché industriel avec des approches alternatives au calcul GPU.

Tout cela signifie que dans les années à venir, les solutions basées sur GPU captureront l'informatique industrielle à une vitesse croissante, et le monde des interfaces de bureau s'appuiera de plus en plus sur la visualisation cloud ou fonctionnera sur des processeurs ARM mobiles, puisque même Microsoft a annoncé la prise en charge d'ARM .



Dans l'ensemble, je prédis que dans quelques années, nous n'entendrons parler que de la bataille entre le GPU et le FPGA pour un avantage dans l'informatique industrielle, tandis que l'ère du CPU prendra progressivement fin.

Source: https://habr.com/ru/post/fr405409/


All Articles