Inferencing

»Um Faktoren besser als alles andere auf dem Markt«

7. November 2022, 16:00 Uhr | Iris Stroh
Iyengar
Arun Iyengar, Untether AI: »Dadurch, dass Speicher und Verarbeitungselemente sehr nah zusammenliegen, fallen bei uns diese 90 Prozent Energieverbrauch für die Datenbewegung weg, wir erreichen ein sehr hohes Maß an Leistungseffizienz. Egal um welches Netz es sich handelt oder ob es um Inferenzen/s/W geht, wir sind typischerweise um den Faktor 8 bis 10 besser als die Konkurrenz.«
© Untether AI

Das kanadische Unternehmen Untether AI setzt auf eine At-Memory-Computing-Architektur. Im Gespräch mit Markt&Technik erklärt Arun Iyengar, CEO von Untether AI, unter anderem die damit verbundenen Vorteile, was hinter dem Chiplet-Ansatz steckt und welche Zielmärkte das Unternehmen adressiert.

Markt&Technik: Was steckt hinter dem »At Memory Computing«-Konzept?

Arun Iyengar: Die traditionelle Chip-Welt nutzt typischerweise die Von-Neumann-Architektur als eine Load-Store-Architektur. Das heißt, es gibt einen Speicher außerhalb des Chips, Caches und die Verarbeitungseinheit, egal ob CPU, ALU etc. Diese Speicherhierarchie hat lange, schmale Busse zur Folge, die viel Strom brauchen. In den meisten Anwendungen ist das typischerweise kein Problem. Geht es aber um KI-Inferencing, zeigt sich, dass bei einer Von-Neumann-Architektur über 90 Prozent der Energie für die Datenbewegungen gebraucht werden, sprich: weniger als 10 Prozent entfallen auf die eigentliche KI-Verarbeitung, ein ziemlich sinnloser Ansatz. Das gilt besonders dann, wenn man Inferencing im großen Maßstab durchführen möchte. Dann wird das Problem mit dem Energieverbrauch zu groß, als dass dieser Ansatz noch genutzt werden kann.

GPUs werden für das Training der KI-Modelle eingesetzt. Warum stellt hier die Von-Neumann-Architektur kein Problem dar?

Beim Training werden große Modelle genutzt, das heißt, man braucht viel Speicher, und auf dem Chip integrierter Speicher ist nun mal begrenzt. Ein Grund, warum HBM (High-Bandwidth Memory, Anmerkg. der Red.) im Trainingsbereich immer wichtiger wird. Das Training verläuft iterativ, um die Modelle zu verbessern, und dafür eignet sich die Von-Neumann-Architektur gut. Beim Inferencing fallen diese Iterationsschritte weg, denn es gibt ja schon ein trainiertes Modell. Das Modell eines neuronalen Netzes besteht aus Ein- und Ausgabeschicht plus den dazwischen liegenden Hidden Layers, und dafür müssen die ganze Zeit die Gewichtungen geladen werden, um die Berechnungen durchführen zu können. Und wenn die Datenbewegung für mehr als 90 Prozent des Energieverbrauchs verantwortlich ist, stellt sich natürlich die Frage, ob man nicht einfach den umgekehrten Weg geht, sprich: die gesamte Verarbeitung im Speicher durchzuführen. Das ist genau die Idee, die hinter »In-Memory Processing« steht.

Ein Ansatz, der ja auch verfolgt wird; Sie setzen aber nicht auf In-Memory, sondern auf At-Memory.

Ja, weil für In-Memory-Ansätze Analogtechniken genutzt werden, und das bringt einige Probleme mit sich. Zum Beispiel ist eine saubere Unterscheidung zwischen 0 und 1 in der Analogtechnik nicht so einfach, und damit ist die Reproduzierbarkeit der Ergebnisse nicht gewährleistet. Ein weiteres Problem ist die Auflösung. Wenn 1 oder 2 bit ok sind, funktioniert der Ansatz, aber sobald man auf 3 bit oder gar 8 oder 16 bit gehen möchte, wird die Analogtechnik zum echten Hemmschuh, was mit zusätzlichen Digitalschaltungen umgangen werden muss. Dazu kommt noch ein weiteres Problem, insbesondere wenn man Flash nutzt. ResNet50 hat 50 Hidden Layer zwischen Ein- und Ausgangsschicht. Flash ist eine Multi-Level-Technik, das heißt, der einzige Weg, wie das funktionieren könnte, bestünde darin, jeden der Layer in ein Level zu packen. Es gibt aber keine 50-Level-Zellen. Das wiederum hat zur Folge, dass der Durchsatz bei der Verarbeitung deutlich sinkt.

