Modern models leave a TPU-v3 at 15% utilization — depthwise convolutions take 5% of the math but 65% of the time — so FAST searches the hardware datapath, software schedules, and compiler fusion together, discovering accelerators that swap half their DRAM bandwidth for a huge on-chip buffer and deliver 3.7× performance per watt.
The argument in one glance
-
Problem
The models moved; the silicon didn’t
Datacenter accelerators like the TPU were shaped by the models of their design era. Then EfficientNet arrived with depthwise-separable convolutions and BERT with attention — and TPU-v3 utilization on EfficientNet-B7 fell to 14.8%: depthwise convolutions perform 5% of the FLOPs yet consume 65% of the runtime, and BERT’s softmax dominates as sequences lengthen.
-
What people did
Automated accelerator design-space exploration
A rich research line searches accelerator families — mutating PE counts, buffer sizes, and convolution mappings (Timeloop, MAESTRO, Interstellar, dMazeRunner, ZigZag). Each explores one slice: usually a fixed datapath family, single layers, convolutions only.
-
Why it fell short
Slice-wise search misses the interactions that matter
Per-layer tools cannot see cross-layer opportunities like operation fusion or weight pinning; datapath-only search hits a wall because performance is min(compute, memory) — the paper’s ablation shows a bigger on-chip memory yields ZERO benefit without a fusion pass to exploit it. The winning design decisions live in the joint space of hardware, schedule, and compiler, which is astronomically large (~10²³⁰⁰ configurations).
-
This paper's idea
Search the whole stack at once, against a validated simulator
FAST couples a broad datapath template (grids of PEs with both systolic arrays and vector units, three-level configurable memory), Timeloop-based scheduling, an ILP fusion pass that assigns tensors and pinned weights to SRAM by minimizing modeled execution time, tensor padding, and even an algorithmic knob (two-pass softmax) — driven by black-box optimization (Vizier/LCS) over a simulator within 8% of real TPU-v3. Single-workload designs average 3.7× Perf/TDP over TPU-v3 (6.4× on EfficientNet); one multi-workload design averages 2.4× — and the ROI analysis says such chips break even at ~2,000–3,500 deployed units.
Why this problem is worth solving
Inference at planetary scale changed the economics of hardware specialization. Models serving billions of users run on thousands of accelerators, so even modest efficiency gains fund silicon projects — if the design cost is contained and the design is right for the workload. The paper’s return-on-investment framing makes it concrete: a custom inference accelerator breaks even at roughly 2,164–3,534 deployed chips against the baseline, well within a moderate datacenter deployment — and that analysis conservatively ignores latency-driven revenue (a 500 ms delay cost Bing 1.2% of revenue per user) and demand growth (Facebook’s inference demand grew 3.5× in under two years).
The reason new designs are needed is that models drifted away
from the ones accelerators were built for.
FLOPs per byte of memory traffic —
the roofline metric separating compute-bound from
bandwidth-bound execution; below ~200 FLOPS/B, current datacenter
accelerators stall on memory
What people did before, and where it broke
Accelerator DSE tools. Timeloop and MAESTRO search schedules for a given datapath, single layer at a time, convolutions only; Interstellar (Halide-based) covers blocking and spatial choices over scalar-PE grids; dMazeRunner prunes schedule search for conv/FC; ZigZag broadens datapaths but skips fusion. All optimize slices — none sees end-to-end performance, where fusion, weight pinning, and prefetching live. (For the workload-derived-hardware idea in a different domain, see the REVAMP explainer on this site — CGRAs specialized from application statistics.)
Fixed fusion templates. Production compilers fuse pattern-matched sequences (conv+ReLU and friends). The paper measures what that leaves behind: template fusion cannot lift EfficientNet above the memory-bound region, while hypothetical whole-MBConv-block fusion crosses 200 FLOPS/B — and hand-writing block templates per model family does not scale.
The interaction trap. The paper’s own breakdown experiment is the cleanest indictment of slice-wise search: starting from TPU-v3 and adding FAST’s discoveries incrementally, replacing the 16 MB global memory with the discovered 128 MB gives no speedup at all while fusion is disabled — the bandwidth bottleneck simply caps everything. Enable ILP fusion and the same memory unlocks the datapath. Knobs whose value depends on other knobs must be searched jointly.
One FAST trial, end to end
-
Hyperparameter proposal (Vizier) new
Google’s black-box optimization service proposes a configuration: PE grid dimensions, per-PE systolic array size and vector width, L1 buffer sizes and sharing, optional L2, global buffer size (0–256 MB), GDDR6 channel count, native batch size — plus compiler toggles like two-pass softmax. Linear Combination Swarm search outperforms Bayesian and random beyond 2,000 trials.
-
Datapath template instantiation new
The template is an approximate superset of published designs — scalar, vector, and matrix PEs with configurable three-level memory — so the search can express TPU-like, NVDLA-like, and unnamed hybrid architectures from one parameterization.
-
Scheduling (Timeloop) + padding
Each Conv2D/DepthwiseConv/Einsum/MatMul is mapped by Timeloop; a padding pass fixes dimensions that don’t factorize into the datapath. Any scheduling failure invalidates the design point.
-
FAST fusion (ILP) new
A second-pass fusion over XLA’s HLO graph: an integer linear program (SCIP, 20-minute cap) decides which intermediate tensors and pinned weight tensors live in SRAM, minimizing modeled total execution time directly — not proxy byte counts. This is the pass that converts big buffers into removed bandwidth bottlenecks.
-
Evaluation and objective new
A modified TPU production simulator (validated to 8.2 ± 2.7% of profiled TPU-v3) produces QPS; analytical area/power models on a sub-10-nm process produce TDP and area; the objective (e.g., Perf/TDP under area and power constraints) feeds back to Vizier. 5,000 trials per experiment, 10 minutes–2 hours each.
The idea
Search where the interactions live. FAST’s definition of the design space is its thesis: hardware datapath and schedule and compiler passes, because the profitable designs sit at their intersection. The combined space is estimated at O(10²³⁰⁰) — mapping choices per layer (~10²⁰⁰⁰ for a ResNet-50-sized model) times datapath configurations (~10¹³) times fusion decisions (~10³⁰⁰). No enumeration survives that; the architecture is black-box optimization over a fast, trustworthy evaluator, which is why the validated simulator (within ~8% of real hardware) is as load-bearing as any search heuristic.
Fusion as an optimization problem, not a pattern library. FAST fusion takes XLA’s already-fused HLO regions and decides, via ILP, which intermediate tensors avoid the DRAM round trip and which weights are pinned permanently in SRAM — with the objective being modeled execution time itself. This is what makes large on-chip memories meaningful: the EfficientNet-B7 sweep shows post-fusion operational intensity climbing with global memory size and falling with batch size (bigger working sets fit worse), exactly the compute-vs-memory allocation trade the datapath search needs to explore simultaneously.
Even the algorithm is a knob. BERT’s softmax requires three passes over its input (max, sum of exponentials, normalize). FAST adds a two-pass softmax — maintaining a running maximum and rescaling the running sum on the fly — trading up to 2N extra exponentials for N fewer memory accesses. Whether that trade wins depends on the very vector-throughput and bandwidth parameters being searched, so it enters the space as a hyperparameter. (Readers will recognize the online-softmax germ of FlashAttention here, deployed as a searchable option rather than a fixed kernel.)
What the search actually discovered. The revealing artifact is FAST-Large, the EfficientNet-B7 winner, side by side with a same-process TPU-v3: nearly identical peak compute (131 vs 123 TFLOPS), but half the memory bandwidth (448 vs 900 GB/s), a 4× larger global buffer (128 vs 32 MiB), tiny 8 KiB L1s, and small systolic arrays (32×32 rather than 128×128 — depthwise convolutions, lacking channel-dimension reductions, leave giant arrays idle). The design pays for SRAM with bandwidth money — affordable only because ILP fusion makes the SRAM do bandwidth’s job.
Designing an EfficientNet accelerator, 5,000 trials at a time
Perf/TDP = throughput per thermal design power (proxy for performance per dollar of ownership). PE = processing element (here: systolic array + vector unit + local buffers). HLO = XLA compiler's graph format. Numbers from the paper's B7 case study and Table 5.
Step 1 of 6
Diagnose the incumbent
Profiling EfficientNet-B7 on TPU-v3: 14.8% average utilization. Per-op accounting finds the culprit — depthwise convolutions, 5% of FLOPs, 65.3% of runtime. Per-layer accounting shows early layers (few channels) idling the 128×128 systolic arrays. Unfused operational intensity of 13–35 FLOPS/B sits far below the ~200 needed to escape the memory wall, and batching barely helps this parameter-light model.
B7 on TPU-v3: 14.8% util → 6.75× headroom depthwise: 5% FLOPs, 65% runtime
Why it works
- Performance is min(compute, memory) → single-slice optimizations stall at whichever wall they don’t address → only joint search can trade compute, SRAM, bandwidth, and fusion against each other (the buffer-without-fusion ablation is the proof).
- Fusion decided by ILP against modeled time → tensor placement and weight pinning respond to the actual datapath being evaluated → large on-chip memories become bandwidth substitutes, the economic core of the winning designs.
- A validated simulator (8% of real hardware) makes 5,000-trial black-box search meaningful → search quality is bounded by evaluator fidelity, not optimizer cleverness — and comparing against a simulated baseline on the same process keeps the comparison honest.
- The datapath template supersets published designs → the search is free to rediscover TPU-like shapes or abandon them → it abandoned them: small arrays for depthwise geometry, SRAM over bandwidth.
- Perf/TDP tracks Perf/TCO, and ROI scales with deployment volume → the framework outputs business decisions, not just architectures — including when the 2.4× general design beats the 6.4× specialist.
What it costs
- Simulation-first evidence. No chip is taped out; results rest on the validated simulator and analytical area/power models, with the baseline simulated for fairness.
- Search compute. 5,000 trials at 10 minutes–2 hours each, plus a 20-minute ILP budget per fusion solve — datacenter-scale design deserves datacenter-scale search, but it is not free.
- Fixed models. FAST optimizes hardware for given networks; it does not co-evolve the model architecture (acknowledged as a natural extension), and quantization is left orthogonal.
- Inference only. Training, with its different memory and communication profile, is out of scope.
- Specialization risk. A single-workload chip bets on workload longevity; the paper’s own ROI analysis partially hedges this by favoring multi-workload designs at volume.
The evaluation
Workloads span the difficulty spectrum deliberately: the full EfficientNet family (B0–B7, the depthwise stress test), BERT at sequence lengths 128 and 1024 (attention stress test), ResNet-50v2 (TPU-friendly CNN), and two production OCR components (RPN and an LSTM recognizer) that are already TPU-optimized — a designed-in worst case. Baseline: TPU-v3 simulated on the same sub-10-nm process, within the same area/TDP budgets.
What full-stack search buys, workload by workload
| Property | TPU-v3 (same-process baseline) | FAST schedule+fusion on TPU-v3 datapath | FAST single-workload designs | FAST multi-workload design |
|---|---|---|---|---|
| Perf/TDP vs baseline | ||||
| Signature design moves | Better mappings, ILP fusion, padding | Balanced compromise across workload demands | ||
| Economic reading | Reference | Software-only upside on existing fleets |
Check your understanding
1. FAST-Large beats a same-process TPU-v3 on EfficientNet with HALF the memory bandwidth (448 vs 900 GB/s). Predict where the bandwidth went.
2. The ablation replaces TPU-v3’s 16 MB memory with the discovered 128 MB — and, with fusion disabled, measures NO speedup. What does this establish about accelerator design methodology?
3. Depthwise convolutions do 5% of EfficientNet-B7’s FLOPs but take 65% of its TPU-v3 runtime. Why do 128×128 systolic arrays serve them so poorly, and what did FAST do about it?
4. FAST’s single-workload EfficientNet design achieves 6.4× Perf/TDP, yet the paper suggests the 2.4× multi-workload design may be the better business. What drives that conclusion?