---
title: "FlashAttention (HE)"
source: "https://systems-analysis.info/int/FlashAttention_(HE)"
wiki: "systems-analysis.info/int"
article: "FlashAttention_(HE)"
language: "he"
categories:
  - "Category:Hebrew"
  - "Category:Large language models"
  - "Category:Machine learning"
revision_id: 2255
wiki_created_at: 2026-09-06T23:01:03Z
wiki_modified_at: 2026-09-06T23:01:03Z
downloaded_at: 2026-09-07T22:50:09Z
---

# FlashAttention (HE)

**FlashAttention** — הוא אלגוריתם פורץ דרך לחישוב מנגנון ה-attention, שפותח במטרה להאיץ באופן משמעותי את אימון ואינפרנס של מודלי שפה גדולים (LLM) תוך שמירה על דיוק חישובי מלא. האלגוריתם הוצג לראשונה בשנת 2022 על ידי צוות חוקרים מאוניברסיטת סטנפורד בהובלת **טרי דאו** (Tri Dao)<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-arxiv_main-1)</sup>.

הרעיון המרכזי של FlashAttention הוא ארגון מחדש של החישובים בהתאם להיררכיית הזיכרון של ה-GPU, מה שמאפשר למזער את מספר הגישות לזיכרון האיטי ולבטל את צוואר הבקבוק העיקרי של מנגנון ה-attention הסטנדרטי.

## בעיות ה-attention הסטנדרטי

מנגנון ה-self-attention הסטנדרטי ב-transformer מחושב לפי הנוסחה: $\text{Attention}(Q,K,V) = \text{softmax}\left( \frac{QK^{T}}{\sqrt{d_{k}}} \right)V$ כאשר Q, K, V הן מטריצות השאילתות, המפתחות והערכים.

הבעיה העיקרית בגישה זו היא **מורכבות ריבועית** בזמן ובזיכרון (O(N²)) ביחס לאורך הרצף N<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-arxiv_main-1)</sup>. במימוש נאיבי יש לחשב ולשמור בזיכרון ה-GPU את מטריצת ה-attention המלאה **S** בגודל N×N, דבר המוביל לשתי בעיות קריטיות:

1.  **צריכת זיכרון גבוהה**: שמירת מטריצה N×N הופכת לבלתי אפשרית בעבודה עם הקשרים ארוכים.
2.  **פעולות קלט-פלט (IO)**: צוואר הבקבוק העיקרי אינו מספר הפעולות האריתמטיות, אלא הגישות החוזרות ונשנות לזיכרון האיטי של ה-GPU.

### היררכיית זיכרון GPU

להבנת הבעיה חשוב להבחין בין שני סוגי זיכרון ב-GPU (בדוגמת NVIDIA A100):

- **SRAM** (זיכרון סטטי): זיכרון מהיר על-שבב בנפח קטן (~20 MB) עם רוחב פס עצום (עד **19 TB/s**).
- **HBM** (זיכרון בעל רוחב פס גבוה): זיכרון איטי בנפח גדול (40–80 GB) עם רוחב פס נמוך בהרבה (כ-**1.5 TB/s**)<sup>[\[2\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-openreview_fa1-2)</sup>.

אסימטריה זו הופכת את אלגוריתם ה-attention הסטנדרטי ל**מוגבל רוחב פס זיכרון** (memory-bound), שכן הוא קורא וכותב ללא הרף מטריצות גדולות מה-HBM האיטי, וזהו המקור העיקרי לעיכובים.

## חידושי המפתח של FlashAttention

FlashAttention הוא אלגוריתם **מודע-IO** (IO-aware), הפותר את הבעיה על ידי מזעור הגישות ל-HBM. הדבר מושג באמצעות שלוש טכניקות עיקריות.

### Tiling ועיבוד בלוקי

במקום עיבוד המטריצה כולה בבת אחת, FlashAttention מפצל את מטריצות הקלט Q, K, V לבלוקים קטנים (**tiles**) שמתאימים ל-SRAM המהיר. האלגוריתם טוען בלוקים אלה ברצף, מבצע עבורם את כל חישובי ה-attention ומעדכן את התוצאה הסופית, **מבלי לשמור את מטריצת ה-attention המלאה** ב-HBM האיטי<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-arxiv_main-1)</sup>.

### חישוב Softmax מקוון

