Graph-Streaming-Prozessoren sind für die Bewältigung der Datenmengen bei der Bildsignalverarbeitung im Auto aufgrund ihrer Parallelität sehr gut geeignet.

Graph-Streaming-Prozessoren sind für die Bewältigung der Datenmengen bei der Bildsignalverarbeitung im Auto aufgrund ihrer Parallelität sehr gut geeignet. (Bild: Blaize)

Einer der wichtigsten Fortschritte, der den Aufstieg der künstlichen Intelligenz (KI) vorantreibt, ist die Entstehung und Entwicklung neuronaler Netze (NN). Dies sind Software-Modelle, die auf relativ einfache Weise das Verhalten von Neuronen im Gehirn nachahmen sollen. Ihre reale Anwendung ist mit vielen Herausforderungen verbunden. Sie müssen effizient an der Stelle betrieben werden, an der die Datenerfassung aus der realen Welt geschieht. Genau hier sind jedoch Rechen-, Speicher- und Energieressourcen beschränkt.

Da sich neuronale Netze schnell weiterentwickeln, müssen Entwickler in der Lage sein, ihre Modelle einfach und schnell zu aktualisieren. Außerdem sind neuronale Netze meist Teil einer KI-Gesamtanwendung, sodass Entwickler neuronale und nicht-neuronale Netzwerkfunktionen integrieren müssen, damit die Anwendung in der realen Welt einsetzbar ist.

Die für Erstellung und Training von NN-Modellen verwendeten High Level Frameworks sind bereits graphenorientiert, aber die für die Inferenz verwendete Hardware ist in der Vergangenheit stecken geblieben. Ein großer Teil des Entwicklungsaufwands bei der Implementierung eines NN-Modells beinhaltet die Anpassung des Graphen an eine Nicht-Graphen-Architektur. Dies bedeutet sowohl längere Entwicklungszyklen als auch eine weniger effiziente Datenverarbeitung im Endprodukt.

GSP: effizient und programmierbar

Die Graph-Streaming-Processor- (GSP) Architektur ist die erste echte Graphen-native Architektur; sie wurde entwickelt, um die Herausforderungen bei der effizienten Verarbeitung neuronaler Netze und der Erstellung vollständiger KI-Anwendungen zu bewältigen. Dank ihrer voll programmierbaren Graph-Streaming-Architektur verarbeiten GSP-Chips Graphen effizienter, als CPU/GPU-Architekturen dies tun. Infolgedessen ermöglicht die GSP-Architektur Entwicklern, komplette KI-Anwendungen zu erstellen, diese für die Besonderheiten am Netzwerkrand zu optimieren, effizient in einem durchgängigen Streaming-Modus auszuführen und kontinuierlich zu iterieren, um mit der schnellen Fortentwicklung neuronaler Netze Schritt zu halten.

Die GSP-Architektur besteht aus einer Reihe von Graph-Streaming-Prozessoren, dedizierten mathematischen Prozessoren, Hardware-Steuerung und verschiedenen Arten von Daten-Caches. Die vier wichtigsten Merkmale der GSP-Archi­tek­tur, die ein effizientes Graph-Streaming kompletter KI-Anwendungen ermöglichen, sind: echte Parallelität auf der Aufgabenebene, minimaler Bedarf an externem Speicher, tiefgehende Vorausplanung der Hardware-Graphen und die vollprogrammierbare Architektur.

Weniger Datenbewegungen ins DRAM

Bei der herkömmlichen Ausführung von NN-Graphen werden die Informationen, die der Graph liefern kann, nicht genutzt. Die Knoten werden vollständig berechnet, ein Knoten nach dem anderen, ohne Berücksichtigung der Beziehungen zwischen den Knoten. Aus diesem Grund ist es notwendig,  alle von einem Knoten ausgehenden Aktivierungen – das können Millionen oder mehr Werte sein – zu speichern, damit sie als Input für einen anderen Knoten verwendet dienen können, der später berechnet wird. Wegen der enormen Menge der zu speichernder Daten sind diese an ein externes DRAM zu senden. Wenn die Daten für einen anderen Knoten benötigt werden, erfolgt eine Rückübertragung zum Prozessor.

Diese Datenbewegung verbraucht eine unglaubliche Menge an Energie und verur­sacht eine zusätzliche, leis­tungsmindernde Latenzzeit. Das Hin- und Herschieben dieser Datenmengen ist zum begrenzenden Faktor bei der Verarbeitung neuronaler Netze geworden und wird manchmal als „gegen die Speicherwand fahren“ bezeichnet. Durch den Graphen-nativen Charakter der GSP-Architektur wird diese Datenbewegung hin und her zu externen DRAMs drastisch minimiert. Nur der erste Input und der endgültige Output werden extern benötigt, während alles andere in der Mitte nur temporäre Zwischendaten sind. Das Ergebnis ist eine massive Reduzierung der benö­tigten Speicherbandbreite und des Stromverbrauchs.

Architektur für Ende-zu-Ende-Anwendungen

Mit der GSP-Architektur und der Picasso-Software-Entwicklungsplattform von Blaize können Entwickler Ende-zu-Ende-KI-Anwendungen erstellen, die nicht-neuronale Netzwerkfunktionen wie Bildsignalverarbeitung (zum Beispiel in Lidar- und Kamerasystemen im Auto) mit neuronalen Netzwerkfunktionen aus einem belie­bigen Machine Learning Framework integrieren. Das Graph-Framework übersetzt diese Graphen so, dass sie effizient auf dem GSP laufen. Die vollständig programmierbare GSP-Architektur ermöglicht es KI-Entwicklern also, komplette KI-Anwendungen auf der Graphenebene zu erstellen, diese effizient auf dem GSP auszuführen und die Anwendungen bei der Weiterentwicklung neuronaler Netze und Arbeitsabläufe einfach zu aktualisieren.

Diese Anwen­dung umfasst nicht-neuronale Bildsignalverarbeitungs­funk­tionen (Image Signal Processing, ISP), NN-Verar­bei­tung für semantische Segmen­tie­rung sowie Funk­tionen für die Sensor-Fusionierung, die allesamt durch Graphen repräsentierbar sind. Diese Funk­tionen sind zur voll­stän­digen Anwen­dung inte­griert und laufen aus­schließ­lich sehr effizient auf der GSP-Archi­tek­tur.

Der Beitrag beruht auf Unterlagen von Blaize.

(na)

Sie möchten gerne weiterlesen?

Unternehmen

Blaize

4370 Town Center Blvd Suite 240
CA 95762 El Dorado Hills
United States