Serveur minecraft

Le processeur 10nm Ice Lake rencontre M.2: la plongée profonde Nervana NNP-I de Spring Hill – Un bon serveur Minecraft

Le 12 mai 2020 - 10 minutes de lecture

Intel a révélé les grandes lignes de son nouveau processeur de réseau neuronal Nervana pour l'inférence, de NNP-I pour faire court, qui se présente comme un processeur Ice Lake 10 nm modifié qui montera sur un PCB qui s'insère dans un port M.2 (oui, un M .2 port qui est normalement utilisé pour le stockage), lors d'un événement à Haïfa, en Israël, il y a deux mois. Aujourd'hui, la société a fourni des détails plus approfondis sur la conception ici à Hot Chips 31, le premier lieu où les principaux fournisseurs de semi-conducteurs détaillent leurs dernières microarchitectures.

Intel travaille sur plusieurs initiatives différentes pour accroître sa présence sur le marché en plein essor de l'intelligence artificielle avec sa stratégie d'IA partout. L'approche globale de l'entreprise comprend des GPU, des FPGA et des ASIC personnalisés pour relever tous les différents défis dans l'espace de l'IA, avec des solutions conçues pour des tâches de formation intensives en calcul qui créent des réseaux neuronaux complexes pour les charges de travail de reconnaissance d'objets, de traduction et de synthèse vocale, en nommer quelques-unes et des solutions distinctes pour exécuter les modèles formés résultants en tant que code léger dans un processus appelé inférence.

Le processeur de réseau neuronal Intel Hill Spring Nervana pour l'inférence (NNP-I) 1000, que nous appellerons le NNP-I, s'attaque à ces charges de travail d'inférence légères dans le centre de données. Les puces sont suffisamment petites pour être montées sur un périphérique M.2 standard, qui s'insère ensuite dans un port M.2 standard sur une carte mère, pour décharger les serveurs Xeon des charges de travail gourmandes en inférences, libérant ainsi la plus grosse puce pour les tâches de calcul générales . Comme nous l'avons vu récemment, Le processeur de réseau neuronal pour la formation (NPP-T) se présente comme la solution Nervana d'Intel pour les charges de travail de formation, mais les deux appareils ont des architectures sous-jacentes très différentes.

Centrale nucléaire de Spring Hill-I

Intel a modifié la puce Ice Lake de 10 nm, supprimant deux cœurs de calcul et le moteur graphique pour accueillir 12 moteurs de calcul d'inférence (ICE). Les accélérateurs ICE, dotés d'une synchronisation matérielle entre les unités, partagent une structure cohérente et 24 Mo de cache L3 avec les deux cœurs IA dotés de la microarchitecture Sunny Cove.

Les cœurs IA sont des cœurs Ice Lake standard qui prennent en charge les instructions AVX-512 et VNNI qui accélèrent les réseaux de neurones convolutifs, tandis qu'un régulateur de tension entièrement intégré (FIVR) fournit de l'énergie aux composants de manière dynamique pour allouer une plus grande partie du budget d'alimentation aux plus actifs. unités sur le dé. La puce est livrée avec deux contrôleurs de mémoire LPDDR4X qui se connectent à la mémoire de l'emballage, que vous pouvez voir comme un seul composant en bas à gauche du PCB M.2. Les contrôleurs fournissent jusqu'à 4,2 GT / s (68 Go / s) de débit et prennent en charge l'ECC dans la bande.

Intel ne partage pas encore de capacité LPDDR4, ni d'autres détails précis sur le périphérique M.2. Nous savons qu'Intel monte le package sur différentes formes de cartes d'extension, comme la version M.2 illustrée ci-dessus, qui peut ensuite se glisser dans le port M.2 standard sur une carte mère de serveur, ou sur des cartes d'extension plus grandes qui dans un emplacement PCIe standard. Contrairement à certains silicium personnalisés conçus pour l'IA, comme le TPU de Google, cet appareil est largement compatible avec la plupart des serveurs modernes existants. L'approche est également évolutive: vous pouvez ajouter autant de NNP-I au serveur que nécessaire, en particulier avec les cartes de montage PCIe qui hébergent plusieurs ports M.2.

Le périphérique communique via une interface PCIe 3.0 x4 ou x8 avec l'hôte, mais il n'utilise pas le protocole NVMe. Au lieu de cela, il fonctionne comme un périphérique PCIe standard. Intel fournira un logiciel qui orchestre entièrement les «travaux» d'inférence de déplacement vers l'accélérateur, qui avertira ensuite le processeur Xeon lorsque le travail sera terminé. Le déchargement élimine la communication aller-retour du Xeon sur le bus PCIe avec d'autres types d'accélérateurs, ce qui est pénalisant pour le processeur car il génère des interruptions et nécessite le mouvement des données. En revanche, le NNP-I fonctionne comme un système autonome avec ses propres adaptations d'E / S (PCH) qui lui permettent d'accéder aux données nécessaires au traitement.

L'appareil peut prendre en charge différentes enveloppes d'alimentation allant de 10 W à 50 W, ce qui a un impact sur les performances. La limitation de 15 W de l'interface M.2 entrave la fourniture d'énergie aux appareils branchés sur une prise M.2 standard, mais les cartes NNP-I dans les cartes d'extension plus grandes peuvent fonctionner aux taux TDP les plus élevés, ce qui signifie qu'elles offrent beaucoup plus de performances. Gamme TOP / s de 48 à 92 avec opérations INT8. En fonction du TDP configuré, la puce offre une efficacité de 2 à 4,8 TOP / s par watt, mais cette métrique n'inclut pas la puissance totale du boîtier.

