Vidéo: Diving into the TPU v2 and v3 (Novembre 2024)
Au cours des dernières semaines, de nombreuses plates-formes informatiques spécialement conçues pour travailler sur des réseaux neuronaux profonds pour l'apprentissage automatique ont été introduites, notamment les nouveaux "TPU Cloud" de Google et le nouveau design Volta de Nvidia.
Pour moi, il s’agit de la tendance la plus intéressante de l’architecture des ordinateurs - encore plus que celle d’AMD et d’Intel qui propose désormais des processeurs à 16 et 18 cœurs. Bien sûr, il existe d'autres approches alternatives, mais Nvidia et Google attirent à juste titre beaucoup d'attention pour leurs approches uniques.
À Google I / O, je l'ai vu introduire ce qu'est un "TPU en nuage" (pour Tensor Processing Unit, indiquant qu'il est optimisé pour la structure d'apprentissage automatique TensorFlow de Google). Le TPU de la génération précédente, présenté lors du salon de l'année dernière, était un ASIC conçu principalement pour l'inférence (exécution d'opérations d'apprentissage automatique), mais la nouvelle version est conçue pour l'inférence et l'apprentissage de tels algorithmes.
Dans un article récent, Google a donné plus de détails sur le TPU d'origine, qu'il décrit comme contenant une matrice d'unités MAC de 256 x 256 (un total de 65 536) avec des performances maximales de 92 téraops (milliards d'opérations par an). seconde). Il reçoit ses instructions d’un processeur hôte sur un bus PCIe Gen 3. Google a déclaré qu'il s'agissait d'un processeur 28 nm qui représentait moins de la moitié de la taille d'un processeur Intel Haswell Xeon 22 nm, et qu'il surpassait ce processeur et le processeur K80 de Nvidia.
La nouvelle version, baptisée TPU 2.0 ou Cloud TPU (voir ci-dessus), contient en réalité quatre processeurs sur la carte, et Google indique que chaque carte est capable d'atteindre 180 téraflops (180 trillions d'opérations en virgule flottante par seconde). Il est tout aussi important de noter que les cartes sont conçues pour fonctionner ensemble, en utilisant un réseau haute vitesse personnalisé, de sorte qu'elles agissent comme une superinformatique d'apprentissage automatique que Google appelle un "module TPU".
Ce module TPU contient 64 TPU de deuxième génération et fournit jusqu’à 11, 5 pétaflops afin d’accélérer la formation d’un seul grand modèle d’apprentissage automatique. Fei Fei Li, responsable de la recherche sur l'IA chez Google, a déclaré lors de la conférence que même si l'un des modèles d'apprentissage à grande échelle de la traduction nécessitait une journée complète de formation sur 32 des meilleurs GPU disponibles dans le commerce, il même précision dans l’après-midi avec un huitième d’un module TPU. C'est un grand saut.
Comprenez que ce ne sont pas de petits systèmes: un pod a à peu près la taille de quatre racks informatiques normaux.
Et chacun des processeurs semble avoir de très grands dissipateurs de chaleur, ce qui signifie que les cartes ne peuvent pas être empilées trop étroitement. Google n'a pas encore donné beaucoup de détails sur ce qui a changé dans cette version des processeurs ou de l'interconnexion, mais il est également vraisemblable que cela est basé sur des MAC 8 bits.
La semaine précédente, Nvidia avait présenté sa dernière entrée dans cette catégorie, une puce de grande taille connue sous le nom de Telsa V100 Volta, qu’elle a décrite comme le premier processeur doté de cette nouvelle architecture Volta, conçue pour les GPU haut de gamme.
Nvidia a déclaré que la nouvelle puce est capable de 120 téraflops TensorFlow (ou de 15 TFLOPS 32 bits ou de 7, 5 bits 64 bits). Cette architecture utilise une nouvelle architecture comprenant 80 multiprocesseurs de streaming (Streaming Multiprocessors, SM), chacun comprenant huit nouveaux "cœurs de tenseur". et est un ensemble 4x4x4 capable d’effectuer 64 opérations FMA (Fused Multiply-Add) par horloge. Nvidia a annoncé qu'elle proposerait cette puce dans ses stations de travail DGX-1V équipées de 8 cartes V100 au troisième trimestre, à la suite du précédent DGX-1 de la société, qui utilisait l'architecture antérieure P100.
La société a déclaré que cette boîte de 149 000 $ devrait offrir une performance d’entraînement de 960 téraflops, avec une consommation de 3 200 watts. Plus tard, le premier a annoncé qu’il enverrait une station personnelle DGX avec quatre V100, et au quatrième trimestre, il a indiqué que les grands fournisseurs de serveurs expédieraient des serveurs V100.
Cette puce est la première à utiliser le processeur 12 nm de TSMC, et ce sera une énorme puce avec 21, 1 milliards de transistors sur une puce de 815 millimètres carrés. Nvidia a cité Microsoft et Amazon parmi les premiers clients de la puce.
Notez qu'il existe de grandes différences entre ces approches. Les TPU de Google sont vraiment des puces personnalisées, conçues pour les applications TensorFlow, tandis que le Nvidia V100 est une puce un peu plus générale, capable de différents types de maths pour d’autres applications.
Dans le même temps, les autres grands fournisseurs de cloud envisagent des solutions alternatives, Microsoft utilisant à la fois des GPU pour la formation et des FPGA (Field Arrayable Gate Arrays ou FPGA) programmables sur le terrain pour l'inférence et les proposant aux clients. Amazon Web Services met désormais à la disposition des développeurs des instances GPU et FPGA. Et Intel a poussé les FPGA et une foule d’autres techniques. Pendant ce temps, un certain nombre de nouvelles entreprises en démarrage travaillent sur des approches alternatives.
D'une certaine manière, il s'agit du changement le plus radical que nous ayons vu depuis des années dans les processeurs de station de travail et de serveur, du moins depuis que les développeurs ont commencé à utiliser le "calcul GPU" il y a plusieurs années. Il sera fascinant de voir comment cela se développe.