blog

Quick estimate for single-stream LLM inference speed

When generating one token at a time with a single request, inference is usually memory-bandwidth bound. A simple rule of thumb is:

Both values should use the same units (e.g., GB/s and GB).

Why this works

Each new token requires the full model weights to be read from memory. The arithmetic is fast enough that the GPU/ASIC is mostly waiting on memory, so throughput is capped by how fast weights can stream through.

This estimate ignores context length (KV-cache bandwidth), quantization, batching, and per-token overhead. It works best for dense transformer models running one token per step.

Examples

Example 1: Mid-range GPU, 9B model

Example 2: High-end GPU, 70B model

Example 3: Quantized model on consumer GPU


Common bandwidth references

DeviceMemory bandwidth (approx.)
NVIDIA RTX 3090~936 GB/s
NVIDIA RTX 4090~1,010 GB/s
NVIDIA RTX 5090~1,790 GB/s
Intel Arc B60~456 GB/s
Intel Arc B70 Pro~608 GB/s
AMD Radeon RX 6950 XT~576 GB/s
AMD Radeon RX 7900 XT~800 GB/s
AMD Radeon RX 7900 XTX~960 GB/s
Apple M3 Max~400 GB/s

← all posts