Recherche de site Web

La rareté de Neural Magic, Hopper de Nvidia et le réseau d'Alibaba parmi les premières dans les derniers benchmarks MLPerf AI


Les derniers tests de référence de puces pour l’IA ont montré de nouvelles approches pour faire face à une échelle toujours plus grande, y compris des grappes de machines et la rareté, l’élagage des réseaux neuronaux pour les rendre plus efficaces.

Le Hopper de Nvidia, sa dernière génération de conception de GPU, est apparu dans les tests de référence MLPerf du matériel de réseau neuronal. La puce a montré des scores admirables, avec un système à puce unique surpassant certains systèmes qui utilisaient plusieurs puces de la variété la plus ancienne, l’A100. 

De plus en plus, la tendance des formes d’apprentissage automatique de l’intelligence artificielle est vers des réseaux neuronaux de plus en plus grands. Les plus grands réseaux neuronaux, tels que le modèle de langage Pathways de Google, mesurés par leurs paramètres, ou « poids », comptent plus d'un demi-billion de poids, où chaque poids supplémentaire augmente la puissance de calcul utilisée.

Comment faut-il faire face à cette augmentation de la taille ? Avec des puces plus puissantes, d’une part, mais aussi en mettant une partie des logiciels au régime. 

Jeudi, le dernier test de référence de la vitesse à laquelle un réseau neuronal peut être exécuté pour faire des prédictions a été présenté par MLCommons, le consortium qui exécute les tests MLPerf. Les résultats publiés ont présenté des étapes importantes, notamment les tout premiers résultats de référence pour le GPU « Hopper » de Nvidia, dévoilés en mars.

Dans le même temps, le géant chinois du cloud Alibaba a soumis les premiers résultats jamais publiés pour un groupe entier d’ordinateurs agissant comme une seule machine, épousant les autres soumissions en termes de débit total pouvant être atteint. 

Et une start-up, Neural Magic, a montré comment elle était capable d’utiliser l’élagage, un moyen de couper des parties d’un réseau neuronal, pour obtenir un logiciel plus mince qui peut fonctionner à peu près aussi bien qu’un programme normal, mais avec moins de puissance de calcul nécessaire.

« Nous entraînons tous ces modèles denses et d'une force brute embarrassante », a déclaré Michael Goin, responsable de l'ingénierie produit pour Neural Magic, dans une interview avec ZDNet, faisant référence aux réseaux neuronaux géants tels que Pathways. « Nous savons tous qu'il doit y avoir une meilleure solution. »

Les tests de référence, appelés inférence 2.1, représentent la moitié de l’approche d’apprentissage automatique de l’IA, lorsqu’un réseau neuronal formé reçoit de nouvelles données et doit produire des conclusions en guise de sortie. Le benchmark mesure la vitesse à laquelle un ordinateur peut produire une réponse pour un certain nombre de tâches, y compris ImageNet, où le défi pour le réseau neuronal est d’appliquer l’une des nombreuses étiquettes à une photo décrivant l’objet de la photo, tel qu’un chat ou un chien. 

Les fabricants de puces et de systèmes se font concurrence pour voir dans quelle mesure ils peuvent s’en sortir sur des mesures telles que le nombre de photos traitées en une seule seconde, ou à quel point ils peuvent obtenir une latence, le temps total d’aller-retour pour qu’une demande soit envoyée à l’ordinateur et une prédiction à renvoyer. 

En outre, certains fournisseurs soumettent des résultats de test montrant la consommation d’énergie de leurs machines, un élément de plus en plus important à mesure que les centres de données deviennent de plus en plus grands, consommant de grandes quantités d’énergie.  

L’autre moitié du problème, l’entraînement d’un réseau neuronal, est couverte dans une autre série de résultats de référence que MLCommons rapporte séparément, le dernier cycle ayant eu lieu en juin. 

