什麼是FlashAttention
將注意力的運算分成圖磚,在晶片上的記憶體中進行,而不把龐大的中間表寫出到 HBM 的高速實作。結果與一般的注意力相同。
日文名稱: FlashAttention
「FlashAttention」出現在1領域的1道練習題中(AI硬體與軟體堆疊等)。
這個名詞所屬的領域: AI硬體與軟體堆疊
將注意力的運算分成圖磚,在晶片上的記憶體中進行,而不把龐大的中間表寫出到 HBM 的高速實作。結果與一般的注意力相同。
日文名稱: FlashAttention
「FlashAttention」出現在1領域的1道練習題中(AI硬體與軟體堆疊等)。
這個名詞所屬的領域: AI硬體與軟體堆疊
正確答案:A. 將計算分成圖塊(tile),在晶片上的記憶體中進行,不把n×n的大型中間表寫出到HBM,藉此減少記憶體的讀寫
在按直覺的實作中,會把n×n的表寫入HBM,為了softmax而重讀,又為了與Value相乘而再讀一次,因此記憶體的讀寫決定了效能。FlashAttention將Query與Key、Value分成區塊載入共享記憶體,一邊逐步更新softmax一邊一氣呵成地完成計算,不把表寫出到HBM。計算量雖然相同,但記憶體的讀寫大幅減少而變快。
FlashAttention將Query與Key、Value分成區塊載入共享記憶體,一邊逐步更新softmax一邊一氣呵成地完成計算,不把表寫出到HBM。
FlashAttention等高速注意力實作的主要概念,下列何者正確?HBM(高頻寬記憶體) 共享記憶體(GPU shared memory) 反向傳播(Backpropagation) 全歸約(All-reduce) 批次大小(Batch size) 注意力機制(Attention mechanism) 知識蒸餾(Knowledge distillation) 計算圖(Computational graph) 訓練後量化(Post-training quantization) 剪枝(Pruning)