Sequenzparallelismus
Die Aktivierungen entlang der Sequenzdimension auf mehrere Geräte aufteilen, um an den Speicher heranzukommen, den Tensorparallelismus nicht verteilen kann.
Tensorparallelismus teilt die Matrixmultiplikationen auf, lässt Layer-Normalisierung und Dropout aber ungeteilt, weil sie pro Token arbeiten und keine großen Gewichte enthalten. Die Folge: Jedes Gerät hält rund um diese Operationen eine vollständige Kopie der Aktivierungen vor, und bei langen Sequenzen ist genau das der Posten, der den Speicher sprengt. Megatron-LMs Lösung teilt stattdessen exakt diese Bereiche entlang der Sequenz auf und näht sie mit einem All-Gather beim Reingehen und einem Reduce-Scatter beim Rausgehen an die tensorparallelen Bereiche an — dasselbe Gesamtkommunikationsvolumen wie beim ohnehin nötigen All-Reduce, weshalb die Technik praktisch nichts extra kostet. Der Begriff wird leider auch für das Aufteilen der Attention-Berechnung selbst über die Sequenz verwendet, ein anderes, schwierigeres Problem, das inzwischen meist Kontextparallelismus heißt.