L'évolution de NVLink

NVLink est une technologie développée par NVIDIA pour l'interconnexion haut débit point à point entre les GPU. Il vise à surmonter la limitation de bande passante de l'interconnexion PCIe et à permettre une communication de données à faible latence et à bande passante élevée entre les puces GPU, leur permettant ainsi de fonctionner ensemble plus efficacement. Avant l'introduction de la technologie NVLink (avant 2014), les GPU devaient être interconnectés via un commutateur PCIe, comme le montre la figure ci-dessous. Le signal du GPU devait d'abord passer par le commutateur PCIe, où le traitement des données impliquait la distribution et la planification du processeur, ce qui ajoutait une latence supplémentaire au réseau et limitait les performances du système. À cette époque, le protocole PCIe avait atteint la génération 3, avec un débit monocanal de 8 Gb/s et une bande passante totale de 16 Go/s (128 Gbps, 1 octet = 8 bits) pour 16 canaux. À mesure que les performances de la puce GPU s’amélioraient continuellement, sa bande passante d’interconnexion est devenue un goulot d’étranglement.

Commutateur PCle

Source : https://en.wikichip.org/wiki/nvidia/nvlink

En 2014, NVLink 1.0 a été publié et appliqué à la puce P100, comme le montre la figure suivante. Il existe quatre NVlinks entre deux GPU, chaque lien contenant huit voies, chacune avec un débit de 20 Gb/s. Par conséquent, la bande passante bidirectionnelle de l’ensemble du système est de 160 Go/s, soit cinq fois celle du PCIe3 x16.

SysMem

Source : https://en.wikichip.org/wiki/nvidia/nvlink

Chaque NVLink se compose de 16 paires de lignes différentielles, correspondant à huit voies de canaux dans les deux sens, comme le montre la figure suivante. Les deux extrémités de la paire différentielle sont des PHY, qui contiennent des SerDes.

Chaque NVLink se compose de 16 paires de lignes différentielles

Source : https://www.nextplatform.com/2016/05/04/nvlink-takes-gpu-acceleration-next-level/

Basé sur NVLink 1.0, une structure maillée planaire de quatre GPU peut être formée, avec des connexions point à point entre chaque paire. Huit GPU correspondent à un cube-mesh, pouvant former un serveur DGX-1. Cela correspond également à la configuration courante à huit cartes, comme le montre la figure suivante. Il convient de noter qu’à l’heure actuelle, les huit GPU ne forment pas une connexion tout-à-tout.

les huit GPU

Source : https://developer.nvidia.com/blog/dgx-1-fastest-deep-learning-system/

En 2017, Nvidia a lancé la deuxième génération de la technologie NVLink. Il connecte deux puces GPU V100 avec six NVLinks, chacun composé de huit voies. Le débit de chaque voie est porté à 25 Go/s et la bande passante bidirectionnelle du système atteint 300 Go/s, soit presque le double de celle de NVLink 1.0. Simultanément, pour permettre une interconnexion tout-à-tout entre huit GPU, Nvidia a introduit la technologie NVSwitch. NVSwitch 1.0 dispose de 18 ports, chacun avec une bande passante de 50 Go/s et une bande passante totale de 900 Go/s. Chaque NVSwitch réserve deux ports pour la connexion au CPU. À l'aide de six NVSwitches, une connexion tout-à-tout de huit puces GPU V100 peut être établie, comme illustré dans la figure ci-dessous.

Source : https://en.wikichip.org/wiki/nvidia/nvswitch

Le système DGX-2 comprend deux cartes, comme le montre la figure ci-dessous, permettant une connexion tout-à-tout de 16 puces GPU.

Source : https://en.wikichip.org/wiki/nvidia/nvswitch

En 2020, la technologie NVLink 3.0 a émergé. Il relie deux puces GPU A100 avec 12 NVLinks, chacun contenant quatre voies. La vitesse de chaque voie est de 50 Go/s et la bande passante bidirectionnelle du système atteint 600 Go/s, soit le double de celle de NVLink 2.0. À mesure que le nombre de NVLinks augmentait, le nombre de ports sur le NVSwitch est également passé à 36, chacun avec un débit de 50 Go/s. Le DGX A100 est composé de huit puces GPU A100 et de quatre NVSwitches, comme illustré dans la figure ci-dessous.

