A Water-Flow Analogy for Teaching Data Reuse and Memory Hierarchies

Deep Learning kernels, such as general matrix multiplications (GEMMs), exhibit high data-reuse or operations per byte that help in improving their performance on hardware. Yet young architects often struggle to internalize the benefits of data reuse. In this work, we introduce an intuitive water-flow analogy for a simple memory-compute model to clarify how bandwidth, on-chip memory, data reuse and compute throughput interact to determine GEMM performance. In this analogy, DRAM is the tank; the memory controller is a tap with limited flow and latency; SRAM is the bucket; compute units are the dish-washer. We also illustrate the role of data reuse through worked out examples, showing compute- and memory- bound scenarios in roofline performance model, as well as latency-bound scenario. By grounding architectural ideas in physical world scenario, our water-flow analogy helps in longer retention of concepts related to data reuse and memory hierarchy. We also provide ready-to-use slides for its easy adoption in courses1.

Authors

Institutions

Publication Details

Published
2025-06-21
DOI
https://doi.org/10.1145/3743646.3750012
Primary Topic
Parallel Computing and Optimization Techniques
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

A Water-Flow Analogy for Teaching Data Reuse and Memory Hierarchies

Kaushik Roy, Tanvi Sharma
Parallel Computing and Optimization Techniques
article

A Water-Flow Analogy for Teaching Data Reuse and Memory Hierarchies

Kaushik Roy, Tanvi Sharma
article en

Abstract

Deep Learning kernels, such as general matrix multiplications (GEMMs), exhibit high data-reuse or operations per byte that help in improving their performance on hardware. Yet young architects often struggle to internalize the benefits of data reuse. In this work, we introduce an intuitive water-flow analogy for a simple memory-compute model to clarify how bandwidth, on-chip memory, data reuse and compute throughput interact to determine GEMM performance. In this analogy, DRAM is the tank; the memory controller is a tap with limited flow and latency; SRAM is the bucket; compute units are the dish-washer. We also illustrate the role of data reuse through worked out examples, showing compute- and memory- bound scenarios in roofline performance model, as well as latency-bound scenario. By grounding architectural ideas in physical world scenario, our water-flow analogy helps in longer retention of concepts related to data reuse and memory hierarchy. We also provide ready-to-use slides for its easy adoption in courses1.

Purdue University West Lafayette (US)
Openalex Percentile: Top 71%
Parallel Computing and Optimization Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

A Water-Flow Analogy for Teaching Data Reuse and Memory Hierarchies — Kaushik Roy, Tanvi Sharma · (2025) | TGRS Research Map | TGRS