À l'intérieur du moteur de calcul d'inférence

Plonger dans les moteurs ICE révèle que chacune des unités ICE dispose de 4 Mo supplémentaires de SRAM pour aider à réduire le mouvement des données intra-matrice, ce qui est toujours plus cher en termes de puissance et de temps que les opérations de calcul réelles. Le Deep Learning Compute Grid est un moteur tensoriel qui est connecté via une matrice de données et de contrôle à la SRAM et à un VP6 DSP. Le moteur DSP peut être utilisé pour des algorithmes qui ne sont pas spécifiquement adaptés à la grille de calcul DL à fonction fixe. En outre, un autre code peut s'exécuter avec VNNI sur les cœurs Ice Lake, permettant à plusieurs modèles de s'exécuter simultanément sur l'appareil et fournissant également un peu de compatibilité ascendante nécessaire pour l'espace AI en mouvement rapide.

La grille de calcul DL prend en charge FP16 et INT8, mais est également conçue pour prendre en charge INT4, 2 et 1 pour prendre en charge d'éventuels ajustements futurs des algorithmes d'IA. Étonnamment, il ne prend pas en charge bfloat16. La structure peut être optimisée pour la bande passante ou la latence, comme indiqué dans les tableaux en bas à droite, en ajustant la répartition des charges de travail entre les unités ICE.

Image 1 de 2

Image 2 de 2

Ici, nous pouvons voir les vues rapprochées de la grille de calcul DL, qui est conçue pour être flexible pour maximiser ses capacités de calcul parallèle 4D, et le Dens Tensilica Vision P6 qui est utilisé pour le traitement vectoriel. Le moteur Tensilica DSP est une machine VLIW large qui prend en charge INT8, 16, 32 et FP16. Le moteur est entièrement programmable et dispose d'un pipeline bidirectionnel avec la grille de calcul DL pour transférer rapidement des données entre les deux unités synchronisées avec le matériel.

Sous-système de mémoire de Spring Hill

Un zoom arrière sur le sous-système de mémoire révèle de nombreuses rationalisations derrière les décisions de conception prises dans chacune des unités de calcul. Ici, nous pouvons voir que le cache L3 contrôlé par le matériel est divisé en huit tranches de 3 Mo partagées entre les cœurs AI et les unités ICE. La conception est optimisée pour garder les données aussi proches que possible des moteurs de calcul avec quatre couches distinctes.

La série de blocs à gauche du graphique quantifie le temps de latence pour le déplacement des données à travers chaque couche de la hiérarchie mémoire. Avec un transfert de données de la DRAM vers l'ensemble de calcul DL en tant que ligne de base, nous pouvons voir à quelle vitesse chaque couche de la hiérarchie peut fournir des données au moteur. Un accès à partir du cache L3 est 10 fois plus rapide que la DRAM, tandis que les données stockées dans la grille de calcul DL sont 1000 fois plus rapides.

En résumé, la conception à plusieurs niveaux permet au Xeon de décharger plusieurs types de réseaux de neurones différents vers l'appareil, et chaque couche prend en charge certains niveaux de précision. Vous remarquerez également que la pyramide ci-dessus est alignée en fonction des performances par watt.

Image 1 de 3

Image 2 de 3

Image 3 de 3

Intel a partagé les données de performances avec ResNet50 fonctionnant à 3 600 inférences par seconde avec la puce réglée à un TDP de 10 W. Cela équivaut à une mesure d'efficacité de 4,8 TOP / s par watt, qui répond aux objectifs de conception de l'entreprise. En particulier, la puce est plus efficace dans les plages de TDP inférieures, de sorte que l'efficacité peut varier avec des paramètres plus performants. Ces chiffres ne s'appliquent également qu'à l'ASIC et n'incluent pas la consommation électrique de l'appareil M.2 complet. Intel dit qu'il partagera plus de données de performances à l'avenir.

Intel fournit un compilateur qui adapte le code aux accélérateurs du NNP-I et travaille avec Facebook, qui a été le partenaire «définitif» de la société pendant le développement, pour garantir que le compilateur Glo prend également en charge le périphérique. L'appareil prend également en charge tous les langages standard, comme PyTorch et TensorFlow, entre autres, avec peu ou pas d'altération. Intel soutient que toute personne capable de travailler avec Xeons pour l'inférence peut utiliser le NNP-I, mais que les programmeurs ninja peuvent se lancer dans les mauvaises herbes pour optimiser en profondeur l'architecture à plusieurs niveaux.

Les applications d'inférence sont beaucoup plus répandues que la formation dans le centre de données, et les appareils écoénergétiques abordables se vendront en masse aux hyperscalers et aux fournisseurs de services cloud (CSP), ce qui signifie que cela pourrait devenir un segment lucratif pour Intel. La société n'envisage pas que ces appareils soient vendus au détail en soi, mais la société s'attend à ce que les fournisseurs de services de communication les exposent via des instances basées sur le cloud à l'avenir.

Intel a déjà deux autres générations de NNP-I en développement. La société lancera la production en volume d'ici la fin de l'année et les NNP-I échantillonnent déjà.

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.