Le rapport Inference 2.1 fait suite à une précédente série de benchmarks d’inférence en avril. Cette fois-ci, les résultats rapportés ne concernaient que les systèmes informatiques fonctionnant dans des centres de données et la « périphérie », un terme qui en est venu à englober une variété de systèmes informatiques autres que les machines de centre de données traditionnelles. Une feuille de calcul est publiée pour les résultats du centre de données, une autre pour la périphérie.

Le dernier rapport n’incluait pas les résultats pour les appareils à très faible consommation d’énergie connus sous le nom de TinyML et pour les ordinateurs mobiles, qui avaient été regroupés avec les centres de données dans le rapport d’avril. 

Au total, les benchmarks ont reçu 5 300 soumissions de la part des fabricants de puces et de leurs partenaires, ainsi que de startups telles que Neural Magic. C’était près de quarante pour cent de plus que lors du dernier tour, signalé en avril. 

Comme par le passé, Nvidia a obtenu les meilleures notes pour l’accélération de l’inférence dans de nombreuses tâches. Le GPU A100 de Nvidia a dominé le nombre de soumissions, comme c'est souvent le cas, étant intégré aux processeurs d'Intel et d'Advanced Micro Devices dans des systèmes construits par un groupe de partenaires, dont Alibaba, ASUSTeK, Microsoft Azure, Biren, Dell, Fujitsu, GIGABYTE, H3C, Hewlett Packard Enterprise, Inspur, Intel, Krai, Lenovo, OctoML, SAPEON et Supermicro. 

Deux entrées ont été soumises par Nvidia elle-même avec le GPU Hopper, désigné « H100 », dans le segment des centres de données des résultats. Un système était accompagné d’un processeur AMD EPYC en tant que processeur hôte, et un autre était accompagné d’un processeur Intel Xeon. 

Dans les deux cas, il convient de noter que le GPU Hopper, bien qu'il s'agisse d'une puce unique, a obtenu des notes très élevées, surpassant dans de nombreux cas les systèmes avec deux, quatre ou huit puces A100.

Le GPU Hopper devrait être disponible dans le commerce plus tard cette année. Nvidia a déclaré qu’elle prévoyait de mettre à disposition au début de 2023 sa prochaine puce CPU « Grace », qui sera en concurrence avec les processeurs Intel et AMD, et cette partie sera une puce d’accompagnement de Hopper dans les systèmes. 

Aux côtés de Nvidia, le géant des puces mobiles Qualcomm a présenté de nouveaux résultats pour sa puce Cloud AI 100, un nouvel accélérateur conçu pour les tâches d’apprentissage automatique. Qualcomm a ajouté de nouveaux partenaires système ce tour, notamment Dell et Hewlett Packard Enterprise et Lenovo, et a augmenté le nombre total de soumissions à l’aide de sa puce.

Alors que les bras de fer entre les fabricants de puces et les fabricants de systèmes ont tendance à faire les gros titres, un nombre croissant de chercheurs intelligents se présentent chez MLPerf avec de nouvelles approches qui peuvent obtenir plus de performances avec le même matériel. 

Parmi les exemples précédents, citons OctoML, la startup qui tente d’apporter la rigueur de DevOps à l’exécution de l’apprentissage automatique. 

Cette fois-ci, une approche intéressante a été proposée par Neural Magic, une start-up de quatre ans, financée par du capital-risque. La technologie de l'entreprise provient en partie des recherches des fondateurs Nir Shavit, chercheur au MIT, et Alex Matveev, ancien chercheur au MIT et directeur technique de l'entreprise. 

Les travaux indiquent une possible percée dans la réduction de l’informatique nécessaire à un réseau neuronal. 

La technologie de Neural Magic forme un réseau neuronal et trouve quels poids peuvent être laissés inutilisés. Il définit ensuite ces poids à une valeur nulle, de sorte qu’ils ne sont pas traités par la puce informatique. 

