OasisKV: Scaling In-Decode KV Cache Beyond HBM with Lookahead Sparse Prefetching
OasisKV keeps most of an LLM's key-value memory off the GPU and prefetches just the right pieces ahead of time, nearly doubling decoding throughput
When a large language model generates text token by token, it must keep referring back to a growing key-value (KV) cache of past tokens, and this cache quickly fills up the GPU's fast but limited HBM memory as contexts grow. OasisKV reuses the 'draft tokens' already produced by speculative decoding to accurately predict, one step ahead, which KV blocks the next decoding step will actually need, then prefetches them in the background from CPU or remote memory into GPU HBM. Built on top of vLLM, it keeps accuracy within 0.7 points of full attention while raising decode throughput by up to roughly 2x.
METAL MEDIA explanatory visual
How OasisKV predicts and prefetches KV blocks ahead of decoding
Evidence statusMeasured results reported
- The problemLong-context decoding requires keeping a growing KV cache resident in GPU HBM, which caps batch size and throughput
- Lookahead predictionDraft tokens from speculative decoding are used to rank which KV blocks the next decode step will need, without training a dedicated predictor
- Selection and capped transferPredicted blocks are compared against resident GPU blocks; only missing ones are fetched, capped per step so transfer fits within the PCIe bandwidth budget
- Asynchronous background pipelinePrediction, selection, and transfer run as overlapped background stages across layers, hiding data movement behind ongoing GPU computation
- OutcomeBuilt on vLLM, throughput improved up to about 2.1x with accuracy loss under 0.7 points, and about 2x under prefill-decode disaggregated serving
What they did
- Problem: as agentic workloads push context lengths far beyond chatbot-era prompts, the KV cache dominates GPU high-bandwidth memory (HBM) usage, capping batch size and throughput.
- Method: OasisKV reuses the draft tokens already generated by speculative decoding as a training-free signal to predict which KV blocks the next decode step will need, then runs a background pipeline (predict, select, transfer) that prefetches those blocks from host or remote memory into HBM before they're needed.
- Implementation: prototyped on vLLM with a head-wise logical-to-logical mapping over the paged KV pool and a capped-eviction policy that bounds how many KV blocks are fetched per step so PCIe transfer stays hidden behind compute.
- Result: under a 2,048-token KV budget, accuracy stays within 0.7 points of full attention (which keeps the entire KV cache), while throughput rises 1.69x over dense vLLM on a reasoning workload (at 0.1 points accuracy loss) and up to 2.1x on multi-GPU long-context serving.
- Extension: under prefill-decode disaggregated serving, OasisKV reaches about 2x dense throughput while admitting each request with 6.5-9.7x less KV data and using 2.2-2.6x less decode-node host memory than transferring the full KV cache.

