Est-open source le ai nirvana pour Intel Bitcoin Connect

Intel a récemment fait quelques changements intéressants dans l’espace communautaire, y compris des licences gratuites pour sa suite de compilateurs pour les éducateurs et Open source Les contributeurs peuvent désormais en bénéficier, de même que la rotation de licences de 90 jours pour l’ensemble de son environnement System Studio pour toute personne qui prend le temps de s’inscrire.

Dans l’espace IA, Intel a récemment annoncé que son code nGraph pour la gestion des API de graphe AI ​​a également été ouvert à la communauté. Après l’avoir ouvert le mois dernier, Intel a été suivi du travail initial sur MXNet avec d’autres améliorations à TensorFlow.

The Next Platform s’est entretenu avec Arjun Bansal, vice-président du logiciel IA et directeur général du AI Lab chez Intel.pour en savoir plus.


Bansal est venu de Nervana qui a été ramassé par Intel en 2016 pour 408 millions de dollars. Fait intéressant, Bansal a une formation en neurosciences réelles chez Brown et en informatique chez Caltech.

En examinant l’annonce récente, nos yeux ont immédiatement été attirés par les chiffres “images par seconde” pour TensorFlow et les graphiques de référence désormais omniprésents, ce qui n’a pas été difficile quand Intel a déclaré que le nouveau code simplifié peut fournir jusqu’à 10 fois plus de performances. précédentes intégrations TensorFlow. Ce genre de fonction étape est ce que nous sommes toujours à l’affût ici. La performance du silicium par rapport au benchmark de reconnaissance d’images ResNet50 est l’un des principaux moyens de montrer à quel point votre IA est rapide, comme AI Linpack, si vous voulez. Comme n’importe quel benchmark, ResNet50 est compliqué et vous devez regarder l’image entière. L’examen de la puissance brute et des numéros de mise à jour ne montre pas vraiment ce qui se passe réellement ici.

En regardant le graphique des performances, les scientifiques de The Next Platform grimacent un peu, la surcharge omniprésente de l’axe Y affichant des valeurs différentes, nous nous sommes concentrés un peu plus sur le nombre de 68,9 images par seconde pour le TensorFlow XLA nGraph basé sur Xeon. . Notre retour rapide des calculs de l’enveloppe comparant les résultats de TensorFlow montre qu’une seule carte vintage Tesla K80 2014 (qui a deux GPU) arrive à environ 52 images par seconde. Ce Tesla K80 un peu âgé, maintenant deux générations en arrière (trois si vous comptez les GPU “Maxwell”) pourrait à peu près suivre le rythme de la paire de nouveaux Plateaux Xeon SP “Skylake” utilisés dans le test d’Intel. En supposant que vous pouvez trouver un K80 sur eBay, (nous en avons trouvé un pour 1500 $) qui vient dans environ 28 dollars par image par seconde. Le silicium de haute qualité Xeon 8180 répertorie environ 10 000 $ par puce sans l’expansion de la mémoire et il y avait une paire d’entre eux nécessaires pour fournir les 56 cœurs utilisés pour le test d’Intel. Donc, même à 69 images par seconde, vous êtes face à 290 $ par image par seconde. Cela revient à être à propos d’une image par seconde par cœur, donner ou prendre.

En extrapolant ces mêmes chiffres et en utilisant notre nouveau “dollars par jeu d’image” à l’accélérateur Tesla “Volta” V100, même si ces cartes listent également environ $ 11,500 par pièce, une carte V100 vous donne juste un peu moins de 600 images par seconde, se rapprochant à environ 19 $ par image par seconde territoire. C’est tout avant que vous commenciez à sortir d’un seul tableau, ou à distribuer à des systèmes plus importants ou à construire une sérieuse échelle sérieuse comme le DGX-2. Sur la base de ces chiffres, Nvidia conserve toujours la couronne AI Benchmark.

Quiconque fait ce type de benchmarks sérieusement ou est en première ligne de l’IA dans les paramètres de production adopte une approche très différente. Facebook, par exemple, a publié son propre numéro de formation de ResNet en une heure en utilisant leurs serveurs GPU “Big Basin” bourrés de Pascal P100 avec un solide réseau de 50 Gb / sec pour faire bouger les choses, surtout pour qu’ils puissent Maintenant, reconnaissez les photos de votre chat plus rapidement que jamais. Les systèmes distribués et les systèmes étroitement intégrés avec des réseaux de stockage et élégants sont la façon d’augmenter réellement la vitesse pour les méthodes d’IA, tout cela est beaucoup plus gros qu’un seul morceau de silicium. L’écosystème de l’IA

