The Memory Wall Everyone Is Talking About
![]() |
| Copyright: Sanjay Basu |
![]() |
| Copyright: Sanjay Basu |
The Original Sin of Von Neumann
The von Neumann architecture, proposed in 1945 for the EDVAC, established the template for nearly every computer built since. A central processing unit fetches instructions and data from a unified memory, executes operations, and stores results back. This elegantly simple design enabled programmability and flexibility that purpose-built calculating machines could never match. It also created a fundamental asymmetry that would compound over decades.
In the early days, processors and memory operated at roughly comparable speeds. The gap was manageable. Then exponential scaling happened unevenly. Processor performance improved at roughly 60% per year through the 1980s and 1990s, driven by Moore's Law and increasingly sophisticated microarchitectures. DRAM latency improved at perhaps 7% per year. When you take the difference between two diverging exponentials, you get another exponential. The performance gap between processors and memory grew from negligible to catastrophic.
William Wulf and Sally McKee articulated this clearly in their seminal 1994 paper, giving us the term "memory wall" to describe the phenomenon. They predicted that the divergence would eventually overwhelm all other considerations in computer architecture. They were exactly right. Today, a modern CPU can execute hundreds of instructions in the time required to fetch a single cache line from main memory. The processor spends most of its existence in various states of waiting.
From Shared Buses to NUMA
The industry's first serious response to the memory wall was to add cache. Small amounts of fast SRAM, placed between the processor and main memory, could capture temporal and spatial locality in access patterns. If your program touched the same data repeatedly, or touched nearby data in sequence, the cache would save trips to the distant DRAM. This worked remarkably well for many workloads. It also kicked the can down the road.
As systems scaled to multiple processors, the shared memory bus became a brutal bottleneck. Symmetric multiprocessing architectures gave every CPU equal access to all memory through a common interconnect. This elegant uniformity came at a price. Multiple processors competing for the same bus rapidly saturated its bandwidth. Adding more CPUs made the congestion worse, creating negative scaling where your expensive hardware investment yielded diminishing or even negative returns.
Non-Uniform Memory Access emerged as the solution. Instead of a single shared bus, NUMA architectures gave each processor its own local memory and connected the processors through a network of point-to-point links. Accessing local memory was fast. Accessing remote memory attached to another processor incurred additional latency as the request traversed the interconnect. Memory access time was now explicitly non-uniform, varying based on the topological distance between processor and data.
AMD's Opteron in 2003, with HyperTransport, and Intel's Nehalem in 2008, with QuickPath Interconnect, brought NUMA to mainstream x86 servers. Software had to become NUMA-aware, placing data close to the processors that would use it. The operating system gained new responsibilities for memory placement and thread scheduling. Performance became increasingly dependent on the careful dance between software and hardware, with penalties for those who ignored the underlying topology.
The GPU Memory Hierarchy You Need to Understand
GPUs took the lessons of NUMA and cache hierarchies and amplified them to an extreme degree. A modern NVIDIA H100 contains 132 streaming multiprocessors, each essentially a small parallel computer with its own local resources. The memory hierarchy spans six or more distinct levels, each with dramatically different capacity, bandwidth, and latency characteristics.
At the bottom of the hierarchy sit registers, numbering 256KB per streaming multiprocessor. These achieve bandwidth in the range of 8 terabytes per second with single-cycle latency. Moving up, L1 cache provides 128 to 192KB per SM with latencies around 30 cycles. The L2 cache, shared across all SMs, offers 50MB on the H100 with latencies around 150 cycles. Finally, the HBM sitting on package provides 80GB of capacity with roughly 3.35 terabytes per second of bandwidth and latencies stretching to 500 cycles or more.
The numbers reveal a stark truth. Each level of the hierarchy offers roughly an order of magnitude more capacity but at proportionally higher latency. A register access takes one cycle while an HBM access takes 500. The GPU hides this latency through massive parallelism, maintaining thousands of threads in flight so that while some wait for memory, others execute useful work. But this only works if there is enough useful work to do. Memory-bound workloads exhaust the parallelism and leave expensive silicon idle.
![]() |
| Copyright: Sanjay Basu |
High Bandwidth Memory and the Stacking Revolution
High Bandwidth Memory represents perhaps the most significant memory innovation of the past decade. Instead of placing DRAM chips on a separate module connected via relatively narrow buses, HBM stacks multiple DRAM dies vertically and connects them to the processor through thousands of through-silicon vias. The result is dramatically wider interfaces and correspondingly higher bandwidth.
HBM3e, the current generation shipping with NVIDIA's H200 and Blackwell GPUs, achieves data rates of 9.6 to 9.8 gigabits per second per pin across a 1024-bit interface. A single stack delivers roughly 1.2 terabytes per second of bandwidth. The H200 ships with 141GB of HBM3e providing 4.8 terabytes per second aggregate bandwidth. The upcoming Blackwell B200 pushes this to 192GB at 8 terabytes per second. The Rubin platform expected in 2026 will use HBM4 with a 2048-bit interface, targeting bandwidths of 13 to 15 terabytes per second.
The market dynamics around HBM have become genuinely fascinating. SK Hynix currently commands roughly 62% market share and has sold out production through 2026. Samsung, despite being the world's largest DRAM manufacturer, has fallen to third place with only 17% share after struggling with thermal stability and yield issues in their HBM3E qualification. Micron carved out a solid second position by focusing on power efficiency, claiming 30% lower consumption through innovations in their through-silicon via networks.
The HBM supply chain has become as strategically critical as leading-edge logic fabrication. One memorable episode involved Hanmi Semiconductor, which holds a near-monopoly on the thermal compression bonding equipment essential for HBM assembly. When a contract dispute erupted, Hanmi pulled its field service engineers from SK Hynix fabs. The potential disruption to the entire AI accelerator supply chain forced rapid reconciliation. Such is the fragility of the infrastructure underpinning the AI boom.
![]() |
| Copyright: Sanjay Basu |
Beyond the Package and Into the Network
For models that exceed single-GPU memory capacity, which is essentially all frontier models today, the memory hierarchy extends outward into the interconnect fabric. NVLink provides the first tier of extension, enabling GPU-to-GPU communication at bandwidths that dwarf anything achievable through PCIe. The fourth-generation NVLink on Hopper GPUs delivers 900 gigabytes per second bidirectional bandwidth between GPUs. NVLink 5 on Blackwell doubles this to 1.8 terabytes per second.
NVSwitch converts the point-to-point NVLink connections into a fully-connected fabric. In a DGX H100 system with eight GPUs, four NVSwitch chips create a non-blocking all-to-all topology where every GPU can communicate with every other GPU at full NVLink bandwidth simultaneously. The aggregate bisection bandwidth reaches 25.6 terabits per second. For the NVL72 rack configuration with 72 Blackwell GPUs, the NVSwitch fabric provides 260 terabytes per second of aggregate bandwidth.
Once you exhaust the NVLink domain, the next tier involves RDMA over network fabrics like InfiniBand or RoCE. Here latencies jump from the microseconds of NVLink to tens of microseconds or more. Bandwidths, while impressive by traditional networking standards at 400 or 800 gigabits per second, represent a significant step down from the terabyte-per-second world of on-package memory and NVLink. The hierarchy extends further still to storage tiers, but by this point you are measuring latencies in milliseconds and the impedance mismatch with GPU computation becomes truly severe.
CXL and the Promise of Disaggregated Memory
Compute Express Link represents the industry's most ambitious attempt to fundamentally restructure the relationship between processors and memory. Built atop the PCIe physical layer but adding cache-coherent memory semantics, CXL enables memory to be attached to systems in entirely new ways. Memory expanders add capacity beyond what DIMM slots allow. Memory pooling lets multiple servers share access to common memory resources. Memory disaggregation separates compute from memory entirely, allowing each to scale independently.
The CXL 4.0 specification, released in November 2025, doubles bandwidth to 128 gigatransfers per second by moving to PCIe 7.0. It introduces bundled ports for multi-rack memory pooling and adds features for direct device-to-device memory access without CPU involvement. Microsoft launched the industry's first CXL-equipped cloud instances in November 2025 using Intel Xeon 6 processors. Samsung demonstrated their CMM-B memory pooling product providing up to two terabytes of capacity at 60 gigabytes per second bandwidth with 596 nanosecond latency.
For AI inference workloads, CXL addresses a specific and growing pain point. The KV cache in transformer models consumes enormous memory that scales with sequence length and batch size. Large language models routinely require 80 to 120GB per GPU for KV cache alone. CXL memory pooling provides a lower tier where cold or less frequently accessed KV cache entries can reside, with demonstrations showing 3.8 times speedup compared to 200G RDMA-based sharing approaches. The latency penalty versus local HBM is significant but the capacity expansion may prove worth the tradeoff for many deployments.
![]() |
| Copyright: Sanjay Basu |
Samsung's Bet on In-Memory Processing
While the industry focuses on faster pipes between memory and compute, Samsung is pursuing a more radical approach. What if the compute came to the memory instead of the other way around? Processing-in-memory and processing-near-memory technologies integrate compute capabilities directly into DRAM, eliminating the data movement overhead that dominates energy consumption and limits performance in memory-bound workloads.
Samsung's HBM-PIM, marketed as Aquabolt-XL, adds 1.2 TFLOPS of programmable compute to the base die of HBM stacks. Testing with the Xilinx Virtex UltraScale+ accelerator showed 2.5 times system performance improvement with over 60% reduction in energy consumption. The key insight is that for operations with low arithmetic intensity, where the ratio of compute to memory access is small, doing the work inside the memory itself dramatically improves efficiency.
At OCP Global Summit 2025, Samsung showcased their expanded portfolio including HBM4, LPDDR5X-PIM for edge AI, and SOCAMM2 memory modules. The LPDDR6-PIM variant integrates compute directly into low-power DRAM for mobile devices, earning a CES 2026 Innovation Award. Samsung's CXL-PNM product places processing-near-memory capabilities in the CXL fabric, improving AI model loading speed by 2x and capacity by up to 4x according to Samsung's benchmarks.
The vision here is genuinely radical. Richard Walsh, Samsung's head of memory marketing for Europe, frames it plainly. Memory needs to move from incremental evolutionary improvement to dramatic architectural change. PIM can remove processing bottlenecks while increasing bandwidth and lowering power consumption. The ultimate goal is doing more for less and reducing total cost of ownership in the process.
![]() |
| Copyright: Sanjay Basu |
The Memory-Bound Reality of LLM Inference
The roofline model provides a framework for understanding when workloads are compute-bound versus memory-bound. Plot arithmetic intensity on the x-axis, measuring FLOPS per byte of memory accessed. Plot throughput on the y-axis. The resulting curve shows a diagonal region where performance is limited by memory bandwidth and a flat region where performance is limited by compute capability. The intersection, called the ridge point, represents the arithmetic intensity needed to fully utilize the hardware.
For the H100, the ridge point sits around 300 FLOPS per byte for bfloat16 operations. Training large batch matrix multiplications often exceed this threshold and operate in the compute-bound regime. Inference, particularly the autoregressive decoding phase of transformer models, typically falls well below. The model weights must be loaded from memory for every generated token. With batch sizes constrained by latency requirements or available memory, the arithmetic intensity drops to the point where expensive tensor cores sit mostly idle.
This explains why NVIDIA marketed the H200 explicitly for inference acceleration. The chip offers essentially identical compute to the H100 but increases HBM capacity by 76% and bandwidth by 43%. For memory-bound inference workloads, that translates directly to throughput improvement. The Blackwell B200 continues the trend with 192GB of HBM3e at 8 terabytes per second. Rubin pushes further still with 288GB of HBM4. Each generation prioritizes memory capacity and bandwidth as much as compute throughput.
![]() |
| Copyright: Sanjay Basu |
The Architectural Implications
Recognizing memory as the binding constraint reshapes how we should think about AI system design. The industry's fixation on peak FLOPS obscures the more important metric of memory bandwidth per FLOP. A system with fewer theoretical operations but better memory subsystems will often outperform a nominally more powerful system starved for data.
Model optimization techniques suddenly make more sense through this lens. Quantization reduces the size of model weights, allowing more parameters to fit in fast memory tiers and reducing the bytes that must be moved for each operation. Pruning eliminates parameters entirely. Knowledge distillation creates smaller models that approximate larger ones. These are all fundamentally techniques for improving arithmetic intensity by reducing memory requirements.
The multi-tier memory hierarchy also explains the success of techniques like KV cache offloading and speculative decoding. If you can predict which data will be needed and prefetch it into faster memory tiers before it is required, you hide the latency that would otherwise stall computation. The software complexity required to orchestrate these movements represents a new layer of systems engineering expertise, distinct from traditional machine learning skills.
The Memory Wall We Are Still Building
The von Neumann bottleneck that Backus described in 1977 has not been solved. It has merely been elaborated into an intricate hierarchy of caches, high-bandwidth memories, coherent interconnects, and disaggregated pools. Each layer addresses the limitations of the layer below while introducing new constraints and complexities. The memory wall from Wulf and McKee's 1994 paper still looms, now manifesting as HBM capacity limits and NVLink bandwidth ceilings rather than DRAM latency and bus contention.
The AI boom has transformed memory from a commodity component into strategic infrastructure. HBM manufacturing capacity is as hotly contested as leading-edge logic foundry allocation. Memory vendors have become co-architects of AI systems rather than mere suppliers. SK Hynix's market capitalization now reflects expectations about AI training cluster deployments more than traditional DRAM pricing cycles.
Understanding the memory wall is essential for anyone trying to navigate AI infrastructure decisions. The next time a vendor pitches you on FLOPS, ask about memory bandwidth. When evaluating architectures, trace the data paths through every tier of the hierarchy. Remember that the most valuable optimization is often the one that keeps data close to where it will be used. We have been building the memory wall for fifty years. Learning to work within its constraints, rather than pretending it does not exist, is the real engineering challenge of our moment.
Thoughts?







Comments
Post a Comment