| HuggingFace Transformers stack | vLLM stack | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Dataset / Subset | Metric | Full | Quest | Δ | FreeKV | Δ | Full | Ours | Δ |
| Long input — Llama-3.1-8B-Instruct, LongBench v2 | |||||||||
| Overall | 29.62 | 29.42 | −0.20 | 29.03 | −0.59 | 30.23 | 29.62 | −0.61 | |
| Short | 34.44 | 34.44 | 0.00 | 35.00 | +0.56 | 35.56 | 33.89 | −1.67 | |
| Medium | 28.37 | 28.84 | +0.47 | 26.51 | −1.86 | 27.44 | 27.44 | 0.00 | |
| Long | 24.07 | 22.22 | −1.85 | 24.07 | 0.00 | 26.85 | 26.85 | 0.00 | |
| Long input — Qwen3-8B, LongBench v2 | |||||||||
| Overall | 32.21 | 31.61 | −0.60 | 31.01 | −1.20 | 33.60 | 33.20 | −0.40 | |
| Short | 36.67 | 37.22 | +0.55 | 36.67 | 0.00 | 39.44 | 38.33 | −1.11 | |
| Medium | 29.30 | 26.98 | −2.32 | 27.44 | −1.86 | 29.30 | 30.70 | +1.40 | |
| Long | 30.56 | 31.48 | +0.92 | 28.70 | −1.86 | 32.41 | 29.63 | −2.78 | |
| Long output — Qwen3-8B, reasoning | |||||||||
| Overall | pass@k | 81.41 | 78.86 | −2.56 | 77.91 | −3.50 | 78.84 | 78.18 | −0.66 |
| avg@k | 69.48 | 66.65 | −2.83 | 66.85 | −2.63 | 67.63 | 67.28 | −0.35 | |
| AIME24 | pass@8 | 86.67 | 86.67 | 0.00 | 80.00 | −6.67 | 83.33 | 83.33 | 0.00 |
| avg@8 | 77.50 | 75.42 | −2.08 | 72.08 | −5.42 | 79.17 | 76.67 | −2.50 | |
| AIME25 | pass@8 | 83.33 | 76.67 | −6.66 | 80.00 | −3.33 | 80.00 | 80.00 | 0.00 |
| avg@8 | 70.83 | 64.17 | −6.66 | 68.75 | −2.08 | 65.42 | 67.97 | +2.55 | |
| GPQA-Diamond | pass@4 | 74.24 | 73.23 | −1.01 | 73.74 | −0.50 | 73.20 | 71.21 | −1.99 |
| avg@4 | 60.10 | 60.36 | +0.26 | 59.72 | −0.38 | 58.30 | 57.20 | −1.10 |
| Fetch Ratio | Fetch | BW | TPS | AIME24 | |
|---|---|---|---|---|---|
| (GB/step) | (GB/s) | (tok/s) | avg@32 | pass@32 | |
| 0.01 | 0.30 | 5.0 | 2,178 | 74.90 | 90.00 |
| 0.02 | 0.60 | 9.8 | 2,066 | 75.10 | 90.00 |
| 0.05 | 1.49 | 23.8 | 2,083 | 75.94 | 86.67 |
| 0.10 | 2.87 | 31.4 | 1,421 | 76.77 | 86.67 |
| 0.20 | 4.34 | 34.0 | 1,035 | 77.40 | 93.33 |
| Fetch all | 5.05 | 33.5 | 824 | 76.46 | 86.67 |

Findings
- Under a 2,048-token KV budget, accuracy stayed within 0.7 points of full attention.
- On a reasoning workload, throughput improved 1.69x over dense vLLM at a cost of 0.1 accuracy points.
- On multi-GPU long-context serving, throughput improved by up to 2.1x.
- Under prefill-decode disaggregated serving, OasisKV admitted each request with 6.5-9.7x less KV than full transfer, reached about 2x dense throughput, and used 2.2-2.6x less decode-node host memory.
- On Qwen3-8B, setting the per-step fetch cap to 0.05 kept accuracy within 0.1 point of dense (75.94 vs. 76.04) while achieving 2.5x the throughput of fetching everything (2,083 tok/s).
Where it can be used
- Serving infrastructure for chatbots, coding agents, and web-use agents that handle long contexts or long reasoning traces, where reducing GPU memory pressure allows more concurrent requests
- Throughput improvement for LLM serving systems deployed across multiple GPUs with long-context workloads
- Reducing network traffic and decode-node host memory in large-scale serving clusters that separate prefill and decode stages

