Comment sont organisés les DPU, coprocesseurs pour le traitement des données



Les ASIC dĂ©diĂ©s pour des domaines spĂ©cifiques sont un moyen de «redĂ©marrer» la loi de Moore et de surmonter les limitations des processeurs Ă  usage gĂ©nĂ©ral. C'est maintenant un domaine de dĂ©veloppement trĂšs prometteur de la microĂ©lectronique. Google, Amazon et d'autres entreprises ont leurs propres projets. Par exemple, Google fabrique des processeurs Google TPU Tensor et les centres de donnĂ©es Amazon exĂ©cutent des puces AWS Graviton sur le cƓur ARM.



Les premiers sont des ASIC pour les réseaux de neurones, et les seconds sont des ARM 64 bits à usage général pour optimiser le rapport qualité-prix dans les charges de travail intensives en calcul.



Une autre classe d'ASIC Ă  usage gĂ©nĂ©ral, oĂč des expĂ©riences actives ont Ă©tĂ© menĂ©es rĂ©cemment, sont les coprocesseurs spĂ©cialisĂ©s pour le traitement de donnĂ©es (unitĂ© de traitement de donnĂ©es, DPU), une sorte de cartes rĂ©seau Ă  puce (SmartNIC). Quelques exemples de cette espĂšce sont Nvidia BlueField 2, Fungible et Pensando DSC-25.



Qu'est-ce qu'ils aiment? Pour quelles tĂąches conviennent-ils? Jetons un coup d'oeil.





Qu'est-ce que SmartNIC



Les cartes rĂ©seau conventionnelles (NIC) sont construites sur un circuit intĂ©grĂ© Ă  usage spĂ©cial (ASIC), qui est conçu pour fonctionner comme un contrĂŽleur Ethernet. Souvent, ces microcircuits sont conçus pour remplir des fonctions secondaires. Par exemple, les contrĂŽleurs Mellanox ConnectX prennent Ă©galement en charge le protocole Infiniband haute vitesse. Ce sont d'excellentes puces spĂ©cialisĂ©es, mais leur fonctionnalitĂ© ne peut pas ĂȘtre modifiĂ©e.



Contrairement aux cartes réseau simples, SmartNIC permet à l'utilisateur de télécharger des logiciels supplémentaires sur le contrÎleur, c'est-à-dire aprÚs l'achat du matériel. Cela étend ou modifie la fonctionnalité de l'ASIC. La procédure est un peu similaire à l'achat d'un smartphone et à l'installation de diverses applications.



Pour rendre cela possible, les SmartNIC nĂ©cessitent plus de puissance de traitement et de mĂ©moire supplĂ©mentaire que les NIC conventionnels. Nous parlons de processeurs ARM multicƓurs plus puissants, de l'installation de processeurs rĂ©seau spĂ©cialisĂ©s (coeurs de traitement de flux, FPC) et de matrices de portes programmables sur site (FPGA).





Les SmartNIC



schĂ©matiques Xilinx Alveo U25 ont souvent un noyau ARM sĂ©parĂ© pour la couche de contrĂŽle, certaines cartes permettent de charger un noyau Linux modifiĂ©. Ces cƓurs ARM dĂ©diĂ©s rĂ©partissent la charge sur le reste des modules de calcul, collectent des statistiques et des journaux, et surveillent l'Ă©tat du SmartNIC. Le trafic rĂ©seau direct ne les traverse pas.



À quelles tñches les DPU conviennent-ils?



Les coprocesseurs de données (DPU) sont une extension typique des SmartNIC qui ajoutent la fonctionnalité NVMe ou NVMe over Fabrics (NVMe-oF). Une telle carte vous permet de décharger le processeur central, prenant en charge toutes les tùches d'E / S.



Par exemple, considérons le périphérique SmartNIC du microcontrÎleur Broadcom NetXtreme-S BCM58800 . Il fonctionne comme une carte réseau programmable et prend en charge (NVMe-oF).





Architecture de la carte Broadcom Stingray basée sur le microcontrÎleur BCM58800



Broadcom Stingray a huit cƓurs ARM v8 A72 Ă  3 GHz, sans doute la vitesse d'horloge la plus Ă©levĂ©e de tout ARM sur n'importe quel SmartNIC. La carte rĂ©seau est livrĂ©e avec jusqu'Ă  16 Go de mĂ©moire DDR4. Le chiffrement jusqu'Ă  90 Gbps est pris en charge au niveau matĂ©riel et certaines fonctions de traitement des donnĂ©es sont prises en charge: la dĂ©duplication, qui supprime le codage de RAID 5 et RAID 6.



Le diagramme montre également l'accélérateur TruFlow. Il s'agit d'une technologie propriétaire de Broadcom pour l'accélération matérielle des opérations réseau, y compris Open vSwitch (OvS) et plus encore.



Nvidia BlueField 2



Nvidia s'est traditionnellement spécialisée dans les accélérateurs graphiques, mais cette année, elle a réalisé une acquisition de 7 milliards de dollars du fabricant de puces spécialisé Mellanox, elle cible désormais sérieusement un nouveau domaine du calcul haute performance des centres de données.



