
Spezielle ASICs für bestimmte Bereiche sind eine Möglichkeit, das Moore'sche Gesetz neu zu starten und die Einschränkungen von Allzweck-CPUs zu überwinden. Jetzt ist es ein vielversprechender Bereich der Entwicklung der Mikroelektronik. Google, Amazon und andere Unternehmen haben ihre eigenen Projekte. Beispielsweise lässt Google Google TPU- Tensorprozessoren und Amazon-Rechenzentren AWS Graviton- Chips auf dem ARM-Kern ausführen .
Ersteres sind ASICs für neuronale Netze, und letzteres sind universelle 64-Bit-ARMs zur Optimierung des Preis-Leistungs-Verhältnisses bei rechenintensiven Workloads.
Eine weitere Klasse von Allzweck-ASICs, an denen in letzter Zeit aktive Experimente durchgeführt wurden, sind spezialisierte Coprozessoren für die Datenverarbeitung (Datenverarbeitungseinheiten, DPU), eine Art Smart Network Cards (SmartNIC). Einige Beispiele für diese Art sind Nvidia BlueField 2, Fungible und Pensando DSC-25.
Wie sind Sie? Für welche Aufgaben sind sie geeignet? Lassen Sie uns einen Blick darauf werfen.

Was ist SmartNIC?
Herkömmliche Netzwerkkarten (NICs) basieren auf einer speziellen integrierten Schaltung (ASIC), die als Ethernet-Controller ausgelegt ist. Oft sind diese Mikroschaltungen so ausgelegt, dass sie sekundäre Funktionen ausführen. Beispielsweise unterstützen Mellanox ConnectX-Controller auch das Hochgeschwindigkeits-Infiniband-Protokoll. Dies sind großartige Spezialchips, deren Funktionalität jedoch nicht geändert werden kann.
Im Gegensatz zu einfachen Netzwerkkarten kann der Benutzer mit SmartNIC zusätzliche Software auf den Controller herunterladen, dh nach dem Kauf der Hardware. Dies erweitert oder ändert die Funktionalität des ASIC. Das Verfahren ähnelt dem Kauf eines Smartphones und der Installation verschiedener Anwendungen.
Um dies zu ermöglichen, benötigen SmartNICs mehr Rechenleistung und zusätzlichen Speicher als herkömmliche NICs. Wir sprechen von leistungsstärkeren Multi-Core-ARM-Prozessoren, der Installation spezialisierter Netzwerkprozessoren (Flow Processing Cores, FPC) und Field Programmable Gate Arrays (FPGA).
Xilinx Alveo U25
Schematische SmartNICs verfügen häufig über einen separaten ARM-Kern für die Steuerebene. Einige Karten ermöglichen das Laden eines modifizierten Linux-Kernels. Diese dedizierten ARM-Kerne verteilen die Last auf die übrigen Rechenmodule, sammeln Statistiken und Protokolle und überwachen den Status der SmartNIC. Direkter Netzwerkverkehr wird nicht durch sie geleitet.
Für welche Aufgaben sind DPUs geeignet?
Daten-Coprozessoren (DPUs) sind eine typische Erweiterung von SmartNICs, die NVMe- oder NVMe-over-Fabrics-Funktionen (NVMe-oF) hinzufügen. Mit einer solchen Karte können Sie den Zentralprozessor entladen und alle E / A-Aufgaben übernehmen.
Betrachten Sie beispielsweise das SmartNIC-Gerät des Broadcom NetXtreme-S BCM58800-Mikrocontrollers . Es funktioniert als programmierbare Netzwerkkarte und unterstützt (NVMe-oF).
Architektur der Broadcom Stingray-Karte basierend auf dem BCM58800-Mikrocontroller
Broadcom Stingray verfügt über acht ARM v8 A72-Kerne bei 3 GHz, was wohl die höchste Taktrate aller ARM auf einer SmartNIC darstellt. Die Netzwerkkarte verfügt über bis zu 16 GB DDR4-Speicher. Auf Hardwareebene wird eine Verschlüsselung mit bis zu 90 Gbit / s unterstützt, und einige Datenverarbeitungsfunktionen werden unterstützt: Deduplizierung, mit der die RAID 5- und RAID 6-Codierung entfernt wird.
Das Diagramm zeigt auch den TruFlow-Beschleuniger. Es handelt sich um eine von Broadcom entwickelte Technologie zur Hardwarebeschleunigung des Netzwerkbetriebs, einschließlich Open vSwitch (OvS) und mehr.
Nvidia BlueField 2
Nvidia hat sich traditionell auf Grafikbeschleuniger spezialisiert. In diesem Jahr wurde jedoch eine Akquisition des spezialisierten Chipherstellers Mellanox im Wert von 7 Milliarden US-Dollar abgeschlossen.
Mellanox ist einer der Pioniere bei der Entwicklung intelligenter Netzwerkkarten, und das BlueField 2- Board , das als Data Processing Unit (DPU) vermarktet wird, gilt heute als führendes Produkt .
Nvidia / Mellanox BlueField 2-Architektur
Schlüssel-DPU-Anwendungen:
- Virtuelle und Hardware-Clouds.
- NVMe-Speicher in virtuellen Maschinen.
- NFV-Anwendungen (Network Function Virtualization).
- Informationssicherheitsanwendungen wie Deep Packet Inspection (DPI).
- Mikroserver für Edge Computing
Nvidia / Mellanox BlueField 2
Es verfügt über ein Array von acht ARM v8 A72-Kernen, einen DDR4-Speichercontroller und einen Dual-Port-Ethernet- oder InfiniBand-Netzwerkadapter (zwei mit 100 Gbit / s oder einer mit 200 Gbit / s) sowie spezielle ASICs zur Beschleunigung verschiedener Funktionen: reguläre Ausdrücke, SHA-2-Hashing usw.
Pensando
Eines der neuen Startups im Bereich SmartNIC ist Pensando, das die sogenannte Distributed Services Card auf dem Markt anbietet. Dies sind Pensando DSC-25 (für Unternehmensserver) und Pensando DSC-100 (für Cloud-Anbieter).
Pensando DSC-25 und Pensando DSC-100
Das Hauptprodukt ist Pensando DSC-25. Es handelt sich um eine Karte mit einer P4 (Capri) DPU für die Datenverarbeitung, zusätzlichen ARM-Kernen und Hardwarebeschleunigern für ausgewählte Funktionen.
Pensando DSC-25-Schaltung
Die Haupt-DPU- und ARM-Kerne sind über einen gemeinsamen Verbindungsbus mit einem PCIe-Controller und einem RAM-Array (bis zu 4 GB) verbunden.
Die einzelnen Hardwarebeschleuniger werden hier als Service Processing Offloads bezeichnet. Wie bei der Mellanox-Karte übernehmen sie die Verschlüsselung, die Festplattenverarbeitung und andere Aufgaben.
Fungibel
Die High-Level-Architektur von Fungible
Ein weiteres aufstrebendes Startup, Fungible, behauptet,2016 den Begriff DPU geprägt zu haben. Das Unternehmen kündigt einen Prozessor namens F1 DPU an, die tatsächliche Architektur dieser Chips ist jedoch unbekannt. Fungible kann bisher nur allgemeine Schemata demonstrieren, wie in der obigen Abbildung. Einige Experten haben den Verdacht geäußert, dass Fungible einfach den Hype-Begriff DPU verwendet, um Risikokapitalinvestitionen anzuziehen. Übrigens wurden bereits in verschiedenen Runden 500 Millionen US-Dollar investiert.
Was weiter?
In letzter Zeit gab es viel Hype um das DPU-Konzept. Nicht alle Unternehmen (Intel, Xilinx und andere), die versuchen, in diesen Markt einzutreten, werden in dieser Bewertung erwähnt.
Tatsache ist, dass es das SmartNIC-Konzept schon lange gibt und große Unternehmen wie Google und Amazon ihre eigenen internen Lösungen entwickelt und implementiert haben. Gleichzeitig wurde ein Markt gebildet, der von Drittanbietern gefüllt wurde.
Die FPGA-basierte SmartNIC der zweiten Generation ist auf dem Vormarsch. Die vom Benutzer programmierbare Gate-Array-Technologie ist so weit ausgereift, dass sie nun zur grundlegenden Technologie für SmartNICs werden kann. Vor einem Jahrzehnt war der Markt buchstäblich mit Grafikbeschleunigern überflutet - dies war die erste bedeutende Welle in der Hardwarebeschleunigungstechnologie. Nachdem FPGAs die Marke von drei Millionen logischen Blöcken überschritten haben, sind diese Chips eng in andere Bausteine integriert, um Netzwerkverkehr, Speicher, Speicher und Rechenkerne zu verarbeiten. SmartNIC- und FPGA-Technologien ergänzen sich perfekt.
Vor diesem Hintergrund ist eine zweite Welle von Hardwarebeschleunigern zu erwarten. Und dann wird das dritte Element, DPU, zum CPU + GPU-Satz hinzugefügt. Der Daten-Coprozessor befreit Serverprozessoren von Infrastrukturaufgaben. Untersuchungen zeigen, dass Netzwerkprozesse wie OvS-Transaktionen in stark virtualisierten Umgebungen mehr als 30% der CPU-Zeit auf dem Host beanspruchen können. Stellen Sie sich Festplattenoperationen, Verschlüsselung, DPI und komplexes Routing in einem separaten Modul vor. Dadurch wird möglicherweise ein erheblicher Teil der CPU-Last entfernt.
Startups wie Pensando und Fungible haben sich mit ihren Innovationen Technologieführern wie Xilinx, Intel, Broadcom und Nvidia gestellt. Dies ist ein technologischer Wettbewerb, dessen Beobachtung immer Spaß macht.