To jest flash attention forward: `TestPcontig.test_flash_attention` Nie ma nawet "fuzji" wokół tego, wzór jest oczywisty z przepływu danych. Backward brakuje dwóch sztuczek: wyjście q.grad i k.grad razem oraz wybór ponownego obliczenia macierzy wyników zamiast jej zapisania.
Gdy automatyczne wsteczne skupienie uwagi stanie się normą, wyobraź sobie inne wzorce, które to odkryje. Dla szybkości pracujemy nad rozwiązaniem podobnym do thunderkittens, które dzieli wszystko na kafelki 16x16. Koniec z rozważaniem "lokalnych", co jest również ofertą Tritona.
Czy ludzie potrafią czytać te diagramy? W porównaniu do postów z kodem, te posty nie zyskują dużego zainteresowania, ale uważam, że diagram jest znacznie łatwiejszy do przemyślenia.
10,99K