Wat is Roofline-model?

Model dat de haalbare prestaties uitdrukt als het minimum van de pieksnelheid en geheugenbandbreedte × rekenintensiteit. Wordt gebruikt om te zien of een taak compute-bound of memory-bound is.

Japanse benaming: Rooflineモデル

“Roofline-model” komt voor in 4 oefenvragen uit 3 onderwerpen, bijv. Prestatiemeting en profiling, AI-hardware en softwarestack, CPU en architectuur.

Vakgebied: AI-hardware en softwarestack

Nu oefenen: vragen over Roofline-model

Een versneller met een piekprestatie van 100 TFLOPS en een geheugenbandbreedte van 2 TB/s voert een bewerking uit met een rekenintensiteit van 10 FLOP/byte. Welke prestatie is volgens het roofline-model haalbaar?

  1. A100 TFLOPS (rekenbegrensd)
  2. B20 TFLOPS (geheugenbegrensd)
  3. C10 TFLOPS (geheugenbegrensd)
Antwoord en toelichting tonen

Antwoord: B. 20 TFLOPS (geheugenbegrensd)

Volgens het roofline-model is de haalbare prestatie de kleinste van "piekprestatie" en "bandbreedte × rekenintensiteit". 2 TB/s × 10 FLOP/byte = 20 TFLOPS, wat kleiner is dan de piek van 100, zodat deze bewerking geheugenbegrensd is met 20 TFLOPS als bovengrens. Piek ÷ bandbreedte = 50 FLOP/byte is de grens (ridge point); alleen bewerkingen met een hogere rekenintensiteit bereiken de piekprestatie.

Wat is de juiste richting om de prestaties te verhogen wanneer met het roofline-model blijkt dat een bewerking zich in het gebied bevindt dat door de geheugenbandbreedte wordt begrensd?

  1. AAlleen denken aan het vergroten van het aantal rekeneenheden
  2. BNiets doen; na verloop van tijd wordt het vanzelf sneller
  3. CDe rekenintensiteit verhogen, bijvoorbeeld door meer hergebruik van gegevens, of de hoeveelheid geheugen lezen en schrijven verminderen
Antwoord en toelichting tonen

Antwoord: C. De rekenintensiteit verhogen, bijvoorbeeld door meer hergebruik van gegevens, of de hoeveelheid geheugen lezen en schrijven verminderen

In een roofline-diagram wordt voor bewerkingen onder de schuine lijn de prestatiegrens bepaald door de geheugenbandbreedte. Meer rekeneenheden veranderen deze grens niet. Als via blocking of het samenvoegen van bewerkingen gegevens vaker worden gebruikt en het aantal bewerkingen per byte (rekenintensiteit) toeneemt, schuift de bewerking in het diagram naar rechts en gaat de bovengrens omhoog. Gegevens met een lagere precisie opslaan om de hoeveelheid lees- en schrijfverkeer te verminderen, heeft hetzelfde effect.

“Roofline-model” in de toelichting

Vragen met “Roofline-model” (4)

  1. Een versneller met een piekprestatie van 100 TFLOPS en een geheugenbandbreedte van 2 TB/s voert een bewerking uit met een rekenintensiteit van 10 FLOP/byte. Welke prestatie is volgens het roofline-model haalbaar?
  2. Wat is de juiste richting om de prestaties te verhogen wanneer met het roofline-model blijkt dat een bewerking zich in het gebied bevindt dat door de geheugenbandbreedte wordt begrensd?
  3. Welk model toont met de rekenintensiteit (aantal bewerkingen per byte) op de horizontale as of de prestaties van een programma worden begrensd door rekenprestaties of door geheugenbandbreedte?
  4. Wat wordt met de STREAM-benchmark hoofdzakelijk gemeten?

Verwante termen

Rekenintensiteit (arithmetic intensity) Via STREAM-benchmark Benchmark AI-compiler All-reduce Attention Backpropagatie Batchgrootte Dataparallellisme

Naar de woordenlijst