Povolil jsem trénink FP8 pro +4,3% zlepšení na "čas do GPT-2", nyní na 2,91 hodiny. Stojí také za zmínku, že pokud použijete ceny 8XH100 pro spotové instance, tato replika GPT-2 stojí opravdu jen ~$20. Takže je to vzrušující – GPT-2 (před 7 lety): příliš nebezpečné na vydání. GPT-2 (dnes): nový MNIST! :) Určitě to může trvat i pod 1 hodinu. Ještě pár slov k FP8, bylo to trochu složitější, než jsem čekal, a trvalo mi to nějakou dobu, než jsem se po tom dostal, a ani teď si nejsem stoprocentně jistý, jestli je to dobrý nápad, protože je to celkově menší podpora. Na papíře je FP8 na H100 dvojnásobek FLOPS, ale v praxi je to mnohem méně. Nejsme 100% omezeni výpočetní kapacitou v reálném tréninkovém běhu, je tu dodatečná režie z přidaných převodů škály, GEMM nejsou na GPT-2 měřítku dostatečně velké, aby režie jasně stála za to, a samozřejmě – při nižší přesnosti je kvalita každého kroku nižší. U řádkového škálování byly ztrátové křivky fp8 vs bf16 docela blízké, ale čistě to bylo pomalejší. Při tenzorovém škálování se ztrátové křivky více oddělily (tj. každý krok je horší kvality), ale nyní alespoň dostáváme zrychlení (~7,3 %). Můžete naivně obnovit výkon tím, že posunete tréninkový horizont (trénujete na více kroků, ale každý je rychlejší) a doufat, že nakonec vyjdete napřed. V tomto případě i celkově, když jsem si trochu pohrál s těmito recepty a tréninkovými horizonty, jsem zatím skončil s ~5% zrychlením. Torchao ve svém článku uvádí, že Llama3-8B FP8 zrychlení tréninku bylo o 25 % (oproti mým ~7,3 % bez zohlednění schopností), což je blíže tomu, co jsem původně očekával, i když Llama3-8B je mnohem větší model. To pravděpodobně není konec ságy FP8. Mělo by být možné věci zlepšit tím, že si vyberete a vytvoříte, na které vrstvy to přesně aplikovat, a budete opatrnější s numerikou v celé síti.