Zubnet AIसीखेंWiki › Flash Attention
बुनियादी ढांचा

Flash Attention

इसे भी कहा जाता है: FlashAttention, FlashAttention-2
Attention mechanism का एक GPU-optimized implementation जो मानक attention से 2–4 गुना तेज़ है और काफी कम memory का उपयोग करता है। Flash Attention यह नहीं बदलता कि attention क्या गणना करता है, बल्कि GPU hardware पर गणना कैसे की जाती है इसे पुनर्गठित करता है — GPU HBM और on-chip SRAM के बीच धीमे memory transfers को कम करता है।

यह क्यों मायने रखता है

Flash Attention आधुनिक AI में संभवतः सबसे प्रभावशाली systems optimization है। इसने attention के memory उपयोग को quadratic से near-linear (व्यावहारिक रूप से) कम करके long-context models को व्यावहारिक बनाया, सीधे 4K से 128K+ context windows तक की छलांग को सक्षम किया। प्रत्येक प्रमुख LLM इसका उपयोग करता है। Flash Attention के बिना, आज के long-context models निषेधात्मक रूप से महंगे होते।

गहन अध्ययन

मुख्य अंतर्दृष्टि (Dao et al., 2022): मानक attention पूरे N×N attention matrix को GPU HBM (high bandwidth memory) में materialize करता है, जो memory-intensive (sequence length में quadratic) और धीमा (HBM bandwidth bottleneck है) दोनों है। Flash Attention यह matrix कभी materialize नहीं करता। इसके बजाय, यह attention को tiles में गणना करता है, Q, K, V के छोटे blocks को तेज़ on-chip SRAM में लोड करता है, partial results की गणना करता है, और उन्हें accumulate करता है — एक तकनीक जिसे "tiling" या "kernel fusion" कहते हैं।

Memory की बचत

मानक attention N×N attention matrix स्टोर करता है, जिसके लिए O(N²) memory चाहिए। 128K context और 128 attention heads के साथ, यह सैकड़ों gigabytes है। Flash Attention softmax को incrementally compute करके और पूरी matrix कभी स्टोर न करके O(N) memory का उपयोग करता है। यही वह चीज़ है जिसने मौजूदा hardware पर 128K–1M context windows को संभव बनाया। FlashAttention-2 ने GPU thread blocks में बेहतर parallelization करके throughput को और बेहतर किया।

IO-Aware Algorithm Design

Flash Attention एक व्यापक सिद्धांत का उदाहरण है: आधुनिक hardware पर, bottleneck अक्सर compute नहीं बल्कि memory bandwidth होता है। GPUs प्रति सेकंड trillions operations कर सकते हैं लेकिन HBM से केवल सैकड़ों gigabytes प्रति सेकंड read/write कर सकते हैं। जो algorithms memory traffic को कम करते हैं (भले ही अतिरिक्त computation की कीमत पर) वे अक्सर जीतते हैं। यह "IO-aware" दृष्टिकोण प्रभावित कर रहा है कि पूरा क्षेत्र AI workloads के लिए algorithm design के बारे में कैसे सोचता है।

संबंधित अवधारणाएँ

← सभी शब्द
← Feedforward Network FLOPs →