Home Knowledge Base GPU Memory Coalescing

GPU Memory Coalescing is the hardware mechanism that combines multiple individual memory requests from threads within a warp (32 threads) into a single wide memory transaction — transforming 32 separate 4-byte reads into one 128-byte cache-line fetch when threads access consecutive addresses, which is the single most important optimization for achieving high memory bandwidth on GPUs.

Why Coalescing Matters

GPU global memory (HBM or GDDR) delivers peak bandwidth only when accessed in large, aligned transactions (32-128 bytes). If each thread issues an independent random 4-byte read, the memory system must service 32 separate transactions per warp — consuming 32x the bus bandwidth for the same amount of useful data. With coalescing, the hardware detects that the 32 threads are accessing consecutive addresses and merges them into 1-4 aligned transactions.

Coalescing Rules

Practical Optimization Patterns

Hardware Evolution

Older GPUs (Fermi, Kepler) had strict alignment requirements for coalescing. Modern GPUs (Ampere, Hopper) have L1/L2 caches that partially mitigate uncoalesced access by caching fetched but unused bytes for subsequent requests from other warps. However, coalesced access still provides 5-10x better effective bandwidth than scattered access even on modern hardware.

GPU Memory Coalescing is the fundamental contract between the programmer and the hardware — arrange your data so that neighboring threads access neighboring addresses, and the GPU rewards you with hundreds of GB/s of bandwidth; violate this contract, and performance collapses regardless of how many compute cores are available.

gpu memory coalescingcoalesced memory accessglobal memory coalescingwarp memory access patternmemory transaction efficiency

Explore 500+ Semiconductor & AI Topics

From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.