Atlas / UNDERSTAND / Tokenomics / AI Compute
DEEP-DIVE · TOKENOMICS

AI Compute: The Hardware Under the Tokens

Every token price traces back to silicon. Why GPUs won, why memory is the real wall, what alternative accelerators trade away, and the arithmetic that turns peak specs into honest throughput.

TL;DR
  • Transformer inference is overwhelmingly parallel matrix math, which is why GPUs and their tensor units won; but the usual binding constraint is memory, not compute: HBM capacity decides what fits, HBM bandwidth throttles decode.
  • Real throughput is tokens per second per device times utilization times batching efficiency. Utilization decides economics; peak datasheet specs do not.
  • Treat hardware assumptions as part of every TCO model, and treat procurement (on-demand, reserved, owned) as capacity planning under a genuinely volatile supply market.

The layer under the tokens

The token is a convenient abstraction. You pay per million of them, you budget latency around them, and most of the Atlas reasons about them without asking where they come from. But every token is produced by a physical device doing matrix multiplication, and the properties of that device explain most of what you experience at the API boundary: why prices sit where they sit, why decode latency has a floor no prompt engineering can break, why capacity gets rationed during demand spikes, and why the industry's news cycle is dominated by chip supply and data-center construction.

You do not need to be a hardware engineer to run enterprise AI well. You do need a working mental model of the compute layer, for three practical reasons. First, sanity-checking: vendors quote throughput numbers that are technically true and operationally misleading, and the difference is visible only if you know what the numbers omit. Second, capacity planning: whether you consume tokens through a managed API or serve models yourself, someone in the chain is doing tokens-per-second-per-device arithmetic, and if it is not you, you are trusting theirs. Third, reading the news: accelerator announcements, memory supply constraints and interconnect roadmaps move the cost curve that your multi-year plan quietly depends on.

This article is the tour of that layer. We start with why GPUs won the workload, then get to the less obvious and more important point: memory, not raw compute, is usually the wall. From there we survey the alternative accelerator classes and what they trade, work through the capacity arithmetic that converts specs into real throughput, and finish with the procurement decision, buy, rent or reserve, in a market where scarcity is a recurring feature rather than a bug.

Why GPUs won

A transformer forward pass is, overwhelmingly, matrix multiplication. Attention layers, feed-forward layers, the projections between them: nearly all of the arithmetic is multiplying large matrices of numbers, and almost none of it is branching, pointer-chasing or complex control flow. That workload shape is the whole story. The question was never which chip is fastest in general; it was which chip is fastest at enormous volumes of very regular linear algebra.

CPUs are built for the opposite problem. A modern CPU spends most of its silicon making a handful of cores individually clever: deep caches, branch prediction, speculative execution, all in service of running unpredictable general-purpose code with low latency. A GPU inverts the bet. It spends its silicon on thousands of simple cores that execute the same operation across large blocks of data in lockstep. For branchy code this is a terrible trade. For matrix multiplication, where every element follows the identical recipe, it is close to optimal: throughput per chip, per watt and per dollar all favor the many-simple-cores design by a wide margin.

Modern accelerators go a step further with dedicated tensor units: hardware blocks that execute small matrix-multiply-accumulate operations as a single instruction, often at reduced numeric precision, because neural networks tolerate lower precision remarkably well. These units accelerate exactly, and almost only, the operation transformers spend their lives doing.

One honest caveat: hardware alone did not decide the outcome. A decade of accumulated kernels, libraries, tooling and developer habit forms a moat around the dominant software ecosystem that rival silicon has found genuinely hard to cross. When you evaluate alternatives, the software maturity question usually matters more than the hardware question.

Memory is the wall

Here is the part vendor slides underplay: for serving large language models, the binding constraint is usually memory, not compute. It binds twice, in two different ways, and the distinction matters.

Capacity decides what fits. A model's weights must live in the accelerator's high-bandwidth memory (HBM) to be served at speed. Billions of parameters times bytes per parameter is a hard budget: it determines which models fit on one device, which need quantization to squeeze in, and which must be sharded across multiple devices connected by high-bandwidth interconnect, with all the cost and failure-mode complexity sharding brings.

Bandwidth decides how fast you decode. Generating output is sequential: one token per step per sequence, and each step must stream essentially all of the active weights from HBM through the compute units. The arithmetic per byte moved is small, so the chip spends most of its time waiting on memory rather than multiplying. This is why the decode phase is memory-bandwidth-bound while prefill, which processes the whole prompt in parallel, is more compute-bound, exactly the split described in Latency Anatomy. It is also why per-token decode speed tends to improve with new memory generations more than with new compute generations.

And the same memory is contested. The KV cache, the stored attention state for every active sequence, grows with context length and batch size and lives in the same HBM as the weights. Long contexts and big batches eat the memory that batching needs, which caps concurrency, which caps throughput.

+------------------------------------------------------+
|  On-chip caches / SRAM     tiny, fastest             |
+------------------------------------------------------+
|  HBM: weights + KV cache   capacity = what fits      |
|                            bandwidth = decode speed  |
+------------------------------------------------------+
|  Peer devices over         sharding, when one        |
|  high-bandwidth links      device is not enough      |
+------------------------------------------------------+
|  Host DRAM and storage     large, far too slow       |
|                            for the decode loop       |
+------------------------------------------------------+
The serving memory hierarchy. Nearly every LLM performance question resolves to the HBM layer.

