4.4. Bandwidth
Capacity tells us how much the memory can hold, but not how fast it can move data. For that, we need two more metrics: bandwidth and latency.
The most widely used metric is bandwidth. Imagine we request 32 GB of data from the memory. It takes 1 second to complete. The throughput is 32 GB / 1 s = 32 GB/s. If the memory is running at full capacity, this equals its bandwidth. Bandwidth is therefore the maximum throughput the memory can sustain.
What determines this throughput is the number of parallel data lines connecting the memory to the processor, as shown below.
Processors and memory interfaces are driven by a clock that ticks at a fixed rate. Each tick is one clock cycle. The rate is measured in GHz: a 1 GHz clock completes 1 billion cycles per second.
Each data line transfers one bit per clock cycle. So, a memory with a 256-bit interface transfers 256 / 8 = 32 bytes per cycle. At 1 GHz, the bandwidth is 32 bytes × 1 billion/s = 32 GB/s.
This is the theoretical peak bandwidth, the ceiling set by the physical interface. In practice, the actual throughput is somewhat lower.
Since data is transferred between the processor and the memory, the speed is bottlenecked by whichever side is slower. It is always the memory that is the slower side. The processor can issue requests much faster than the memory can fulfill them. This is why bandwidth is treated as a property of the memory, not the processor.