CODA: Wie Transformer-Blöcke als GEMM-Epilogue-Programme neu geschrieben werden

CODA: Rewriting Transformer Blocks as GEMM-Epilogue Programs

105matt_d💬 12
CODA: Wie Transformer-Blöcke als GEMM-Epilogue-Programme neu geschrieben werden

Wir stellen CODA vor, eine GPU-Kernel-Abstraktion, die viele Transformer-Operationen als GEMM-plus-epilogue-Programme ausdrückt. Dies ermöglicht es, Berechnungen wie Normalisierung und Aktivierungen auszuführen, während die GEMM-Ausgabetile noch auf dem Chip verbleiben, bevor sie in den Speicher geschrieben werden. Unser Ansatz kombiniert die Produktivität von Frameworks mit der Effizienz von Hardware und zeigt hohe Leistung bei sowohl menschlich als auch von LLMs verfassten Kernen.

"Die Datenbewegung wird zu einem zunehmend wichtigen Flaschenhals in ansonsten hoch optimierten Trainingsstapeln, da große Zwischentensoren wiederholt durch den globalen Speicher bewegt werden, während kaum Arithmetik ausgeführt wird."