Mellanox est l'un des pionniers dans le développement de cartes réseau à puce, et la carte BlueField 2 , commercialisée sous le nom d'unité de traitement de données (DPU), est désormais considérée comme le produit phare . Applications principales du DPU de l'





architecture Nvidia / Mellanox BlueField 2



:



  • Clouds virtuels et matĂ©riels.
  • Stockage NVMe dans les machines virtuelles.
  • Applications de virtualisation des fonctions rĂ©seau (NFV).
  • Applications de sĂ©curitĂ© de l'information telles que Deep Packet Inspection (DPI).
  • Microserveurs pour l'edge computing




Nvidia / Mellanox BlueField 2



Il comprend un tableau de huit cƓurs ARM v8 A72, un contrĂŽleur de mĂ©moire DDR4 et un adaptateur rĂ©seau Ethernet ou InfiniBand Ă  double port (deux Ă  100 Gbps ou un Ă  200 Gbps), ainsi que des ASIC spĂ©cialisĂ©s pour accĂ©lĂ©rer diverses fonctions: expressions rĂ©guliĂšres, hachage SHA-2, etc.



Pensando



L'une des nouvelles startups dans le domaine SmartNIC est Pensando, qui propose sur le marché la carte dite de services distribués, Pensando DSC-25 (pour les serveurs d'entreprise) et Pensando DSC-100 (pour les fournisseurs de cloud).



Pensando DSC-25 et Pensando DSC-100



Le produit principal est le Pensando DSC-25. Il s'agit d'une carte avec un DPU P4 (Capri) pour le traitement des données, des noyaux ARM supplémentaires et des accélérateurs matériels pour les fonctions sélectionnées.





Circuit Pensando DSC-25



Les principaux cƓurs DPU et ARM sont connectĂ©s via un bus d'interconnexion commun Ă  un contrĂŽleur PCIe et Ă  une matrice de RAM (jusqu'Ă  4 Go).

Les accélérateurs matériels individuels sont appelés ici décharges de traitement de service. Comme avec la carte Mellanox, ils gÚrent le cryptage, le traitement du disque et d'autres tùches.



Fongible





L'architecture de haut niveau de Fungible



Une autre start-up montante, Fungible, affirme avoir inventé le terme DPU en 2016. La société annonce un processeur appelé F1 DPU, mais l'architecture réelle de ces puces est inconnue. Fungible ne peut démontrer que des schémas généraux pour le moment, comme dans l'illustration ci-dessus. Certains experts ont exprimé leur soupçon que Fungible utilise simplement le terme hype DPU pour attirer des investissements en capital-risque. Soit dit en passant, 500 millions de dollars y ont déjà été investis à diverses reprises.



Et aprĂšs?



Il y a eu beaucoup de battage médiatique autour du concept DPU ces derniers temps. Toutes les entreprises qui tentent de pénétrer ce marché (Intel, Xilinx et autres) ne sont pas mentionnées dans cette revue.



Le fait est que le concept SmartNIC existe depuis longtemps et que de grandes entreprises comme Google et Amazon ont dĂ©veloppĂ© et mis en Ɠuvre leurs propres solutions internes. Dans le mĂȘme temps, un marchĂ© a Ă©tĂ© formĂ©, qui a Ă©tĂ© rempli par des acteurs tiers.



Le SmartNIC de deuxiĂšme gĂ©nĂ©ration basĂ© sur FPGA fait son apparition. La technologie de rĂ©seau de portes programmables par l'utilisateur a mĂ»ri au point qu'elle peut dĂ©sormais devenir la technologie de base des SmartNIC. Il y a dix ans, le marchĂ© Ă©tait littĂ©ralement inondĂ© d'accĂ©lĂ©rateurs graphiques - c'Ă©tait la premiĂšre vague significative de technologie d'accĂ©lĂ©ration matĂ©rielle. Maintenant que les FPGA ont dĂ©passĂ© la barre des trois millions de blocs logiques, ces puces sont Ă©troitement intĂ©grĂ©es Ă  d'autres blocs de construction pour gĂ©rer le trafic rĂ©seau, la mĂ©moire, le stockage et les cƓurs de calcul. Les technologies SmartNIC et FPGA se complĂštent parfaitement.



Dans ce contexte, on peut s'attendre à une deuxiÚme vague d'accélérateurs matériels. Et puis un troisiÚme élément sera ajouté à l'ensemble CPU + GPU - DPU. Le coprocesseur de données libérera les processeurs de serveur des tùches d'infrastructure. La recherche montre que dans les environnements hautement virtualisés, les processus réseau tels que les transactions OvS peuvent consommer plus de 30% du temps processeur de l'hÎte. Imaginez les opérations de disque, le chiffrement, le DPI et le routage complexe effectués dans un module séparé. Cela supprimera potentiellement une partie importante de la charge du processeur.

Des startups comme Pensando et Fungible ont affronté des leaders technologiques comme Xilinx, Intel, Broadcom et Nvidia avec leurs innovations. Il s'agit d'une compétition technologique toujours agréable à regarder.



All Articles