O treinamento FP8 foi ativado para uma melhora de +4,3% para "tempo até GPT-2", reduzindo para 2,91 horas agora. Também vale notar que, se você usar preços de instâncias à vista do 8XH100, essa reprodução GPT-2 custa apenas ~$20. Então isso é empolgante - GPT-2 (há 7 anos): perigoso demais para liberar. GPT-2 (hoje): novo MNIST! :) Com certeza isso pode ir bem abaixo de 1 hora. Mais algumas palavras sobre FP8, foi um pouco mais complicado do que eu esperava e demorei um pouco para pegá-lo, e mesmo agora não tenho 100% de certeza se é uma boa ideia por causa do suporte geral reduzido. No papel, FP8 no H100 é 2X o FLOPS, mas na prática é bem menor. Não estamos 100% limitados ao cálculo na execução de treino propriamente dita, há sobrecarga extra devido a conversões adicionais de escala, os GEMMs não são grandes o suficiente na escala GPT-2 para tornar a sobrecarga claramente válida, e claro - em menor precisão a qualidade de cada etapa é menor. Para a receita de escalonamento por rowwise, as curvas de perda fp8 vs bf16 estavam bem próximas, mas a diferença estava passando mais devagar. Para a escala tensorial, as curvas de perda se separaram mais (ou seja, cada passo é de qualidade pior), mas agora pelo menos temos um aumento de aceleração (~7,3%). Você pode ingenuamente recuperar o desempenho ao avançar no horizonte de treinamento (você treina para mais passos, mas cada passo é mais rápido) e torcer para que no gol você saia vencedor. Neste caso e no geral, brincando um pouco com essas receitas e horizontes de treino, até agora acabei com ~5% de aceleração. Torchao no artigo deles relata um aumento de velocidade de treinamento Llama3-8B fp8 de 25% (contra meus ~7,3% sem considerar a capacidade), o que é mais próximo do que eu esperava inicialmente, embora Llama3-8B seja um modelo muito maior. Provavelmente isso não é o fim da saga FP8. Deveria ser possível melhorar as coisas escolhendo exatamente em quais camadas aplicar e sendo mais cuidadoso com os números na rede.