FP8トレーニングを有効にし、「GPT-2までの時間」に+4.3%の改善があり、現在は2.91時間に短縮されました。また、8XH100のスポットインスタンス価格を使う場合、このGPT-2のリプリカは実際には約20ドルほどです。だからこれはワクワクするね— GPT-2(7年前):リリースするには危険すぎる。 GPT-2(本日):新しいMNIST!:) 確かに1時間未満で済むこともあります。 FP8についてもう少し話すと、思ったより少し難しくて、手をつけるまでに時間がかかりました。今でもサポートが少ないため、これが良いアイデアかどうか100%確信が持てません。理論上、H100のFP8はFLOPSの2倍ですが、実際にはかなり少ないです。実際のトレーニング実行では100%計算に縛られているわけではなく、スケール変換の追加による余計なオーバーヘッドがあり、GEMMはGPT-2スケールで見るとオーバーヘッドに見合うほど大きくありません。もちろん、精度が低いと各ステップの質は低くなります。rowwise scaling レシピでは、FP8とBF16の損失曲線はかなり近いものの、ステップアップはより遅かったです。テンソル方向のスケーリングでは損失曲線の分離が大きくなり(つまり各ステップの品質が悪くなります)、少なくとも速度アップ(~7.3%)が得られます。トレーニング期間を上げて(ステップ数を増やすと、一歩一歩が速くなる)ことで無邪気にパフォーマンスを取り戻し、結果的に有利になることを期待できます。今回も全体として、これらのレシピを試したりトレーニングホライズンを少ししたりしてみた結果、今のところスピードアップは~5%できました。Torchaoの論文では、Llama3-8B FP8のトレーニング速度向上が25%(能力を除けば私の約7.3%に対し)と報告されており、これは私が最初に期待していたものに近いですが、Llama3-8Bの方がはるかに大きなモデルです。これがFP8の物語の終わりではないでしょう。どのレイヤーに正確に適用するかを選び、ネットワーク全体の数値をより慎重に扱うことで改善できるはずです。