Technologie NVLink 3.0

Source : http://www.eventdrive.co.kr/2020/azwell/DGX_A100_Azwellplus.pdf

En 2022, la technologie NVLink a été mise à niveau vers la quatrième génération, qui permet à deux puces GPU H100 de s'interconnecter via 18 liens NVLink, chaque lien contenant 2 voies, chaque voie prenant en charge un débit de 100 Gb/s PAM4, ainsi la bande passante totale bidirectionnelle est passée à 900 Go. /s. NVSwitch a également été mis à niveau vers la troisième génération, chaque NVSwitch prenant en charge 64 ports, chaque port avec un débit de 50 Go/s. Le DGX H100 se compose de 8 puces H100 et de 4 puces NVSwitch, comme le montre la figure ci-dessous. De l'autre côté de chaque NVSwitch, plusieurs Modules optiques OSFP 800G est connecté. En prenant comme exemple le premier NVSwitch à gauche, sa bande passante totale unidirectionnelle du côté connecté au GPU est de 4 Tbps (20NVLink200 Gbps), et la bande passante totale du côté connecté au module optique est également de 4 Tbps (5800 XNUMX Gbps), tous deux sont de taille égale, formant un réseau non bloquant. Il convient de noter que la bande passante du module optique est une bande passante unidirectionnelle, tandis que dans les puces AI, une bande passante bidirectionnelle est généralement utilisée.

réseau non bloquant

Source : https://blog.apnic.net/2023/08/10/large-lingual-models-the-hardware-connection/

Le module émetteur-récepteur optique 800G OSFP SR8 est conçu pour les liaisons 400G InfiniBand NDR sur fibre multimode utilisant une longueur d'onde de 850 nm. Le module dispose de deux ports de modulation optique 4G-PAM100 à 4 canaux, chacun utilisant un connecteur MTP/MPO-12. Dans la vidéo ci-dessous, vous verrez comment le connecter à un autre appareil à l'aide de câbles à fibre optique et comment configurer le protocole du commutateur basé sur InfiniBand ou Ethernet. Vous découvrirez également les principales caractéristiques et avantages du module 800G OSFP SR8, tels que sa bande passante élevée, sa faible consommation d'énergie et sa possibilité de branchement à chaud.

Le tableau suivant résume les paramètres de performances de chaque génération de NVLink.

paramètres de performances de chaque génération de NVLink

Les paramètres de chaque génération de PCIe sont présentés dans le tableau suivant.

paramètres de chaque génération de PCIe

Du point de vue du débit d'une seule voie, NVLink est généralement environ deux fois plus élevé que PCIe de la même période, et l'avantage de la bande passante totale est encore plus évident, NVLink représente environ cinq fois la bande passante totale de PCIe. Cela s’est surpassé et ne s’est jamais arrêté.

NVLink, après près d'une décennie de développement, est devenu une technologie de base dans les puces GPU Nvidia, une partie importante de son écosystème, résolvant efficacement le problème de l'interconnexion des données à large bande passante et à faible latence entre les puces GPU et modifiant l'architecture informatique traditionnelle. Cependant, comme cette technologie est unique à Nvidia, les autres fabricants de puces IA ne peuvent utiliser que PCIe ou d'autres protocoles d'interconnexion. Dans le même temps, Nvidia explore l'utilisation de l'interconnexion optique pour réaliser la connexion entre les GPU, comme le montre la figure ci-dessous, où la puce photonique en silicium et le GPU sont co-packagés, et les fibres optiques connectent deux puces GPU.

GPU connecté photonique nvswitch

Source : https://www.nextplatform.com/2022/08/17/nvidia-shows-what-optical-linked-gpu-systems-might-look-like/

Laisser un commentaire

Remonter en haut