Mingxin

Storage Acceleration vs Adding GPUs: Two Ways to Spend the Same Budget

Direct answer

Adding GPUs yields linear, expensive marginal capacity. When the bottleneck is KV re-compute, loading, or switching idle time, storage acceleration buys a 29–40% throughput gain for about a tenth of GPU spend (measured). Locate the bottleneck first, then decide.

Stated honestly: when you should add GPUs

When compute is truly saturated: short contexts, high cache hits, decode compute maxed out — the cluster has no wasted re-compute or idling to reclaim, storage acceleration gains are limited, and adding GPUs is the right answer. We honestly advise test-before-buy, and we tell unsuitable customers directly that it does not fit.

When the storage tier is the better answer

Bottleneck in re-compute: under long-context cold recovery, the no-external-storage baseline posts TTFT p50 149.5 s and 4.1 tok/s (R2) — new GPUs would just do more duplicate computation. The external KV tier under the same load: 11.85 s / 74.9 tok/s.

Bottleneck in idling: at 20 model switches per hour, effective utilization is only 46.7% on slow storage, lifted to 62.8% with FX100 (R1); loading a 70B model over NFS takes 23 minutes (R9). Adding GPUs replicates these losses proportionally instead of fixing them.

The ledger: storage spend within roughly 10% of GPU investment (joint-test basis) measured a 29–40% throughput gain (R2/R3) — more effective capacity for the same budget. The ROI calculator produces a range for your GPU count.

FAQ

How do I find where my bottleneck is?

Three signals: TTFT collapsing as concurrency rises (re-compute), GPU utilization periodically dropping into valleys (loading/switching), frequent HBM eviction alarms (KV crowding). The G2 baseline phase of a joint test produces the full profile.

Can I do both at once?

Yes, and it is common: first add the storage tier to raise the effective output of existing GPUs, then re-plan expansion against the true post-efficiency gap — the right order saves a chunk of budget.

How is the "about one tenth" figure computed?

Joint-test basis: FX100 fully populated at ¥371,200 against the investment of 8 GPU-server nodes (8 GPUs each). The exact ratio floats with GPU model; the calculator reproduces it.

Data sources (verifiable)

R1FX100 Comprehensive LLM Inference & Training Benchmark (8× AMD MI308X)2026-07-03
Download report PDF ↓
R2FX100 KV-Cache Benchmark (480B, TP8 long-context, signed)2026-07-05
Download report PDF ↓
R3FX100 KV-Cache Benchmark Summary (480B, TP4×2, all metrics, signed)2026-07-06
Download report PDF ↓
R9Mingxin FX100-HBMM vs NFS Baseline on Huawei Ascend 910B2026-05-30
Contact us for access →

Related reading

Joint test first, decisions second: gate-based acceptance with built-in stop-loss

The full costing model is provided as reproducible Python after NDA — customers can rerun it with their own parameters. Every key figure on this site carries a report ID and is open to third-party verification.

This site presents business-cooperation information and constitutes neither an investment offer nor any promise of returns. Measured data come from signed / official test reports (see the Evidence Library); vendor specs, public sources and estimates are labeled as such.