Cette approche, appelée élagage, consiste à enlever les branches indésirables d’un arbre. Cependant, cela fait également partie d’une tendance plus large de l’apprentissage profond qui remonte à des décennies, connue sous le nom de « parcimonie ». Dans les approches clairsemées de l’apprentissage automatique, certaines données et certaines parties des programmes peuvent être considérées comme des informations inutiles à des fins pratiques. 

La magie neuronale trouve des moyens de réduire les poids des réseaux neuronaux, les structures tensorielles qui occupent une grande partie des besoins en mémoire et en bande passante d’un réseau neuronal. Le réseau d’origine de couches connectées plusieurs-à-plusieurs est élagué jusqu’à ce qu’il ne reste que certaines connexions, tandis que les autres sont remises à zéro. L’approche de l’élagage fait partie d’un principe plus large de l’apprentissage automatique connu sous le nom de parcimonie. 

Une autre technique, appelée quantification, convertit certains nombres en représentations plus simples. Par exemple, un nombre à virgule flottante de 32 bits peut être compressé en une valeur scalaire de 8 bits, ce qui est plus facile à calculer. 

La technologie Neural Magic agit comme une sorte d’outil de conversion qu’un scientifique des données peut utiliser pour trouver automatiquement les parties de son réseau neuronal qui peuvent être éliminées en toute sécurité sans sacrifier la précision. 

L'avantage, selon le chef de projet de Neural Magic, n'est pas seulement de réduire le nombre de calculs qu'un processeur doit effectuer, mais aussi de réduire la quantité de CPU qui doit sortir de la puce pour se tourner vers une mémoire externe, comme la DRAM, qui ralentit tout. 

« Vous supprimez 90 % des paramètres et vous supprimez 90 % des FLOP dont vous avez besoin », a déclaré Goin de Neural Magic, faisant référence aux « opérations en virgule flottante par seconde », une mesure standard de la vitesse à laquelle un processeur exécute des calculs.  

De plus, « il est très facile pour les processeurs d'obtenir une bande passante mémoire limitée », a déclaré Goin. « Le déplacement de grands tenseurs nécessite beaucoup de bande passante mémoire, ce que les processeurs ne font pas bien », a noté M. Goin. Les tenseurs sont les structures qui organisent les valeurs des poids des réseaux neuronaux et qui doivent être conservées en mémoire. 

Avec l’élagage, le CPU peut avoir des avantages par rapport à un GPU, dit Neural Magic. Sur la gauche, le GPU doit exécuter un réseau neuronal entier, avec tous ses poids, afin de remplir les circuits hautement parallélisés du GPU. À droite, un processeur est capable d’utiliser une mémoire cache L3 abondante sur puce pour exécuter des tenseurs à partir de la mémoire locale, appelés colonnes de tenseurs, sans accéder à la DRAM hors puce.

Neural Magic a soumis des résultats dans les catégories centre de données et périphérie  en utilisant des systèmes équipés de deux puces Intel Xeon 8380 fonctionnant à 2,3 gigahertz. La catégorie choisie par Neural Magic était la catégorie « Ouvert » des centres de données et des edges, où les soumissionnaires sont autorisés à utiliser des approches logicielles uniques qui ne sont pas conformes aux règles standard des benchmarks. 

La société a utilisé son nouveau moteur d’exécution, appelé DeepSparse, pour exécuter une version du réseau neuronal de traitement du langage naturel BERT développé par Google. 

En élaguant le réseau BERT, la taille considérablement réduite des poids pourrait être conservée dans la mémoire locale du processeur plutôt que de passer de la puce à la DRAM. 

Les processeurs modernes disposent d’une mémoire locale volumineuse appelée cache qui peut stocker les valeurs fréquemment utilisées. Le cache de niveau 3 de la plupart des puces de serveur telles que Xeon peut contenir des dizaines de mégaoctets de données. Le logiciel Neural Magic DeepSparse réduit la taille du fichier du programme BERT de 1,3 gigaoctet à seulement 10 mégaoctets. 

