---
title: "FlashAttention-2 (EL)"
source: "https://systems-analysis.info/int/FlashAttention-2_(EL)"
wiki: "systems-analysis.info/int"
article: "FlashAttention-2_(EL)"
language: "el"
categories:
  - "Category:Greek"
  - "Category:Large language models"
  - "Category:Machine learning"
revision_id: 2197
wiki_created_at: 2026-09-06T22:59:59Z
wiki_modified_at: 2026-09-06T22:59:59Z
downloaded_at: 2026-09-07T22:49:47Z
---

# FlashAttention-2 (EL)

**FlashAttention-2** — είναι ένας βελτιωμένος αλγόριθμος σχεδιασμένος για τον υπολογισμό του μηχανισμού attention σε μεγάλα γλωσσικά μοντέλα (LLM). Ο αλγόριθμος αναπτύχθηκε από τον **Tri Dao** και ερευνητές του Πανεπιστημίου Stanford και παρουσιάστηκε τον Ιούλιο του 2023<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_main-1)</sup>. Ο κύριος στόχος του είναι να επιταχύνει σημαντικά την εκπαίδευση και το inference (εξαγωγή αποτελεσμάτων) μοντέλων transformer μέσω πιο αποδοτικής χρήσης των υλικών πόρων GPU, διατηρώντας παράλληλα πλήρη ταυτότητα υπολογισμών με τον τυπικό μηχανισμό attention, δηλαδή **χωρίς απώλεια ακρίβειας**.

Το FlashAttention-2 αποτελεί λογική συνέχεια του αλγορίθμου **FlashAttention**, που παρουσιάστηκε από την ίδια ομάδα το 2022. Η νέα έκδοση επιλύει το πρόβλημα της ατελούς φόρτωσης GPU που παρατηρήθηκε στον προκάτοχό του και επιτυγχάνει σχεδόν διπλάσια αύξηση ταχύτητας σε σχέση με την πρώτη έκδοση.

## Προϋποθέσεις: το πρόβλημα του attention στους transformers

Ο τυπικός μηχανισμός self-attention αποτελεί σημείο συμφόρησης κατά την εργασία με μακριές ακολουθίες κειμένου σε transformers. Η υπολογιστική του πολυπλοκότητα και η κατανάλωση μνήμης αυξάνονται **τετραγωνικά** (O(N²)) ανάλογα με το μήκος της ακολουθίας (N), γεγονός που επιβάλλει σοβαρούς περιορισμούς στο μέγιστο μήκος πλαισίου και στην κλιμακωσιμότητα των LLM<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_main-1)</sup>.