פריצת הדרך הטכנית המרכזית הייתה חישוב Softmax "מקוון" (online). ה-Softmax הסטנדרטי דורש הכרת כל אלמנטי וקטור הקלט לצורך נרמול. FlashAttention משתמש באלגוריתם מותאם המאפשר חישוב Softmax בחלקים. הוא שומר שני ערכים ביניים (המקסימום הנוכחי וסכום האקספוננטים), המתעדכנים עם עיבוד בלוקים חדשים, מה שמאפשר לקבל תוצאה מדויקת ללא גישה למטריצה כולה בבת אחת<sup>[\[2\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-openreview_fa1-2)</sup>.

### מיזוג פעולות לליבת CUDA אחת

כל פעולות ה-attention (כפל המטריצות QKᵀ, מיסוך, Softmax, כפל ב-V) משולבות ב**ליבת CUDA ממוזגת אחת** (fused kernel). פעולה זו מצמצמת דרמטית את מספר פעולות הקריאה/כתיבה ב-HBM: במקום מעברים חוזרים על פני המטריצה כולה, האלגוריתם טוען בלוק ל-SRAM פעם אחת, מבצע את כל החישובים וכותב רק את התוצאה הסופית.

## יעילות תיאורטית ומעשית

### מורכבות ואופטימליות

FlashAttention מצמצם את צריכת הזיכרון מ-O(N²) ל-**O(N)**, המבטיח קנה מידה ליניארי. הוכח כי מורכבות ה-IO של האלגוריתם היא **אופטימלית תיאורטית** לחישוב attention בהיררכיית זיכרון דו-שכבתית, כלומר לא ניתן לבצע attention מדויק במהירות גבוהה יותר ללא שינוי חומרה<sup>[\[3\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-ieee_spectrum_2022-3)</sup>.

### תוצאות אמפיריות

הגרסה הראשונה של FlashAttention הדגימה שיפורים משמעותיים:

- **האצה**:
  - BERT-large (אורך 512): האצת אימון של **15%**.
  - GPT-2 (אורך 1K): האצה **פי 3**.
  - משימות Long-Range Arena (1K–4K): האצה **פי 2.4**<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-arxiv_main-1)</sup>.
- **חיסכון בזיכרון**: עד **חיסכון פי 20** בזיכרון בהשוואה למימושי הבסיס המדויקים.
- **שיפור באיכות המודלים**: הודות ליכולת לעבוד עם הקשרים ארוכים יותר, FlashAttention לא רק שאינו מאבד איכות, אלא אף משפר אותה. לדוגמה, הפרפלקסיה של GPT-2 השתפרה ב-0.7 נקודות, והדיוק במשימות סיווג מסמכים ארוכים עלה ב-6.4 נקודות<sup>[\[1\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-arxiv_main-1)</sup>.

## התפתחות ופיתוחים נוספים

הצלחת FlashAttention הניחה את היסוד לסדרה שלמה של אלגוריתמים מוכווני-חומרה.

### FlashAttention-2 (2023)

הגרסה השנייה נועדה לניצול מלא יותר של משאבי ה-GPU. ב-FlashAttention המקורי, היעילות על NVIDIA A100 עמדה על 25–40% בלבד מהמקסימום. FlashAttention-2 הציגה שיפורים בתיקבול החישובים, מה שאפשר<sup>[\[4\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-tridao_flash2-4)</sup>:

- השגת האצה **פי שניים** בהשוואה לגרסה הראשונה.
- הגדלת ניצולת ה-GPU ל-**50–73%** מהמקסימום התיאורטי.
- הרחבת התמיכה לראשי attention בגודל 256, וכן לארכיטקטורות Multi-Query Attention (MQA).

### FlashAttention-3 (2024)

הגרסה השלישית אוּפטמה במיוחד לארכיטקטורת GPU **NVIDIA Hopper (H100)**<sup>[\[5\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-pytorch_blog_fa3-5)</sup>. היא מנצלת יכולות חומרה חדשות, כגון **אסינכרוניות Tensor Cores** ותמיכה ב-**FP8**, מה שאפשר:

- השגת האצה נוספת **פי 1.5–2** בהשוואה ל-FlashAttention-2.
- השגת ביצועים של עד **740 TFLOPS** על FP16 וקרוב ל-**1.2 PFLOPS** על FP8.

### פתרונות מיוחדים

רעיונות FlashAttention פותחו בפרויקטים נוספים:

- **FlashInfer** (2025): מנוע attention מותאם-אישית, אוּפטם במיוחד למשימות אינפרנס של LLM. הוא מתמקד בעבודה יעילה עם KV-cache במצב יצירה זורמת<sup>[\[6\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-arxiv_flashinfer-6)</sup>.
- **FlashMLA** (2024): מימוש attention עם דחיסת מטמון ההקשר (*latent attention*), המאפשר חיסכון בזיכרון על רצפים ארוכים מאוד עם אובדן מינימלי של מידע<sup>[\[7\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-github_flashmla-7)</sup>.

## השפעה על התעשייה ועל המערכת האקולוגית

FlashAttention הפך לפריצת דרך יסודית והתגבש במהירות ל**סטנדרט תעשייתי** לאימון ואינפרנס יעיל של LLM. הוא שולב בספריות מרכזיות כגון PyTorch ו-Hugging Face, ומשמש את רוב מודלי השפה הגדולים (LLaMA, MPT, Falcon, Claude ועוד).

דווקא FlashAttention וגרסאותיו המאוחרות מילאו תפקיד מכריע בהגדלת **חלונות ההקשר** של מודלי השפה: מ-2–4 אלף token (GPT-3) עד 128 אלף token (GPT-4) ואף עד מיליוני token במודלים ניסיוניים<sup>[\[8\]](https://systems-analysis.info/int/FlashAttention_(HE)#cite_note-medium_evolution-8)</sup>. האלגוריתם ביטל אחד המחסומים העיקריים על דרך הרחבת ה-transformer, ופתח אפשרויות חדשות ליישומי בינה מלאכותית — מניתוח מסמכים ארוכים ועד להבנה מולטי-מודלית.

## קישורים

- המאגר הרשמי של FlashAttention ב-GitHub

## ביבליוגרפיה

- Dao, T. et al. (2022). *FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness*. arXiv:2205.14135.
- Dao, T. (2023). *FlashAttention-2: Faster Attention with Better Parallelism and Work Partitioning*. arXiv:2307.08691.
- 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.
- Hong, K. et al. (2023). *FlashDecoding++: Faster Large Language Model Inference on GPUs*. arXiv:2311.01282.
- Ye, Z. et al. (2025). *FlashInfer: Efficient and Customizable Attention Engine for LLM Inference Serving*. arXiv:2501.01005.
- 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. (2025). *FlashMask: Efficient and Rich Mask Extension of FlashAttention*. OpenReview wUtXB43Chi.
- Dao, T. et al. (2022). *FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness* (OpenReview version). OpenReview H4DqfPSibmx.
- Gholami, A. et al. (2024). *FlashAttention on a Napkin: A Diagrammatic Approach to Deep Learning IO-Awareness*. OpenReview pF2ukh7HxA.

## הערות

1.  <span id="cite_note-arxiv_main-1">↑ <sup>[1.0](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-arxiv_main_1-0)</sup> <sup>[1.1](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-arxiv_main_1-1)</sup> <sup>[1.2](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-arxiv_main_1-2)</sup> <sup>[1.3](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-arxiv_main_1-3)</sup> <sup>[1.4](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-arxiv_main_1-4)</sup> Дао, Три, и др. «FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness». *arXiv:2205.14135* \[cs.LG\], 28 мая 2022 г. <a href="https://arxiv.org/abs/2205.14135" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-openreview_fa1-2">↑ <sup>[2.0](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-openreview_fa1_2-0)</sup> <sup>[2.1](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-openreview_fa1_2-1)</sup> Дао, Три, и др. «FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness». *OpenReview*. <a href="https://openreview.net/pdf?id=H4DqfPSibmx" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-ieee_spectrum_2022-3">[↑](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-ieee_spectrum_2022_3-0) «We're Training AI Twice as Fast This Year as Last». *IEEE Spectrum*. <a href="https://spectrum.ieee.org/mlperf-rankings-2022" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-tridao_flash2-4">[↑](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-tridao_flash2_4-0) Дао, Три. «FlashAttention-2». *tridao.me*. <a href="https://tridao.me/publications/flash2/flash2.pdf" class="external autonumber" rel="nofollow">[4]</a></span>
5.  <span id="cite_note-pytorch_blog_fa3-5">[↑](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-pytorch_blog_fa3_5-0) «FlashAttention-3: Fast and Accurate Attention with Asynchrony and Low-precision». *PyTorch Blog*. <a href="https://pytorch.org/blog/flashattention-3/" class="external autonumber" rel="nofollow">[5]</a></span>
6.  <span id="cite_note-arxiv_flashinfer-6">[↑](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-arxiv_flashinfer_6-0) «\[2501.01005\] FlashInfer: Efficient and Customizable Attention Engine for LLM Inference Serving». *arXiv*. <a href="https://arxiv.org/abs/2501.01005" class="external autonumber" rel="nofollow">[6]</a></span>
7.  <span id="cite_note-github_flashmla-7">[↑](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-github_flashmla_7-0) «GitHub - deepseek-ai/FlashMLA: FlashMLA: Efficient MLA decoding kernels». *GitHub*. <a href="https://github.com/deepseek-ai/FlashMLA" class="external autonumber" rel="nofollow">[7]</a></span>
8.  <span id="cite_note-medium_evolution-8">[↑](https://systems-analysis.info/int/FlashAttention_(HE)#cite_ref-medium_evolution_8-0) «The Evolution of Flash Attention: Revolutionizing Transformer Efficiency». *Medium*. <a href="https://medium.com/@sailakkshmiallada/the-evolution-of-flash-attention-revolutionizing-transformer-efficiency-8a039918d507" class="external autonumber" rel="nofollow">[8]</a></span>