« Maintenant que les poids peuvent être assez faibles, vous pouvez les intégrer dans les caches et plus précisément, intégrer plusieurs opérations dans ces différents niveaux de cache, pour obtenir une bande passante mémoire plus efficace au lieu d’être coincé dans la DRAM », a déclaré Goin à ZDNet.

Le programme DeepSparse a montré un nombre considérablement plus élevé de requêtes traitées par seconde que la plupart des systèmes standard. 

Par rapport aux résultats de la version « fermée » du test du centre de données ResNet, où des règles logicielles strictes sont suivies, le processeur Intel unique de Neural Magic a surpassé de nombreuses soumissions avec plusieurs accélérateurs Nvidia, y compris de Hewlett Packard Enterprise et de Nvidia lui-même. 

Dans une comparaison plus représentative, un serveur Dell PowerEdge avec deux Intel Xeon n’a traité que 47,09 requêtes par seconde, tandis que l’une des machines Neural Magic a pu produire 928,6 requêtes par seconde, soit une accélération d’un ordre de grandeur. 

Le système Intel Xeon de Neural Magic a obtenu des résultats d'un ordre de grandeur plus rapide qu'un système Dell au même niveau de précision, bien que 60 % des poids du réseau neuronal BERT aient été remis à zéro. 

La version de BERT utilisée par DeepSparse de Neural Magic a eu 60 % des poids supprimés, avec dix de ses couches de neurones artificiels remises à zéro, n'en laissant que 14, alors que l'ordinateur Dell travaillait sur la version standard, intacte. Néanmoins, la machine Neural Magic produisait toujours des prédictions qui se situaient à moins de 1 % de la mesure de précision standard de 99 % pour les prédictions.

Neural Magic a décrit sa capacité à élaguer le programme de traitement du langage naturel BERT à divers degrés de parcimonie.

Neural Magic a publié son propre article de blog décrivant l’exploit.

Le travail de Neural Magic a de vastes implications pour l'IA et pour la communauté des puces. Si les réseaux neuronaux peuvent être réglés pour être moins gourmands en ressources, cela pourrait fournir un moyen d’endiguer le budget énergétique toujours croissant de l’apprentissage automatique.

« Lorsque vous pensez au coût réel du déploiement d'une boîte pour faire de l'inférence, il y a beaucoup à faire sur le moteur d'exécution, mais il y a encore plus à faire en termes de communauté d'apprentissage automatique, en termes de fourniture aux ingénieurs ML et aux scientifiques des données de plus d'outils pour optimiser leurs modèles. " a déclaré Goin à ZDNet.

« Nous avons une grande feuille de route », a déclaré M. Goin. « Nous voulons ouvrir l’optimisation à un plus grand nombre de personnes. » 

« Si nous pouvons élaguer un modèle à 95 % de son poids, pourquoi tout le monde ne le fait-il pas ? », a déclaré Goin. 

La rareté, a déclaré Goin, « va être comme une quantification, ce sera quelque chose que tout le monde ramasse, nous sommes juste à la limite ». 

Pour l’industrie des puces, le fait que Neural Magic ait pu montrer les avantages des puces X86 signifie que de nombreux autres types d’approches de puces pourraient être viables à la fois pour l’inférence et l’entraînement. Plus tôt cette année, Neural Magic s'est associé à Advanced Micro Devices, le plus grand concurrent d'Intel pour les processeurs x86, montrant que le travail ne se limite pas aux puces de marque Intel.

Les scientifiques d’Intel se sont même tournés vers la magie neuronale l’année dernière lorsqu’ils ont entrepris de produire des modèles élagués de BERT. Dans un article d’Ofir Zafrir et de ses collègues d’Intel Labs en Israël, l’approche de la magie neuronale, appelée « Gradual Magnitude Pruning », a été combinée à une approche d’Intel appelée « Learning Rate Rewinding ». La combinaison des deux a entraîné une perte minimale de précision, ont rapporté les auteurs.

