KI-Hardware und Software-Stack
Die Inferenz großer Sprachmodelle gliedert sich in eine Phase, in der der Eingabetext gebündelt verarbeitet wird (Prefill), und eine Phase, in der die Ausgabe Token für Token erzeugt wird (Decode). Welche Kombination der jeweils leistungsbestimmenden Größen ist richtig (bei kleinem Batch)?
- APrefill: Speicherbandbreite, Decode: Rechenleistung
- BPrefill: Rechenleistung, Decode: Speicherbandbreite
- CFür beide die Geschwindigkeit des Speichermediums (Storage)
Antwort und Erläuterung anzeigen
Antwort: B. Prefill: Rechenleistung, Decode: Speicherbandbreite
Beim Prefill werden einige hundert bis tausend Eingabe-Token gemeinsam berechnet, sodass die Gewichte für viele Token wiederverwendet werden; es handelt sich um Matrix-Matrix-Produkte, und die Verarbeitung ist rechenbegrenzt. Beim Decode müssen für jedes erzeugte Token alle Gewichte gelesen werden, obwohl nur die Berechnung für ein Token anfällt; die arithmetische Intensität ist niedrig, und die Verarbeitung ist speicherbegrenzt. Die Decode-Geschwindigkeit wird daher im Wesentlichen durch Speicherbandbreite ÷ Gewichtsgröße bestimmt.