Avec le GPU Tesla T4 basé sur son architecture Turing et les logiciels associés, Nvidia étend sa présence dans les datacenters pour l’exécution de différents types de charges de travail recourant à l’intelligence artificielle. La carte graphique T4 pour serveurs permettra d’accélérer les applications de traitement d’images et vidéos, les systèmes de reconnaissance vocale, de traduction et de recommandation. Le T4 est le composant essentiel de la plateforme TensorRT Hyperscale Inference Platform de Nvidia, une carte accélératrice de petite taille qui devrait être livrée par les principaux fabricants de serveurs pour datacenters au cours du quatrième trimestre de cette année.
Le T4 comprend les Turing Tensor Cores, des noyaux capables de prendre en charge les différents niveaux de calculs intensifs nécessaires aux applications d'IA, ainsi qu’aux frameworks TensorFlow, PyTorch, MXNet, Chainer, et Caffe2 pour l'apprentissage profond impliquant des réseaux neuronaux multicouches. « Basé sur l'architecture Turing, le Tesla T4 va révolutionner la manière dont l'intelligence artificielle est déployée dans les datacenters », a déclaré mercredi dernier Jensen Huang, le CEO de Nvidia lors du Nvidia GTC de Tokyo, où il a présenté le GPU et sa plate-forme logicielle. « Le GPU Tensor Core est une sorte de réinvention de notre GPU. Il renouvelle totalement l’approche du GPU », a-t-il ajouté.
L'architecture massivement parallèle des GPU fait qu’ils sont bien adaptés aux tâches d’intelligence artificielle. Depuis plusieurs années, les capacités de traitement parallèle des GPU Nvidia sont couplées à une puissance de traitement pure suffisamment importante pour en faire la technologie la plus adaptée à l'intelligence artificielle, en particulier pour l’entraînement des ensembles de données pour l'apprentissage machine et surtout pour la création de modèles de réseaux neuronaux d'apprentissage profond.
Le traitement multiprécision, un avantage pour l'inférence en IA
La grande évolution apportée par le GPU T4 et la plate-forme d'inférence, c’est la possibilité d'effectuer le traitement avec des degrés de précision plus variés qu’avec les précédents GPU P4 basés sur l'architecture Pascal. Une fois les modèles de réseaux neuronaux entrainés sur les ensembles massifs de données, ils sont déployés dans des applications d’inférence qui classent les données pour induire un résultat. Même si la phase d’entraînement est très intense en terme de calcul, l'inférence dans des applications réelles déployées exige autant de flexibilité que possible de la part des processeurs. Idéalement, chaque niveau d'un réseau neuronal devrait être traité avec le moins de précision possible pour la couche concernée, la vitesse d'application et l'efficacité énergétique. « En créant une architecture qui peut mélanger et faire correspondre toutes ces différences de précision, nous pouvons maximiser la précision et le débit, le tout à 75 watts », a déclaré M. Huang, ajoutant que les T4 sont au moins huit fois plus rapides que les P4, voire jusqu’à 40 fois plus rapides dans certains cas.
Le besoin d'inférence augmente rapidement, car les datacenters font tourner des applications très diverses traitant des milliards de requêtes vocales, de traductions, d'images et de vidéos, de recommandations et d’interactions sur les médias sociaux. Selon Nvidia, le marché de l'inférence en IA est amené à croître et devrait atteindre les 20 milliards de dollars au cours des cinq prochaines années. Chaque application IA a besoin d’un différent niveau de traitement par les réseaux de neurones. « Il n’est pas nécessaire de faire des calculs en virgule flottante 32 bits si l'application n’a besoin que de 16 bits », explique Patrick Moorhead, analyste principal et fondateur de Moor Insights & Strategy. « Avec sa nouvelle plateforme d’inférence, Nvidia place la barre très haut dans les datacenters dédiés à l'IA ».
TensorRT Hyperscale Inference Platform
La plateforme TensorRT Hyperscale Inference Platform est une carte PCIe petit format de 75 watts, qui comprend les composants suivants :
- Un GPU Nvidia Tesla T4, avec 320 noyaux Turing Tensor Cores et 2560 noyaux CUDA (Compute Unitfied Device Architecture), le langage de programmation de Nvidia pour les traitements parallèles. Les capacités en calcul multiprécision du T4 incluent le FP16 (16 bits de capacité arithmétique en virgule flottante) jusqu’au FP32, l’INT8 (arithmétique en entier de 8 bits) et l’INT16. Le T4 est capable d’offrir des performances en pointe de 65 téraflops en FP16, 130 téraflops en INT8 et 260 téraflops en INT4.
- Le TensorRT 5, un optimiseur d'inférence et un runtime d'exécution pour l’apprentissage profond. Il est conçu pour l’inférence à faible latence et à haut débit afin d'optimiser, de valider et de déployer rapidement des réseaux neuronaux entrainés pour faire de l'inférence dans les datacenters hyperscale, les plates-formes GPU embarquées ou de la filière automobile. Il supporte les frameworks TensorFlow, MXNet, Caffe2, Matlab et d'autres frameworks via ONNX (Open Neural Network Exchange).
- Le serveur d'inférence TensorRT Inference Server, que Nvidia met à disposition depuis son GPU Cloud comme serveur d'inférence pour les déploiements de datacenters. Il est conçu pour mettre à l'échelle les déploiements d’entraînement et d'inférence vers des clusters GPU multicloud. Le serveur s'intègre avec Kubernetes et Docker, ce qui permet aux développeurs d'automatiser le déploiement, la planification et le fonctionnement de plusieurs conteneurs d'applications GPU à travers des clusters de nœuds.
La clef du support logiciel
« Nous continuons à investir et à optimiser la totalité de notre pile logicielle de bas en haut. Pour cela, nous tirons parti des frameworks disponibles pour que chacun puisse exécuter ses réseaux neuronaux clés en main immédiatement - ils peuvent utiliser directement leurs modèles d’entraînement et les déployer le jour même », a déclaré Ian Buck, vice-président du département Accelerated Computing de Nvidia.
Dans le domaine de l'inférence en IA, Nvidia est confrontée à la concurrence des fabricants de puces FPGA (Field-Programmable Gate Array), et de Xilinx en particulier. La programmabilité des FPGA permet aux développeurs d'affiner la précision du calcul utilisé pour différents niveaux de réseaux neuronaux profonds. Mais, pour les programmeurs, la courbe d'apprentissage des FPGA est très raide. Pendant des années, la personnalisation des FPGA est passée par les langages HDL (Hardware Description Languages), plutôt que par les langages de niveau supérieur utilisés pour les autres puces.
Les FPGA, une concurrence pour les GPU
Au mois de mars dernier, Xilinx a dévoilé une catégorie de produits appelée Adaptive Compute Acceleration Platform (ACAP), laquelle offrirait plus de support logiciel que les FPGA traditionnels. La première version d'ACAP, baptisée Everest, doit être livrée l'année prochaine et Xilinx précise que les développeurs de logiciels pourront travailler avec Everest en utilisant des outils comme C/C++, OpenCL, et Python. Everest peut également être programmé au niveau matériel, au niveau du transfert de registre (RTL) en utilisant des outils HDL comme Verilog et VHDL.
Mais le support logiciel offert par les GPU T4, couplé à leurs capacités de calcul multiprécision devrait renforcer la position de Nvidia, à la fois dans l’entrainement des modèles et dans l'inférence en IA. « Nous répondons aux besoins des charges de travail réelles de production - telles qu’elles existent aujourd’hui et tel que le constatent nos clients - nous travaillons avec tous nos clients sur l’ensemble de notre pile afin d'offrir non seulement la meilleure capacité de training, mais aussi la meilleure plate-forme d'inférence », a déclaré Ian Buck. « Pratiquement tous les fabricants de serveurs qui utilisent actuellement les GPU P4 passeront aux T4 d'ici la fin de l'année », a-t-il ajouté. Lors de l'événement de Tokyo, tous les constructeurs de serveurs pour datacenters comme Cisco, Dell EMC, Fujitsu, HPE, IBM, Oracle et SuperMicro, ont exprimé leur soutien au T4. De plus, Google a déclaré qu'il utiliserait également les GPU T4 pour accélérer ses solutions d’intelligence artificielle et de machine learning.