The news. On August 13, 2026, researchers posted Reduced Matrix Multiplication (RMM), a training-free, input-adaptive method for reducing the matrix products a Transformer computes at inference. RMM selects informative slices along the contraction dimensions of those matrix products while leaving model weights unchanged, and exposes a retention ratio controlling how much computation remains — which the authors present as a smoother accuracy-efficiency tradeoff than discrete alternatives. The paper reports evaluation across language models from 1B to 70B parameters, with wall-clock benchmarks from custom kernels on an NVIDIA A100, and says the gains are largest at longer sequence lengths. Its mechanistic ablations find that attention-side computations are more reducible than MLP components. Read the paper →

Picture the receipt from a very long shop. Four thousand lines, one total at the bottom. If someone asks what the total is and you have thirty seconds, you do not add four thousand numbers — you run your eye down the column, add the lines that are actually large, and stop. The answer you get is not the true total, but it is close enough that the person asking cannot tell, and you paid for a few dozen additions instead of four thousand. Which lines were worth reading was not decided in advance; it was decided by looking at this receipt.

That is the shape of what RMM does, and the reason it has a place to stand is that a matrix multiply is built out of exactly this operation and nothing else. Multiply an M by K matrix by a K by N one and each of the M times N cells in the answer is a single sum of K products — one term for each position along the shared index. That shared index is the contraction dimension: the naive matmul step walks it from end to end for every output cell, reading two values per position — one from each input — so the length of that walk is what the cell costs.

C[2][3] reads row 2 of A and column 3 of B
A×B=C
■ row 2 of A■ col 3 of B■ C[2][3]

RMM's move is to stop walking all of it. Instead of summing every position along K, it selects the slices it judges informative for the input currently passing through, sums over those, and skips the others — and because the skipped work is a piece of the sum rather than a piece of the model, the weights are never modified and nothing is retrained. A retention ratio says how much of K survives. Turn it to 1 and you have the original matmul back; turn it down and you buy compute at a price in accuracy that the authors describe as moving smoothly rather than in steps.

Smoothness is worth dwelling on, because it is the practical difference from the neighbours. Quantization gives you 8-bit, 4-bit, sometimes 2-bit — a short menu of discrete points, and dropping a tier is a commitment. Structured pruning removes rows or columns for good, usually with a finetuning run behind it. A retention ratio is a continuous number, so a deployment can hold to a latency budget by moving it a little rather than by switching methods. The knob's granularity, not just its depth, is part of what is being claimed here.

ApproachWhat gets skippedAre the weights touched?What the knob looks like
Weight quantizationbits per stored number, not termsyes — weights are rewritten in a smaller formata short menu of formats (8 / 4 / 2-bit, setup-dependent, illustrative)
Structured pruningwhole rows or columns, permanentlyyes — removed for good, usually with finetuning afterfixed once chosen; changing it means another prune
Sparse attention and KV evictionquery-key interactions, and with eviction, cached tokensnoa budget of interactions or entries, resting on a prediction about which ones matter
Mixture-of-experts routingwhole expert blocks per tokenno, but routing is trained indiscrete — a token gets a whole expert or none of it
RMM (contraction-dimension slicing)positions along the shared index of each matmulno — the paper states weights are left unchangeda continuous retention ratio, applied per input

Here is where it earns its keep, in one matmul. Hold a single feed-forward projection fixed on a 70B-class model: hidden width 8,192, feed-forward width 28,672, weights in fp16. For one token that projection is a 1 by 8,192 activation against an 8,192 by 28,672 weight matrix, so its contraction dimension is K = 8,192 and it costs 2 x 8,192 x 28,672 = about 470 MFLOP, reading 8,192 x 28,672 x 2 bytes = about 470 MB of weights. Now price the same projection at a retention ratio of 0.5: the sum runs over 4,096 positions instead of 8,192, so it costs about 235 MFLOP and touches about 235 MB — because a skipped slice of the activation is also a skipped row of the weight matrix, which never has to be read. The saving lands on the arithmetic and the memory traffic at the same time, which is the property that makes it show up in wall-clock rather than only in a FLOP count. (This configuration and the 0.5 ratio are illustrative, built from the curriculum's own matmul arithmetic to show what a retention ratio prices; the paper reports its own wall-clock results from custom A100 kernels and does not publish these figures.)

A
1024×1024
×
B
1024×1024
=
C
1024×1024
FLOPs
2 × 1024³ = 2.1 billion
each output: 1024 multiply-adds
Bytes
3 × 1024² × 4B = 12.6 MB
load A + load B + store C (FP32)
AI
≈ 170 FLOPs/byteCompute-bound

That last point is also the honest limit. Skipping arbitrary positions along K is only cheap if the kernel can actually decline to load them, and a general-purpose matmul kernel is built to stream contiguous memory rather than to hop over it — which is why the paper's wall-clock evidence comes from custom kernels on an A100 and not from a stock library call. The paper also reports the advantage growing at longer sequence lengths, and it is worth being careful about why: in the weight projections the contraction dimension is the model's hidden width, which does not move with sequence length at all. The one product whose contraction dimension really does grow with the sequence is the value mix — combining every earlier token's value vector, weighted by its attention score, which is a sum with one term per earlier token. Scoring queries against keys is not that: it contracts over the head width, and what grows with the sequence there is the size of the score matrix it produces, not the length of each individual sum. The summary reports the trend and not its cause, so treat that connection as a reading rather than a finding. A method that reads as pure arithmetic on paper is, in practice, a claim about kernels.

The finding most likely to outlive the paper is the one from its ablations, and it is a statement about where approximation is tolerable rather than how much of it you can afford. In the authors' words, "attention-side computations are substantially more reducible than MLP components." On the receipt, the snack lines round away and the rent line does not. If that asymmetry holds beyond this method, it is a budgeting rule for inference-time approximation generally: spend the error budget on the attention path and protect the MLP, rather than reducing every matmul by the same ratio because they look alike from the outside. Two limits are worth carrying alongside it — the evidence available here is the 24-page paper's own benchmarks, with no independent replication cited, and "informative slices" is doing real work that the summary does not unpack, so how the selection behaves on inputs unlike the evaluation set is exactly the question a deployment would need answered.

Goes deeper in: GPU & CUDA → Tiling & Matrix Multiply → Naive Matrix Multiply

Related explainers

Continue in trackTiling & Matrix Multiply: what the contraction dimension costs

Frequently Asked Questions

Check what you knowMap your AI & GPU knowledge across every track — free, role-based