Goin s’attend à ce que Neural Magic ajoute des systèmes basés sur ARM à l’avenir. « J'adorerais pouvoir faire une soumission MLPerf directement à partir de ce MacBook Pro ici », a déclaré Goin, faisant référence au silicium de la série M du Mac, qui utilise le jeu d'instructions ARM.

Neural Magic, qui compte actuellement près de 40 personnes, a levé l’année dernière 30 millions de dollars en capital-risque et a une « piste jusqu’en 2024 », selon Goin. L’entreprise monétise son code en vendant une licence pour utiliser le moteur d’exécution DeepSparse. « Nous constatons que le traitement du langage naturel et la vision par ordinateur sont les plus intéressants à la périphérie », a déclaré M. Goin. 

Le commerce de détail est un domaine très prometteur pour les cas d’utilisation, a déclaré M. Goin, tout comme la fabrication et les applications IoT. Mais l'applicabilité est vraiment un certain nombre de systèmes humbles dans le monde qui n'ont pas d'accélérateurs sophistiqués et qui n'auront peut-être jamais un tel matériel. « Il y a des industries qui existent depuis des décennies et qui ont des processeurs partout », a observé M. Goin. « Vous allez dans l’arrière-salle d’un Starbucks, ils ont un rack de serveurs dans le placard. » 

Parmi les autres premières frappantes pour MLPerf, le géant du cloud Alibaba a été la première et la seule entreprise à soumettre un système composé de plusieurs machines dans ce qui est généralement un concours pour des machines uniques. 

Alibaba a présenté cinq systèmes composés de variations de deux à six nœuds, exécutant un mélange de GPU Intel Xeon et Nvidia. Un logiciel d’Alibaba, appelé Sinian vODLA, partitionne automatiquement les tâches d’un réseau neuronal sur différents processeurs entre les différents ordinateurs.

La caractéristique la plus frappante est que le logiciel Sinian peut décider à la volée de répartir les tâches d’un réseau neuronal entre différents types de processeurs, y compris une variété de GPU Nvidia, et pas un seul, de sorte que la différence de capacité de chaque processeur n’est pas un obstacle mais un avantage potentiel. 

« C'est l'avenir, l'informatique hétérogène », a déclaré Weifeng Zhang, scientifique en chef d'Alibaba en charge de l'informatique hétérogène, dans une interview accordée à ZDNet.

Les résultats du benchmark du serveur Alibaba Cloud ont montré des chiffres époustouflants. Sur la tâche de langage BERT, un système à quatre nœuds avec 32 GPU Nvidia au total a pu exécuter plus de 90 000 requêtes par seconde. C’est 27 % plus rapide que la soumission la plus gagnante dans la catégorie fermée des machines de centre de données, une seule machine d’Inspur utilisant 24 GPU.

Un ordinateur en nuage Alibaba composé de quatre ordinateurs distincts fonctionnant comme un seul, en haut, a été capable de rassembler 32 GPU Nvidia pour produire des résultats vingt-sept pour cent plus rapides que le système unique supérieur, une machine à 24 puces d’Inspur.

« La valeur de ce travail peut se résumer à la facilité, à l’efficacité et à l’économie », a déclaré Zhang à ZDNet.  

Sur le premier point, la facilité d’utilisation, « nous pouvons faire abstraction de l’hétérogénéité du [matériel] informatique, le rendre plus semblable à un énorme réservoir de ressources » pour les clients, a expliqué M. Zhang.

Comment faire fonctionner plusieurs ordinateurs comme un seul est un domaine de l’informatique qui montre une pertinence renouvelée avec l’essor des très grands réseaux neuronaux. Cependant, le développement de systèmes logiciels permettant de répartir le travail sur de nombreux ordinateurs est une tâche ardue hors de portée de la plupart des utilisateurs industriels de l’IA. 

