Wat is FlashAttention?

Snelle implementatie die de attention-berekening in tegels verdeelt en in het geheugen op de chip uitvoert, zonder grote tussenmatrices naar HBM te schrijven. Het resultaat is gelijk aan dat van gewone attention.

Japanse benaming: FlashAttention

“FlashAttention” komt voor in 1 oefenvragen uit 1 onderwerpen, bijv. AI-hardware en softwarestack.

Vakgebied: AI-hardware en softwarestack

Nu oefenen: vragen over FlashAttention

Welke uitspraak over het basisprincipe van snelle attention-implementaties zoals FlashAttention is juist?

  1. ADe berekening wordt in tegels (tiles) verdeeld en verloopt in het geheugen op de chip, zonder de grote n×n-tussentabel naar HBM te schrijven, waardoor lees- en schrijfacties van het geheugen afnemen
  2. BDe attentionberekening wordt weggelaten en er wordt een benaderd antwoord gegeven
  3. CDe attention wordt op de CPU berekend
Antwoord en toelichting tonen

Antwoord: A. De berekening wordt in tegels (tiles) verdeeld en verloopt in het geheugen op de chip, zonder de grote n×n-tussentabel naar HBM te schrijven, waardoor lees- en schrijfacties van het geheugen afnemen

Bij een eenvoudige implementatie wordt de n×n-tabel naar HBM geschreven, voor de softmax opnieuw gelezen en daarna nogmaals voor het product met Value, zodat het lezen en schrijven van geheugen de prestaties bepaalt. FlashAttention verdeelt Query en Key/Value in blokken die in het gedeelde geheugen worden geladen en voert de berekening in één doorgang uit terwijl de softmax stapsgewijs wordt bijgewerkt, zonder de tabel naar HBM te schrijven. Het rekenwerk blijft gelijk, maar het lezen en schrijven van geheugen neemt sterk af, zodat het sneller wordt.

“FlashAttention” in de toelichting

Vragen met “FlashAttention” (1)

  1. Welke uitspraak over het basisprincipe van snelle attention-implementaties zoals FlashAttention is juist?

Verwante termen

Attention HBM (high bandwidth memory) AI-compiler All-reduce Backpropagatie Batchgrootte Dataparallellisme Gestructureerde sparsity Gradient checkpointing Inferentie (inference)

Naar de woordenlijst