Memory-Bottleneck

Memory-Bottleneck

Ein Memory-Bottleneck liegt vor, wenn ein Computer nicht durch seine Rechenleistung ausgebremst wird, sondern dadurch, wie schnell er Daten aus dem Speicher holen kann. Bei KI-Modellen ist das der häufigste Grund, warum teure Chips einen Großteil der Zeit warten statt rechnen.

Ein Computerchip muss zwei Dinge tun: rechnen und die Zahlen holen, mit denen er rechnet. Diese Zahlen liegen im Speicher, also in Bausteinen neben dem eigentlichen Rechenwerk. Der Weg vom Speicher zum Rechenwerk hat aber eine begrenzte Breite. Wenn der Chip schneller rechnen könnte, als der Nachschub eintrifft, spricht man von einem Memory-Bottleneck, zu Deutsch einem Speicher-Flaschenhals. Der Chip ist dann nicht zu langsam, er ist unterversorgt. Ein Bild dafür: eine Küche mit zwanzig Köchen, aber nur einer schmalen Tür, durch die Zutaten hereinkommen.

Warum teure Chips die meiste Zeit warten

In den letzten Jahrzehnten ist die Rechenleistung von Chips viel schneller gewachsen als die Geschwindigkeit des Speichers. Ein moderner Grafikchip schafft grob hundertmal mehr Rechenoperationen pro Sekunde, als er Zahlen nachladen kann. Für viele Aufgaben bedeutet das: Das Rechenwerk steht still und wartet. Fachleute nennen diese Lücke auch Memory-Wall, also Speichermauer.

Für Sprachmodelle ist das besonders bitter. Wenn ein Chatbot ein Wort nach dem anderen erzeugt, muss er für jedes einzelne Wort alle gespeicherten Werte des Modells einmal durchlesen. Bei einem großen Modell sind das schnell hunderte Gigabyte an Daten pro Wort. Die eigentliche Rechnung dazu ist vergleichsweise winzig. Die Antwortgeschwindigkeit hängt deshalb fast nur an der Speicherbandbreite, also daran, wie viele Daten pro Sekunde durch die Leitung passen.

Wirtschaftlich erklärt das eine Menge. Wer Rechenzeit in einem Rechenzentrum mietet, zahlt für die Zeit, in der der Chip belegt ist, nicht für die tatsächlich geleisteten Rechenoperationen. Ein Chip, der zu achtzig Prozent wartet, kostet trotzdem den vollen Preis. Deshalb gehört Speicher inzwischen zu den wichtigsten Verkaufsargumenten bei KI-Hardware.

Bandbreite, Cache und die Tricks dagegen

Speicher ist in Stufen aufgebaut, ähnlich wie ein Schreibtisch mit Regal und Keller. Ganz nah am Rechenwerk sitzt ein sehr kleiner, sehr schneller Zwischenspeicher, der Cache. Dahinter liegt der große Hauptspeicher der Grafikkarte, langsamer, aber viel geräumiger. Je weiter außen die Daten liegen, desto länger dauert der Zugriff. Der Bottleneck entsteht überall dort, wo Daten diese Grenze überqueren müssen.

Ein einfaches Maß dafür ist die arithmetische Intensität: wie viele Rechenoperationen ein Programm pro geladenem Byte ausführt. Ist dieser Wert hoch, lohnt sich das Laden, und der Chip ist ausgelastet. Ist er niedrig, dominiert der Speicherzugriff. Fachleute sagen dann, das Programm sei memory bound statt compute bound.

Gegenmittel gibt es mehrere. Man kann die Zahlen des Modells gröber speichern, etwa mit acht statt sechzehn Bit pro Wert; das halbiert die zu ladende Datenmenge. Man kann mehrere Anfragen bündeln, sodass sich ein einmal geladener Wert für viele Nutzer gleichzeitig lohnt. Und man kann Rechenschritte so umbauen, dass Zwischenergebnisse im Cache bleiben, statt in den Hauptspeicher zu wandern. Der bekannteste Vertreter dieser Idee im KI-Bereich heißt FlashAttention.

HBM, Nvidia und die Schlagzeilen dazu

Wenn in Wirtschaftsnachrichten von HBM die Rede ist, geht es genau um dieses Problem. HBM steht für High Bandwidth Memory, also Speicher mit besonders breiter Anbindung. Die Chips werden dabei gestapelt und direkt neben dem Rechenwerk verbaut, statt über lange Leiterbahnen angeschlossen zu werden. Hersteller wie SK Hynix, Samsung und Micron verdienen daran erhebliche Summen, und zeitweise war HBM knapper als die Rechenchips selbst.

Auch bei Produktvorstellungen taucht das Thema auf. Wenn ein neuer KI-Beschleuniger beworben wird, stehen neben der Rechenleistung fast immer die Speichergröße in Gigabyte und die Bandbreite in Terabyte pro Sekunde. Für den Betrieb von Sprachmodellen sagt die zweite Zahl oft mehr über die reale Geschwindigkeit aus als die erste.

Ein verbreiteter Irrtum ist, mehr Speicher mache automatisch schneller. Mehr Kapazität erlaubt größere Modelle, beschleunigt aber nichts, solange die Leitung gleich breit bleibt. Kapazität und Bandbreite sind zwei verschiedene Dinge. Wer im Datenblatt nur auf die Gigabyte schaut, übersieht genau den Engpass, um den es hier geht.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.