UBIQS

The bottleneck keeps moving: what it takes to support a model

"Supports model X" usually means the weights fit. That is the easy part. Every model generation changes which operations the hardware must be good at, and the bottleneck moves to a place nobody budgeted for.

Share LinkedIn X Email

The smallest operation became the wall

Attention turns scores into weights with softmax, and softmax needs one exponential per score. That is a small share of the arithmetic, but it sits on the critical path: every layer, for every token, must finish it before the next matrix multiply can start.

From H100 to B200, BF16 tensor throughput rose from about 1 to 2.25 PFLOPs, while the units that compute exponentials did not grow. Per streaming multiprocessor, that is 8,192 tensor operations per cycle against 16 exponentials. In FlashAttention-4's forward pass, the matrix work and the exponentials each take about 1,024 cycles per tile, so neither can hide behind the other.

FlashAttention-4's answer is to compute part of the exponentials in software, on the general multiply-add units, with a short polynomial:

  1. Rewrite e to the x as a power of 2, and split that power into a whole part and a fraction between 0 and 1.
  2. Handle the whole part for free, by writing it into the exponent bits of the floating-point result.
  3. Approximate 2 to the fraction with a cubic polynomial, evaluated as three fused multiply-adds.

The lesson for anyone designing inference silicon: the few percent of work that is not matrix math decides whether the matrix units are busy or waiting.

Models stopped being pure matrix math

The newest model families add steps that a multiply-accumulate array was never built for, and each asks something different of the hardware.

Model featureWhere it appearsWhat the hardware must doWhy matrix units alone fall short
Sparse attentionDeepSeek V3.2Score every past token, then keep the top 2,048 for each new tokenPicking the top 2,048 from a long history is selection, closer to sorting than multiplying
State space layersHybrid Mamba modelsUpdate a fixed-size state every token, and scan across the sequence during prefillWithout a parallel scan, prefill becomes one long sequential loop
Latent attentionDeepSeek V3 and laterLet all 128 heads attend to one compressed cache of 576 values per token per layerDecode shifts from waiting on memory to waiting on compute
Mixture of expertsDeepSeek, gpt-oss, Qwen3Route each token to a few experts that live on different chipsEvery layer adds an all-to-all exchange, so link latency sits on the critical path

None of these is exotic anymore. Each is in a model that providers serve today, as the vLLM write-up of DeepSeek's sparse attention shows, and the next generation will add more.

Context length rewrote the memory budget

Every past token leaves an entry in the key-value cache, and every new token reads the whole cache again. So memory grows with context, per user, and the bandwidth to read it grows with it.

ModelCache per tokenPer user at 128K tokensPer user at 1M tokens
Llama 3.3 70B, 8-bit cacheabout 164 KBabout 21 GBabout 164 GB
DeepSeek V3.2, latent attentionabout 40 KBabout 5 GBabout 40 GB
DeepSeek V4-Pro, compressed attentionabout 5 KBabout 0.7 GBabout 5 GB

The Llama figures follow from its published shape: 80 layers, 8 key-value heads of 128 values each, keys plus values, one byte per value. DeepSeek V3.2 stores 656 bytes per token per layer across 61 layers. DeepSeek V4 compresses the cache along the sequence, and in vLLM's 8-bit layout its Pro model needs about 5 KB per token.

A thirty-fold difference in per-user memory, between models served side by side today, changes what the right chip looks like. Hardware sized for one generation's memory ratio is mis-sized for the next.

What a compiler can fix after tape-out, and what it cannot

A compiler can teach a chip new math after tape-out. It cannot teach it new data movement.

New math is the easy case. A new activation, a new normalization or a different precision can be built from multiply-add and a polynomial with fitted coefficients, and loaded as software. It may run a few times slower than a dedicated circuit, but it is a small share of the work.

Data movement is different. When the work grows with the data, emulation multiplies the cost by the size of the data.

What the model needsHow you would emulate itWhat it costs
Top 2,048 of a long historyRepeat a maximum search 2,048 timesAbout 2,048 passes over the data instead of a handful
Fetch only the selected entriesRead the whole cache, then maskUndoes the point of sparse attention
Running scanStep through the sequence one token at a timeA long prefill becomes a sequential loop
Expert routing across chipsRelay messages through other chipsExtra link hops on every expert layer

The decisions that decide which future models a chip can serve well are mostly about moving data, and they are made before the first wafer.

Same model, different computation

The same model can run with 4-bit or 8-bit weights, with a hardware exponential or a polynomial one, with sums added in a different order. Floating-point addition is not associative, so each choice shifts the result slightly. On one machine that is a tuning detail. Across thousands of nodes from different owners, it becomes a question of trust: which model, at which precision, on which hardware, produced this answer?

Supporting a model at scale therefore includes proving what ran where, and that proof is strongest when it is anchored in the silicon itself rather than in software that can be copied. At UBIQS we are building distributed inference from the silicon up, on a silicon-proven hardware identity in every node: silicon-intrinsic, with no stored secret.

Questions to ask any inference platform about model support

  1. Which operations in your newest supported model run on dedicated hardware, and which are emulated in software?
  2. How does per-user speed change from 8K to 128K to 1M tokens of context, on the same hardware?
  3. What happens when a new model needs a selection, a scan or a routing step your silicon was not built for?
  4. When a model is served at a different precision than it was trained in, how do you measure what changed?
  5. What record shows which model, at which precision, on which hardware, produced a given answer?

A platform that answers all five is supporting models. One that cannot is fitting weights.

Keep reading

Related

Working on hardware provenance you need to prove?

We're talking with teams building verifiable, component-level trust into infrastructure and devices.