Beyond GPUs

GPUs won by being very good at everything neural. That generality has a price, and a growing family of accelerators bets that giving some of it up buys efficiency. The classes matter more than the brand names, so this section stays deliberately generic.

Training-scale accelerators in the TPU style are built around very large matrix-multiply engines and deploy in tightly coupled pods with fast collective communication, because training is a synchronized, all-devices-talking workload. They can be extremely efficient at exactly that job, but they are typically bound to one cloud provider's stack, which makes adopting them as much a strategic commitment as a technical choice. Inference-specialized silicon takes the opposite cut: narrower model shapes, aggressive use of on-chip memory, dataflow designs tuned for the decode loop, all chasing low latency and high tokens per watt. The recurring risk is software and model coverage: model architectures evolve faster than silicon, and a chip tuned for last year's shapes can age quickly. At the small end, NPUs in phones and laptops run quantized small models on-device, trading capability ceiling for privacy, offline operation and per-unit economics, the pattern covered in Edge AI and Small Language Models.

ClassOptimized forTrades awayWatch for
General-purpose GPUsFlexibility across training and inference; broadest software supportPeak efficiency on any single workloadSupply competition, cost pressure
Training-scale acceleratorsMassive synchronized matrix math in tightly coupled podsGenerality; portability across cloudsEcosystem lock-in
Inference-specialized siliconLatency and tokens per watt on known model shapesFlexibility as architectures shiftSoftware maturity, model coverage
Edge NPUsSmall quantized models within device power and thermal budgetsModel size, precision, capability ceilingFleet updates, evaluation burden

The evaluation rule is constant across classes: benchmark your workload, on your models, through the vendor's actual software stack. Specs describe the silicon; the stack decides what you get.

Capacity arithmetic

Every serving capacity plan reduces to one line: real throughput equals tokens per second per device, times utilization, times batching efficiency. Each factor is a place where optimistic plans go to die, so take them one at a time.

Tokens per second per device is what benchmarks report, and the number is meaningful only with its conditions attached: which model, which quantization, what context lengths, what batch size. A figure quoted at ideal batch on short prompts can be several multiples of what your traffic will see. Batching efficiency captures the gap between that ideal and your reality: real request streams have uneven arrivals, mixed prompt lengths and long-context outliers that fragment batches, and the KV cache limits how many sequences fit in flight, as covered in Inference Optimization. Utilization captures time: diurnal load curves, provisioning for peak, failover headroom and maintenance all mean the fleet spends much of its life below capacity.

Illustrative only. Suppose a device sustains 10,000 output tokens per second under ideal continuous batching. Your traffic mix delivers 60 percent batching efficiency: 6,000. Your load curve and peak-provisioning policy average 45 percent utilization: an effective 2,700 tokens per second per device across the day. A capacity plan, or a cost-per-token estimate, built on the 10,000 figure is optimistic by nearly a factor of four. The numbers are invented; the gap between datasheet and delivered is not unusual.

This is why utilization, not peak specs, decides economics. Two operators with identical hardware can see cost-per-token profiles that differ by multiples, purely on how well they batch and how full they run. It is also why managed API providers, who pool demand across thousands of tenants, can often beat the unit economics of a self-hosted cluster serving one spiky internal workload. Before comparing per-token prices, run this arithmetic on your own assumptions; the Cost Estimator in the Lab exists for exactly that exercise.

Buy, rent or reserve

Once you know your effective tokens per second, the procurement question is classic capacity planning: match a demand curve to a supply commitment. What makes AI compute unusual is the supply side, which in recent years has cycled between scarcity and glut, with allocation queues, long lead times for current-generation hardware, and data-center power and grid interconnection emerging as real siting constraints, a theme the sustainability deep-dive covers from the energy angle.

The three postures trade flexibility against unit cost and certainty. On-demand cloud capacity is the most flexible and typically the most expensive per unit, and it carries a risk that surprises teams: during scarcity phases, the capacity you assumed was elastic may simply not be available in your region when you need it. Reserved or committed capacity trades a one-to-multi-year commitment for better rates and, often more valuable, an actual availability guarantee. Owned hardware can win on unit economics at sustained high utilization, but you inherit procurement lead times, depreciation risk against a fast-moving hardware curve, and the operational burden of running accelerator fleets, a skill set most enterprises do not have and should think hard before building.

For enterprises consuming models through managed APIs, the provider has made this decision for you, but it still leaks through as rate limits, provisioned-throughput tiers and regional availability. The same logic applies one level up: committed API throughput is reserved capacity by another name.

Planning under scarcity. Treat compute availability as a risk register item, not a given. Practical hedges: reserve ahead of projected need rather than at it; qualify a second supply path (another region, provider or accelerator class) before you need it; keep workloads portable enough that the option is real; and remember that efficiency work, routing, caching, quantization, batching, is capacity you do not have to procure.

The architect view

You will probably never buy a rack of accelerators, and you do not need to. But every consequential decision in this domain, model choice, latency budget, self-host versus API, vendor contract, sits on top of hardware assumptions, and the architects who surface those assumptions make visibly better calls than those who treat the API as the bottom of the stack.

The tokens are the product. The silicon is the cost structure. An architect who can read both layers can tell the difference between a price that reflects physics and a price that reflects negotiation, and that distinction is worth real money on every contract you sign.

← GenAI FinOps: Governing AI Spend at Scale ALL OF TOKENOMICS