Alors pourquoi publier ces chiffres, de quoi s’agit-il réellement? Nous avons dit que c’était compliqué, et ça l’est. C’est devenu plus clair quand nous avons parlé avec Bansal. Il a déclaré que le vrai problème est que le nombre de morceaux de silicium et le nombre de plates-formes uniques dans ce jeu augmentent considérablement. Quand Bansal était à Nervana, ils avaient une relation un à un avec leur code et leur silicium. Ce n’est plus le même jeu, il y a tout un écosystème de matériel IA allant de Movidius à la périphérie dans l’espace embarqué, drone et mobile, FPGA d’Altera, au Nervana Neural Processor à sortir et au bon vieux X86 Xeon standard – ils ont tous besoin d’être soutenus hors de la boutique de Bansal. Non seulement cela, nous avons déjà parlé du manque de normes dans l’IA, et c’est vrai. Les gens essaient de concevoir efficacement le PDF pour les réseaux de neurones. Lorsque vous faites l’impasse sur les chiffres de performance et que vous creusez vraiment dans l’annonce d’Intel, il s’agit en réalité de la mobilité du graphique. Tout est dans l’API. Il s’agit en fait de lancer un logiciel Intel Open source aider à faire avancer le terrain en permettant aux gens de regarder derrière les rideaux et d’aider au développement. Nous avons dénombré sept frameworks et cinq plates-formes, c’est beaucoup de combinaisons de choses à supporter, il est intéressant qu’Intel veuille également cibler le silicium Nvidia avec son code nGraph. C’est un nouveau monde fascinant d’intégration de systèmes complexes sur la route.

Bansal a noté que les chercheurs d’Intel ont lancé le projet il y a quelques années, principalement pour soutenir le travail sur le NNP, quand ils ont remarqué qu’il y avait un changement dans l’industrie pour être plus basé sur des graphiques. Le passage à Intel leur a permis d’élargir la base de code et de cibler le nouveau silicium. Leur vision est d’avoir une API large et de simplifier l’ingénierie en prenant des mois et des mois hors du cycle de développement. ONXX, l’Open Network Neural Exchange a pris une fissure à certains de cela, mais manque la pièce où le graphique frappe le matériel.

Le logiciel nGraph est essentiellement un “DSO” ou un objet partagé dynamique, prenant l’initiative des jours du serveur web Apache où le logiciel pourrait être construit à l’extérieur et séparé du code principal httpd, mais maintenant séparer le graphique du framework soit TensorFlow, Caffe Les discussions sur la liste de développement XLA sont également intéressantes car vous pouvez suivre l’équipe d’Intel travaillant avec la communauté pour savoir comment “insérer” le DSO dans la base de code XLA, il y a beaucoup de complexité même quand les systèmes sont ouverts . XLA lui-même est également une cible actuellement en évolution rapide et intéressante pour fournir les bons niveaux de performance pour les méthodes basées sur les graphes. L’interaction entre la façon dont TensorFlow construit HLO avec un compilateur juste à temps, puis l’amorçage du logiciel nGraph dans ce pipeline entraîne une ingénierie délicate.

Le véritable noyau de ce que l’annonce de nGraph est tout n’est pas un repère de référence, c’est beaucoup plus subtil. Il s’agit en fait de l’intégration de logiciels complexes. Nos recherches antérieures sur Nervana montrent que le benchmark «images par seconde» améliorera certainement les chiffres du silicium Xeon polyvalent plus générique, bien que nous ayons encore vu ces systèmes être libérés dans la nature. Les systèmes Flexpoint avec des multiplicateurs 16 bits et des arbres d’addition devraient en théorie fournir la puissance nécessaire pour exécuter ces nouvelles charges de travail à base de graphes à grande vitesse – s’ils peuvent obtenir le bon équilibre de puissance sur les systèmes finaux libérés. Mais pour l’instant, il ne s’agit pas du benchmark, mais de l’intégration et de la préparation de logiciels complexes à grande échelle, ouverts et transparents.