Und eine andere Speichertechnologie wie RRAM?

Das geht, das löst aber weder das Problem mit der Reproduzierbarkeit noch das mit der Auflösung. Das ist auch der Grund dafür, warum Unternehmen, die seit über zehn Jahren auf In-Memory Computing gehen, immer noch kein wirkliches Produkt auf den Markt gebracht haben.

Deshalb haben wir uns für einen anderen Weg entschieden. Der Vorteil der traditionellen Von-Neumann-Architektur besteht darin, dass sie mithilfe von CMOS-Technologien gefertigt werden kann. Der Vorteil von In-Memory-Computing besteht darin, dass die Datenbewegungen deutlich reduziert werden. Also war die Frage, wie man diese zwei Vorteile miteinander verbinden kann, und die Antwort lautete: At-Memory Computing. Wir setzen Speicher und Verarbeitungselemente direkt nebeneinander. Die Abstände sind so kurz, dass wir mit wirklich sehr kurzen Leitungen auskommen, plus der Tatsache, dass es ganz viele von diesen Verbindungsleitungen gibt – folglich erreichen wir eine enorme Bandbreite. Und nachdem wir einen CMOS-Prozess nutzen, haben wir auch keine Probleme mit der Reproduzierbarkeit oder der Genauigkeit.

Eignet sich dieser Ansatz gleichermaßen für Vision-Aufgaben wie die Verarbeitung von natürlicher Sprache?

Absolut. Wir haben das Verhältnis zwischen Speicher und Verarbeitungselemente so gewählt, dass es sich besonders gut für Matrix-/Vektormultiplikationen eignet. Unsere Architektur ist agnostisch gegenüber dem Typ des neuronalen Netzes, das heißt sie eignet sich für Vision-Net, die Verarbeitung natürlicher Sprache, Empfehlungssysteme etc.

Wie ist die Architektur aufgebaut?

Wir haben die Verarbeitungselemente und den dazugehörigen Speicher in Memory-Bänken organisiert. Eine Memory-Bank umfasst 512 Verarbeitungselemente und 385 kB SRAM. Jede Memory-Bank wiederum verfügt über einen RISC-V-Prozessor. In der ersten Generation sind 511 Memory-Banks integriert, das heißt, dass insgesamt über 260.000 Verarbeitungselemente zur Verfügung stehen, plus 511 RISC-V-Prozessoren.
Mit den RISC-V-Prozessoren kann unsere auf Matrix-/Vektoralgorithmen ausgelegte Architektur trotzdem kundenspezifische Aufgaben durchführen, was die Flexibilität extrem erhöht. Darüber hinaus ist die gesamte Architektur extrem leistungsfähig. Das zeigt sich auch daran, dass unsere erste Chip-Generation auf einem 16-nm-Prozess basiert und wir immer noch auf eine höhere Energieeffizienz und Leistungsfähigkeit kommen als konkurrierende ICs, die mithilfe von 7 nm oder ähnlich kleinen Strukturen gefertigt werden.

Mit unserer At-Memory-Computing-Architektur können wir eine MIMD- und SIMD-Verarbeitung kombinieren. Bei der SIMD-Verarbeitung führen 512 Verarbeitungselemente pro Speicher-Array einen einzigen Befehl aus; MIMD wiederum ermöglicht mithilfe der 511 Speicherbänke eine asynchrone Verarbeitung der Daten mit mehreren Befehlen. Unser erstes Produkt kommt auf 8 TOPS/W, unsere zweite Generation, die nächstes Jahr ausgeliefert wird, kommt auf 30 TOPS/W. Und damit sind wir sicherlich noch nicht am Ende der Fahnenstange angekommen.


  1. »Um Faktoren besser als alles andere auf dem Markt«
  2. Die Architektur ist hervorragend skalierbar

Das könnte Sie auch interessieren

Verwandte Artikel

Untether AI