Για την επίλυση αυτού του προβλήματος, το 2022 παρουσιάστηκε ο αλγόριθμος **FlashAttention**<sup>[\[2\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-huggingface_optim-2)</sup>. Οι βασικές ιδέες του:

- **Λήψη υπόψη της ιεραρχίας μνήμης GPU (IO-awareness)**: Ο αλγόριθμος ελαχιστοποιεί τις δαπανηρές λειτουργίες ανάγνωσης/εγγραφής μεταξύ της αργής μνήμης GPU (HBM) και της γρήγορης στατικής μνήμης (SRAM) στο chip.
- **Επεξεργασία σε μπλοκ (tiling)**: Οι υπολογισμοί χωρίζονται σε μικρά μπλοκ (tiles) που επεξεργάζονται στη γρήγορη SRAM, αποφεύγοντας έτσι την υλοποίηση του πλήρους πίνακα attention στη μνήμη.

Αυτό επέτρεψε την επίτευξη **γραμμικής** αύξησης κατανάλωσης μνήμης (O(N)) και επιτάχυνση κατά 2–4 φορές σε σχέση με τις τυπικές υλοποιήσεις<sup>[\[2\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-huggingface_optim-2)</sup>. Το FlashAttention απέκτησε ευρεία διάδοση και συνέβαλε στην εμφάνιση μοντέλων με σημαντικά αυξημένο πλαίσιο, για παράδειγμα, από 2–4 χιλ. token (GPT-3) σε 128 χιλ. (GPT-4) και περισσότερα<sup>[\[3\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-tridao_blog_fa3-3)</sup>. Έτσι, στο μοντέλο **Falcon-40B**, η χρήση FlashAttention επιτάχυνε το inference κατά 3 φορές και τη συνολική απόδοση γενικής δημιουργίας κατά 5 φορές σε σχέση με το GPT-3<sup>[\[4\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-e2e_analysis-4)</sup>.

## Ανάπτυξη και στόχοι του FlashAttention-2

Παρά την επιτυχία, η πρώτη έκδοση του FlashAttention δεν χρησιμοποιούσε πλήρως τους υπολογιστικούς πόρους GPU. Στις κάρτες γραφικών **NVIDIA A100**, η απόδοση έφτανε μόλις **25–40%** του θεωρητικού μέγιστου (FLOPs/s)<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_main-1)</sup>. Η κύρια αιτία ήταν η μη βέλτιστη φόρτωση των Streaming Multiprocessors και οι περιττές λειτουργίες κοινής μνήμης<sup>[\[5\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-openreview_fa2-5)</sup>.

Στόχος του **FlashAttention-2** ήταν η περαιτέρω επιτάχυνση υπολογισμών μέσω πιο αποδοτικής παραλληλοποίησης εργασιών και ελαχιστοποίησης βοηθητικών λειτουργιών. Ο αλγόριθμος ξαναγράφηκε πλήρως χρησιμοποιώντας χαμηλού επιπέδου primitives της βιβλιοθήκης **NVIDIA CUTLASS 3.x** για την επίτευξη μέγιστης απόδοσης<sup>[\[6\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-hazyresearch_blog-6)</sup>.

## Τεχνική αρχιτεκτονική και αρχές λειτουργίας

Το FlashAttention-2 εισάγει τρεις βασικές βελτιώσεις για την αύξηση του παραλληλισμού και της αποδοτικότητας<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_main-1)</sup>:

### 1. Ελαχιστοποίηση μη-matmul λειτουργιών

Ο αλγόριθμος μειώνει τον αριθμό βοηθητικών λειτουργιών κινητής υποδιαστολής που δεν αποτελούν πολλαπλασιασμό πινάκων (non-matmul FLOPs). Επειδή οι tensor cores της GPU είναι βελτιστοποιημένοι ειδικά για matmul λειτουργίες (GEMM) και τις εκτελούν έως 16 φορές γρηγορότερα, αυτή η αλλαγή επιτρέπει τη χρήση των πιο αποδοτικών μπλοκ GPU για το μεγαλύτερο μέρος του χρόνου.

### 2. Βελτιωμένος παραλληλισμός

Στο αρχικό FlashAttention, η εργασία για ένα «κεφάλι» attention δεν παραλληλοποιούνταν, γεγονός που οδηγούσε σε αδράνεια κατά τη διάρκεια μακριών ακολουθιών και μικρών μεγεθών batch. Το FlashAttention-2 εισάγει **διαμπλοκό παραλληλισμό**: οι υπολογισμοί για ένα κεφάλι attention κατανέμονται πλέον μεταξύ διαφορετικών Streaming Multiprocessors της GPU, αυξάνοντας σημαντικά τη φόρτωσή τους.

### 3. Βελτιστοποιημένη κατανομή εργασίας εντός μπλοκ

Σε επίπεδο ενός υπολογιστικού μπλοκ, η εργασία αναδιανεμήθηκε μεταξύ ομάδων νημάτων (warps) για τη μείωση της ανταλλαγής δεδομένων μέσω κοινής μνήμης (shared memory). Αυτό μειώνει τον αριθμό περιττών λειτουργιών ανάγνωσης/εγγραφής που απαιτούνται για την κανονικοποίηση Softmax.

## Απόδοση και αποδοτικότητα

Χάρη στις αρχιτεκτονικές βελτιώσεις, το FlashAttention-2 επιδεικνύει σημαντική αύξηση απόδοσης:

- **Διπλάσια επιτάχυνση**: Ο αλγόριθμος λειτουργεί περίπου **2 φορές γρηγορότερα** σε σχέση με την πρώτη έκδοση του FlashAttention<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_main-1)</sup>.
- **Υψηλή χρησιμοποίηση GPU**: Στη GPU **NVIDIA A100** επιτυγχάνεται **50–73%** της θεωρητικής μέγιστης ρυθμαπόδοσης (TFLOPs), που πλησιάζει την αποδοτικότητα βελτιστοποιημένων λειτουργιών matmul (GEMM)<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_main-1)</sup>.
- **Ρεκόρ ταχύτητας υπολογισμών**:
  - Στη GPU **A100** επιτυγχάνεται ταχύτητα έως **225 TFLOP/s** σε πλήρη κύκλο εκπαίδευσης μοντέλου τύπου GPT, που αντιστοιχεί σε 72% χρησιμοποίηση υπολογιστικών μπλοκ. Για σύγκριση, το τυπικό attention στις ίδιες συνθήκες φόρτιζε τη GPU σε λιγότερο από 100 TFLOP/s<sup>[\[7\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_pdf-7)</sup>.
  - Στη GPU **H100** η απόδοση φτάνει τα **335 TFLOP/s**<sup>[\[7\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_pdf-7)</sup>.

Αυτή η αύξηση απόδοσης επιτρέπει, για παράδειγμα, την εκπαίδευση μοντέλου με παράθυρο πλαισίου **16k** token στον ίδιο χρόνο που προηγουμένως απαιτούνταν για παράθυρο **8k** token<sup>[\[5\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-openreview_fa2-5)</sup>. Σημαντικό είναι ότι ο αλγόριθμος παραμένει **ακριβής** και ντετερμινιστικός, επομένως η εφαρμογή του δεν επηρεάζει την ποιότητα των προβλέψεων του μοντέλου<sup>[\[8\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-raschka_blog-8)</sup>.

## Εφαρμογή και ενσωμάτωση στο οικοσύστημα

Το FlashAttention-2 έγινε γρήγορα τυπικό εργαλείο στο οικοσύστημα LLM. Έχει ενσωματωθεί σε πολλά δημοφιλή frameworks και βιβλιοθήκες:

- **PyTorch**: Εγγενής υποστήριξη.
- **Hugging Face Transformers**: Η υποστήριξη ενεργοποιείται με την παράμετρο \`attn_implementation="flash_attention_2"\` κατά τη φόρτωση μοντέλου<sup>[\[9\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-linkedin_younes-9)</sup>. Συμβατό με δεκάδες αρχιτεκτονικές (GPT, Llama, Falcon, BERT κ.ά.)<sup>[\[10\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-huggingface_gpu_infer-10)</sup>.
- **TensorRT-LLM**, **xFormers** και **Triton**: Ο αλγόριθμος έχει υλοποιηθεί για αυτές τις πλατφόρμες, εξασφαλίζοντας ευρεία εφαρμογή<sup>[\[7\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_pdf-7)</sup>.

Η ενσωμάτωση επιτρέπει τον εύκολο συνδυασμό του FlashAttention-2 με άλλες μεθόδους βελτιστοποίησης, όπως η κβαντοποίηση (GPTQ, QLoRA) και το αποδοτικό fine-tuning (PEFT)<sup>[\[9\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-linkedin_younes-9)</sup>.

## Σύγκριση με μεταγενέστερες εκδόσεις

### FlashAttention-3

Η έρευνα στον τομέα βελτιστοποίησης του attention συνεχίζεται. Τον Ιούλιο του 2024 ο Tri Dao παρουσίασε το **FlashAttention-3**, που στοχεύει στην αξιοποίηση των δυνατοτήτων της αρχιτεκτονικής GPU **NVIDIA Hopper** (H100/H200). Βασικές καινοτομίες<sup>[\[3\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-tridao_blog_fa3-3)</sup>:

- **Υποστήριξη FP8**: Χρησιμοποιεί 8-bit υπολογισμούς κινητής υποδιαστολής για περαιτέρω επιτάχυνση.
- **Ασύγχρονες λειτουργίες**: Αξιοποιεί πιο αποδοτικά τις ασύγχρονες δυνατότητες της GPU.

Το FlashAttention-3 παρέχει επιτάχυνση **1,5–2 φορές** σε σχέση με το FlashAttention-2 στη GPU H100, φτάνοντας απόδοση έως **740 TFLOP/s** (75% του θεωρητικού μέγιστου)<sup>[\[11\]](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_note-arxiv_fa3-11)</sup>.

## Βιβλιογραφία

- Dao, T. (2023). *FlashAttention-2: Faster Attention with Better Parallelism and Work Partitioning*. arXiv:2307.08691.
- Dao, T. et al. (2022). *FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness*. arXiv:2205.14135.
- Shah, J. et al. (2024). *FlashAttention-3: Fast and Accurate Attention with Asynchrony and Low-precision*. arXiv:2407.08608.
- Kwon, W. et al. (2023). *Efficient Memory Management for Large Language Model Serving with PagedAttention*. arXiv:2309.06180.
- Ye, Z. et al. (2025). *FlashInfer: Efficient and Customizable Attention Engine for LLM Inference Serving*. arXiv:2501.01005.
- Chen, Y. et al. (2023). *FlashDecoding++: Faster Large Language Model Inference on GPUs*. arXiv:2311.01282.
- Liu, Y. et al. (2024). *FastAttention: Extending FlashAttention-2 to NPUs and Low-Resource GPUs*. OpenReview: 76NYyOrnfk.
- Dege, P. et al. (2025). *FlashMLA-ETAP: Efficient Transpose Attention Pipeline for Accelerating MLA Inference on NVIDIA H20 GPUs*. arXiv:2506.01969.
- Wang, G. et al. (2024). *FlashMask: Efficient and Rich Mask Extension of FlashAttention*. OpenReview: rog0J435OO.
- Abbott, V.; Zardini, G. (2025). *FlashAttention on a Napkin: A Diagrammatic Approach to Deep Learning IO-Awareness*. arXiv:2412.03317.

## Παραπομπές

1.  <span id="cite_note-arxiv_main-1">↑ <sup>[1.0](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_main_1-0)</sup> <sup>[1.1](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_main_1-1)</sup> <sup>[1.2](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_main_1-2)</sup> <sup>[1.3](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_main_1-3)</sup> <sup>[1.4](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_main_1-4)</sup> <sup>[1.5](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_main_1-5)</sup> Дао, Три. «FlashAttention-2: Faster Attention with Better Parallelism and Work Partitioning». *arXiv:2307.08691* \[cs.LG\], 17 июля 2023 г. <a href="https://arxiv.org/abs/2307.08691" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-huggingface_optim-2">↑ <sup>[2.0](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-huggingface_optim_2-0)</sup> <sup>[2.1](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-huggingface_optim_2-1)</sup> «Optimizing LLMs for Speed and Memory». *Hugging Face Documentation*. <a href="https://huggingface.co/docs/transformers/v4.42.0/en/llm_tutorial_optimization" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-tridao_blog_fa3-3">↑ <sup>[3.0](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-tridao_blog_fa3_3-0)</sup> <sup>[3.1](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-tridao_blog_fa3_3-1)</sup> Дао, Три. «FlashAttention-3: Fast and Accurate Attention with Asynchrony and Low-precision». *Tri Dao's Blog*. <a href="https://tridao.me/blog/2024/flash3/" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-e2e_analysis-4">[↑](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-e2e_analysis_4-0) «FlashAttention vs FlashAttention-2 - an Analysis». *E2E Networks Blog*. <a href="https://www.e2enetworks.com/blog/shades-of-attention-flashattention-vs-flashattention-2-a-comprehensive-study" class="external autonumber" rel="nofollow">[4]</a></span>
5.  <span id="cite_note-openreview_fa2-5">↑ <sup>[5.0](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-openreview_fa2_5-0)</sup> <sup>[5.1](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-openreview_fa2_5-1)</sup> «FlashAttention-2: Faster Attention with Better Parallelism and Work Partitioning». *OpenReview*. <a href="https://openreview.net/forum?id=mZn2Xyh9Ec" class="external autonumber" rel="nofollow">[5]</a></span>
6.  <span id="cite_note-hazyresearch_blog-6">[↑](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-hazyresearch_blog_6-0) «FlashAttention-2». *Hazy Research, Stanford University*. <a href="https://hazyresearch.stanford.edu/blog/2023-07-17-flash2" class="external autonumber" rel="nofollow">[6]</a></span>
7.  <span id="cite_note-arxiv_pdf-7">↑ <sup>[7.0](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_pdf_7-0)</sup> <sup>[7.1](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_pdf_7-1)</sup> <sup>[7.2](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_pdf_7-2)</sup> Дао, Три. «FlashAttention-2: Faster Attention with Better Parallelism and Work Partitioning» (PDF). *arXiv:2307.08691*. <a href="https://arxiv.org/pdf/2307.08691.pdf" class="external autonumber" rel="nofollow">[7]</a></span>
8.  <span id="cite_note-raschka_blog-8">[↑](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-raschka_blog_8-0) Рашка, Себастьян. «Llama 2 and FlashAttention 2». *Ahead of AI Magazine*. <a href="https://magazine.sebastianraschka.com/p/research-highlights-in-three-sentences" class="external autonumber" rel="nofollow">[8]</a></span>
9.  <span id="cite_note-linkedin_younes-9">↑ <sup>[9.0](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-linkedin_younes_9-0)</sup> <sup>[9.1](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-linkedin_younes_9-1)</sup> Белькада, Юнес. «Faster and more memory efficient models with Flash Attention 2!». *LinkedIn*. <a href="https://www.linkedin.com/posts/younes-belkada-b1a903145_flashattention-llms-activity-7112061650106474496-1dzz" class="external autonumber" rel="nofollow">[9]</a></span>
10. <span id="cite_note-huggingface_gpu_infer-10">[↑](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-huggingface_gpu_infer_10-0) «GPU inference». *Hugging Face Documentation*. <a href="https://huggingface.co/docs/transformers/v4.39.0/perf_infer_gpu_one" class="external autonumber" rel="nofollow">[10]</a></span>
11. <span id="cite_note-arxiv_fa3-11">[↑](https://systems-analysis.info/int/FlashAttention-2_(EL)#cite_ref-arxiv_fa3_11-0) Дао, Три, и др. «FlashAttention-3: Fast and Accurate Attention with Asynchrony and Low-precision». *arXiv:2407.08608* \[cs.LG\], 11 июля 2024 г. <a href="https://arxiv.org/abs/2407.08608" class="external autonumber" rel="nofollow">[11]</a></span>