Limits and open work
- Evaluation is limited to specific models (Qwen3-8B, Qwen3-32B, Qwen3-235B) and benchmarks (AIME24/25, GPQA-Diamond, LongBench v2, GSM8K), so generalization to other models or tasks is not yet established.
- The prototype does not yet support prefix caching; its projected time-to-first-token benefits under prefix caching are estimated analytically rather than measured directly.
- Reported numbers were measured under specific hardware conditions (H100 GPUs, PCIe bandwidth), and results may differ under other interconnects or memory hierarchies.
- Prediction misses still occur and require corrective fetches, which partially offset the network traffic savings during decoding.
Why it matters
GPU high-bandwidth memory is scarce and expensive, and long-context workloads make it the main bottleneck limiting how many requests a server can handle at once; this work shows a way to keep accuracy nearly intact while serving substantially more requests on the same hardware. It matters especially for multi-GPU deployments and disaggregated serving setups where memory and network costs directly determine how large-scale LLM services can scale.
Terms in this paper
- KV cache · the stored keys and values from previously processed tokens that a language model must reference to generate each new token
- HBM · high-bandwidth memory on a GPU that is fast but limited in capacity
- speculative decoding · a technique that uses a small draft model to guess several future tokens ahead, speeding up generation
- prefill-decode disaggregation · a serving setup where processing the prompt (prefill) and generating tokens one by one (decode) happen on separate servers
- capped eviction · a policy that limits how many new KV blocks can be fetched per decoding step to keep data transfer within the available time
Original abstract (English)
Large language model (LLM) inference serving is increasingly constrained by memory rather than compute. As long-context and long-form reasoning workloads become more prevalent, the key-value (KV) cache dominates both memory footprint and memory traffic during LLM token generation, i.e., decode. In particular, HBM capacity has become a scarce and costly resource that heavily limits inference batch size and system throughput. This paper presents OasisKV, a memory-centric LLM inference system design that alleviates HBM capacity pressure by decoupling full KV-cache storage from HBM during LLM decoding. Because decode-time attention is naturally sparse, OasisKV keeps only the KV entries of the most relevant tokens in HBMs for attention computation. We observe that future important tokens can be predicted accurately in advance using lookahead tokens drafted by speculative decoding (SD). OasisKV employs an efficient attention background pipeline to identify important KV blocks. They are then prefetched from higher-capacity memory tiers (e.g., host or remote memory) and staged in HBMs before being used in the next decode step. We implement OasisKV based on vLLM. The lookahead prediction is accurate enough to keep accuracy within 0.7 points of full attention under a 2,048-token KV budget. This lets OasisKV turn sparsity into throughput gain: 1.69times over dense vLLM on the reasoning workload at 0.1 points of accuracy loss, and up to 2.1times on multi-GPU long-context serving. Under prefill--decode disaggregation, OasisKV reaches about 2times dense throughput while admitting each request with 6.5--9.7times less KV and holding 2.2-2.6 less decode-node host memory than full KV transfer.
Read on arXivLatest papers
- SWE-bench Science: Can Coding Agents Resolve Engineering Tasks in Science?AI coding agents were tested on fixing real scientific software, and even the best one failed more than half the time
- FlashPrefill V2: Block-Sparse Prefill Attention for Long-Context LLM ServingMaking sparse attention fast enough and accurate enough for real LLM serving, not just papers
- PolicyGuide: From Guarding One Action to Guiding the Whole Workflow for Policy-Compliant LLM AgentsMaking customer-service AI agents follow the whole procedure, not just avoid one bad action
- EXIMO: VLM Guided Exploration of VLA PoliciesTeaching a robot new chores without human teleoperation, by letting a chatty AI supervise it
- EnvHarness: Awakening Static Worlds for Agent LearningInstead of building new training worlds from scratch, this work adds a plug-in layer that reshapes existing ones around each agent's actual weaknesses
- Bounded Sovereignty and the Control Tax: Pricing AI Oversight When the Deployer Does Not Own the ModelCompanies that rent AI instead of owning it can only do half of AI safety oversight
- PersonalBench: Measuring the Authorship Gap in LLM PersonalizationAI can be prompted to write 'like someone,' but its own voice never fully disappears
- Automated Summarization of Financial News Using Large Language Models and Retrieval-Augmented Generation: An Early Empirical Study (Fall 2023)Testing AI summaries of stock news, the simple approach beat the trendy retrieval-based one
Latest from METAL MEDIA
Figures: Can Xiao et al., arXiv:2608.08097, arxiv-nonexclusive