HotChips 2019 Teslas vermeintlicher Superchip unter der Lupe

So sieht Teslas FSD-Computer aus

Ziel beim Design des FSD-Computers war eine Leistungsaufnahme unter 100 W, was bei zwei redundanten SoCs dazu führte, dass diese unterhalb von 40 W bleiben mussten. Der Chip selbst wird bei Samsung in dessen 14-nm-FinFET-Prozess produziert, hat eine Fläche von 260 mm2 und implementiert 6 Milliarden Transistoren.

Wie das 3. Bild der Bilderstrecke unten zeigt, finden sich neben der KI-Engine auch noch 12 CPU-Cores und eine GPU auf dem Chip, sie übernehmen das Post-Prozessing der Daten sowie Steuerungsaufgaben. Auf der Tonspur wurde erläutert, dass die GPU-IP von Nvidia stamme, die CPUs stammen von Arm, es wurde aber nichts ausgeführt, um welche Cortex-Cores es sich genau handelt.

Die KI-Engine zur Verarbeitung neuronaler Netzwerkoperationen besteht aus zwei identischen Instanzen, ist mit 2 GHz getaktet und jede Instanz beinhaltet 96x96 MAC-Einheiten mit einem Durchsatz von 36.8 TOPS. Dazu kommen SIMD-, ReLU- und Pool-Einheiten und 32 MB SRAM. ReLU steht für “Rectifier Linear Unit”, im Kontext neuronaler Netze ist ein Rectifier eine Aktivierungsfunktion eines künstlichen Neurons. Die Pooling-Einheit dient dazu, überflüssige Informationen zu eliminieren. Zur Objekterkennung in Bildern etwa ist die exakte Position einer Kante im Bild von vernachlässigbarem Interesse – die ungefähre Lokalisierung eines Features ist hinreichend.

Tesla hat die KI-Engines aus einem Grund entwickelt. Die Aktivität jedes Neurons wird über eine diskrete Faltung berechnet. Eine einzelne Faltung wird durch eine 7-fach verschachtelte Schleife abgebildet: Für jedes Bild, für jeden Ausgangskanal, für jede Ausgangsposition in X-Richtung, für jede Asugangsposition in Y-Richtung, für jeden Eingangskanal, für jeden Y-Eingang und für jeden X-Eingang. Über 99 % aller Operationen sind dabei MAC-Operationen, ReLUs stehen für rund 0,2 % und Pooling für 0,1 % der Operationen, sie erscheinen daher auf den ersten Blick vernachlässigbar.

Wenn es aber durch dedizierte Hardware gelingen würde, die MAC-Berechnungen um Größenordnungen zu beschleunigen, wären ReLUs/Pooling auf Allzweck-CPUs auf einmal viel relevanter für den Gesamtdurchsatz, daher hat Tesla dedizierte Quantisierungs- und Pooling-Hardware implementiert. Bild 4 in der Bilderstrecke zeigt, wie die genannten Faltungen in der Hardware abgebildet werden.

Bilder: 9

Tesla's SoC für autonomes Fahren

Der kalifornische Hersteller behauptet, mit dieser Hardware autonomes Fahren der Level 4 und 5 realisieren zu können. Herzstück ist eine eigenentwickelte KI-Engine.

Tesla implementiert ein sehr limitierten, aber für die Anwendung leistungsfähigen Befehlssatz (siehe Bilderstrecke). Es gibt nur 8 Instruktionen, die je nach Komplexität und etwaigen Erweiterungen 32 bis 256 bit breit sein können. Die Out-of-Order-Befehlsausführung ist auf die Instruktionen DMA-Lesen, DMA-Schreiben und Compute beschränkt.

Das folgende Bild in der Bilderstrecke zeigt die gesamte MIkroarchitektur der KI-Engine auf einen Blick. Auffällig sind die bis zu 256 bit breiten Datenpfade, um die Bandbreite speziell von und zum SRAM zu maximieren. Auf den folgenden Bildern sind die SIMD- und Pooling-Einheiten noch detaillierter beschrieben.

Im Ergebnis konnte Tesla mit dem FSD die Rechenleistung gegenüber der aktuell verbauten Hardware-Plattform der Version 2.5. um Faktor 21 steigern, die Leistungsaufnahme stieg lediglich von 57 auf 72 W, wobei jede KI-Instanz 15 W aufnimmt.

Durch die hohe Integrationsdichte auf den eigenentwickelten SoCs sind die Plattform-Kosten sogar 20 % geringer als zuvor.