Nvidia a trouvé des moyens de partitionner ses GPU pour en faire des puces multi-locataires, a noté Zhang, appelé « MIG », un GPU à plusieurs instances. 

C’est un début, a-t-il dit, mais Alibaba espère aller au-delà. « MIG divise le GPU en sept petits composants, mais nous voulons généraliser cela, aller au-delà des limites physiques, utiliser l’allocation des ressources en fonction de la demande réelle », a expliqué M. Zhang. 

« Si vous utilisez ResNet-50, vous n’utilisez peut-être que 10 TOP de calcul », ce qui signifie des milliards d’opérations par seconde. Même l’un des MIG est probablement plus que ce dont un utilisateur a besoin, a-t-il déclaré. « Nous pouvons faire une allocation plus fine », avec Sinian, « donc peut-être qu’une centaine d’utilisateurs peuvent utiliser [un seul GPU] à la fois. »

Sur le deuxième point, l’efficacité, la plupart des puces, a noté Zhang, sont rarement utilisées autant qu’elles pourraient l’être. En raison de divers facteurs, tels que les temps d’accès à la mémoire et au disque et les contraintes de bande passante, les GPU sont parfois utilisés à moins de 50 %, ce qui est un gaspillage. Parfois, c'est aussi bas que 10 %, a noté Zhang.

« Si vous utilisiez une machine avec 8 emplacements PCIe » connectant les puces à la mémoire, vous utiliseriez moins de 50 % de vos ressources parce que le réseau est le goulot d’étranglement. En traitant d’abord le problème de réseau, « nous sommes en mesure d’obtenir une utilisation beaucoup plus élevée dans cette soumission ».

Peut-être tout aussi important, à mesure que les machines s’adaptent à de plus en plus de puces, la consommation d’énergie dans un seul boîtier devient un problème épineux. « Supposons que vous puissiez construire 32 emplacements sur votre carte mère » pour les GPU, a expliqué Zhang, « vous pouvez obtenir le même résultat, mais avec 32 emplacements PCIe sur la carte mère, votre alimentation triplera. »

C'est un gros problème en ce qui concerne la réalisation de l'informatique verte, a-t-il déclaré. 

Le troisième problème, l’économie, concerne la façon dont les clients d’Alibaba peuvent acheter des instances. « C’est important pour nous, car nous avons beaucoup d’appareils, pas seulement des GPU, et nous voulons tous les exploiter », a déclaré Zhang. « Nos clients disent qu’ils veulent utiliser les dernières puces, mais ce n’est peut-être pas exactement ce dont ils ont besoin, nous voulons donc nous assurer que tout ce qui se trouve dans le pool est disponible pour l’utilisateur, y compris les [GPU] A100, mais aussi les technologies plus anciennes. »

« Tant que nous résolvons leur problème, que nous leur donnons des ressources plus économiques, cela permettra probablement à nos clients d'économiser plus d'argent - c'est essentiellement la principale motivation pour nous de travailler sur ce sujet. »

Si vous souhaitez approfondir les détails du travail d'Alibaba, un bon point de départ est un jeu de diapositives que Zhang a utilisé en juin pour donner une conférence au Symposium international sur l'architecture informatique.

Le travail d'Alibaba est particulièrement intriguant car depuis un certain temps déjà, les spécialistes dans le domaine des réseaux informatiques parlent d'un deuxième réseau qui se trouve derrière le réseau local, une sorte de réseau d'IA dédié uniquement pour la demande massive de bande passante de l'apprentissage profond.

En ce sens, la soumission du réseau d'Alibaba et la rareté de Neural Magic sont confrontées au problème primordial de l'accès à la mémoire et de la bande passante, qui, selon de nombreux acteurs du domaine, sont des obstacles bien plus importants à l'apprentissage profond que la partie calcul elle-même.

Articles connexes