Aktiviertes fp8-Training für +4,3 % Verbesserung der "Zeit bis zu GPT-2", jetzt auf 2,91 Stunden gesenkt. Es ist auch erwähnenswert, dass, wenn Sie die Preise für 8XH100-Spotinstanzen verwenden, dieses GPT-2-Repro wirklich nur ~$20 kostet. Das ist also spannend - GPT-2 (vor 7 Jahren): zu gefährlich, um es zu veröffentlichen. GPT-2 (heute): neues MNIST! :) Sicherlich kann das gut unter 1 Stunde gehen. Ein paar weitere Worte zu fp8, es war ein bisschen kniffliger als ich erwartet hatte und es hat eine Weile gedauert, bis ich es erreicht habe, und selbst jetzt bin ich mir nicht 100 % sicher, ob es eine großartige Idee ist, wegen der insgesamt geringeren Unterstützung dafür. Auf dem Papier hat fp8 auf H100 2X die FLOPS, aber in der Praxis ist es viel weniger. Wir sind im tatsächlichen Trainingslauf nicht 100 % rechengebunden, es gibt zusätzliche Overheads durch hinzugefügte Skalierungsumwandlungen, die GEMMs sind auf GPT-2-Skala nicht groß genug, um den Overhead klar wert zu machen, und natürlich - bei niedrigerer Präzision ist die Qualität jedes Schrittes geringer. Für das zeilenweise Skalierungsrezept waren die Verlustkurven von fp8 vs bf16 ziemlich nah, aber es war netto langsamer. Für das tensorweise Skalieren trennten sich die Verlustkurven mehr (d.h. jeder Schritt ist von schlechterer Qualität), aber wir erhalten jetzt zumindest eine Beschleunigung (~7,3 %). Sie können die Leistung naiv wiederherstellen, indem Sie den Trainingshorizont erhöhen (Sie trainieren für mehr Schritte, aber jeder Schritt ist schneller) und hoffen, dass Sie netto besser abschneiden. In diesem Fall und insgesamt, indem ich ein wenig mit diesen Rezepten und Trainingshorizonten gespielt habe, bin ich bisher auf eine Beschleunigung von ~5 % gekommen. torchao berichtet in ihrem Papier von einer fp8-Trainingsbeschleunigung von 25 % für Llama3-8B (im Vergleich zu meinen ~7,3 %, ohne die Fähigkeit zu berücksichtigen), was näher an dem ist, was ich ursprünglich gehofft hatte, obwohl Llama3-8B ein viel größeres Modell ist. Das ist wahrscheinlich nicht das Ende der fp8-Saga. Es sollte möglich sein, die Dinge zu verbessern, indem man genau auswählt, auf welchen Schichten man es anwendet, und sorgfältiger mit den Zahlen im gesamten Netzwerk umgeht.