# Model roofline: obliczenia czy przepustowość pamięci

EN: **Roofline model and arithmetic intensity** · id `roofline` · aliases: roofline, roofline model, arithmetic intensity, intensywność arytmetyczna, compute-bound vs memory-bound

Path: [AI Atlas](https://aiatlasgraph.com/llms.txt) › [Inferencja i infrastruktura](https://aiatlasgraph.com/t/systems.md) › [Akceleratory](https://aiatlasgraph.com/t/hardware.md) › Model roofline: obliczenia czy przepustowość pamięci

## Description

- PL: Prosty model wydajności: osiągalna szybkość jest ograniczona przez minimum ze szczytowej mocy obliczeniowej i iloczynu przepustowości pamięci przez intensywność arytmetyczną (operacje na bajt). W zakresie założeń modelu pozwala ocenić, czy operacja jest ograniczona obliczeniami czy przepustowością pamięci.
- EN: A simple performance model: attainable throughput is bounded by the minimum of peak compute and memory bandwidth multiplied by arithmetic intensity (operations per byte). Within the model's assumptions, it helps determine whether an operation is compute-bound or memory-bandwidth-bound.

## In one sentence

- PL: To sposób oszacowania, czy szybkość obliczenia ogranicza moc sprzętu, czy dostarczanie danych z pamięci.
- EN: This estimates whether hardware computing capacity or data delivery from memory limits an operation's speed.

## Problem it solves

- PL: Nie wiesz, czy warto poprawiać obliczenia, czy zmniejszać ilość przesyłanych danych.
- EN: You do not know whether to improve computation or reduce transferred data.

## What it does

- PL: Zestawia liczbę działań na porcję danych z przepustowością pamięci i mocą obliczeniową, wskazując przybliżony pułap wydajności.
- EN: It compares operations per amount of data with memory bandwidth and computing capacity to indicate an approximate performance ceiling.

## Everyday example

- PL: Analizując mnożenie tabel liczb, sprawdzasz, czy program częściej czeka na pamięć, czy wykorzystuje wszystkie jednostki obliczeniowe.
- EN: When analysing array multiplication, you check whether the program mainly waits for memory or fully uses the computation units.

## This concerns you if you…

- PL: wybierasz kierunek optymalizacji
- PL: chcesz porównać pomiar z możliwościami sprzętu
- EN: choose what to optimise
- EN: want to compare measurements with hardware limits

## Keywords

arithmetic intensity · ridge point · compute ceiling · bandwidth ceiling · compute-bound kernels · memory-bound kernels · data reuse

## How it works

- PL: Intensywność arytmetyczną mnoży się przez zmierzoną lub założoną przepustowość pamięci, tworząc limit transferowy. Minimum tego limitu i mocy obliczeniowej daje pułap wydajności, z którym porównuje się kernel oraz możliwości zwiększenia ponownego użycia danych.
- EN: Arithmetic intensity is multiplied by measured or assumed memory bandwidth to form a transfer bound. The minimum of this bound and compute capacity gives a performance ceiling against which kernels and data-reuse improvements are assessed.

## Limits

- PL: Model upraszcza opóźnienia, komunikację, zależności instrukcji i efekty cache. Pułap zależy od precyzji oraz poziomu pamięci; operacja poniżej niego może wymagać dalszej analizy zamiast samego zwiększenia intensywności.
- EN: The model simplifies latency, communication, instruction dependencies and cache effects. Ceilings depend on precision and memory levels; operations below them may need further analysis rather than merely greater intensity.

## Key terms

- PL: **pułap obliczeniowy**: Maksymalna szybkość odpowiednich operacji przy założonej precyzji.
- PL: **pułap transferowy**: Limit wydajności wynikający z przepustowości i intensywności arytmetycznej.
- EN: **compute ceiling**: The maximum relevant-operation rate at an assumed precision.
- EN: **bandwidth ceiling**: A performance bound determined by bandwidth and arithmetic intensity.

## Know first

- [Kernele mnożenia macierzy (GEMM) (Matrix multiplication kernels (GEMM))](https://aiatlasgraph.com/t/gemm.md)
- [Programowanie GPU (CUDA) (GPU programming (CUDA))](https://aiatlasgraph.com/t/gpuprog.md)

## Examples

- PL: intensywność arytmetyczna · punkt grzbietu (ridge point) · compute-bound vs memory-bound · wpływ rozmiaru batcha na matmul
- EN: arithmetic intensity · ridge point · compute-bound vs memory-bound · effect of batch size on matmuls

## Related topics

Untyped, symmetric "see also" links.

- [Pamięć HBM i ściana pamięci (High-bandwidth memory and the memory wall)](https://aiatlasgraph.com/t/memorywall.md)
- [Profilowanie i optymalizacja kerneli (Kernel profiling and optimisation)](https://aiatlasgraph.com/t/profiling.md)

## Sources

- [How to Scale Your Model — All About Rooflines](<https://jax-ml.github.io/scaling-book/roofline/>) `scaling-book-rooflines` · by Jacob Austin i in. (Google DeepMind)
- [Roofline: An Insightful Visual Performance Model for Floating-Point Programs and Multicore Architectures](<https://people.eecs.berkeley.edu/~kubitron/cs252/handouts/papers/RooflineVyNoYellow.pdf>) `roofline-williams-2009` · by Samuel Williams, Andrew Waterman, David Patterson (UC Berkeley)
- [Making Deep Learning Go Brrrr From First Principles](<https://horace.io/brrr_intro.html>) `horace-he-brrr-2022` · by Horace He

---

AI Atlas revision 122 (2026-10-30) · HTML: https://aiatlasgraph.com/t/roofline · index: https://aiatlasgraph.com/llms.txt · everything: https://aiatlasgraph.com/llms-full.txt · updated 2026-10-30
