<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Kv-Cache on Jaehun's Blog</title><link>https://jaehun.me/en/categories/kv-cache/</link><description>Recent content in Kv-Cache on Jaehun's Blog</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Tue, 15 Sep 2026 08:56:51 +0900</lastBuildDate><atom:link href="https://jaehun.me/en/categories/kv-cache/index.xml" rel="self" type="application/rss+xml"/><item><title>SAS: Simple Attention Sparsification via End-to-End Optimization of Context Ranking</title><link>https://jaehun.me/en/posts/sas-simple-attention-sparsification-via-end-to-end-optimization-of-context-ranking/</link><pubDate>Tue, 15 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/sas-simple-attention-sparsification-via-end-to-end-optimization-of-context-ranking/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.13141"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="sas-a-simple-attention-sparsification-that-learns-context-ranking-directly-without-distillation"&gt;SAS: A Simple Attention Sparsification That Learns Context Ranking Directly Without Distillation&lt;a href="#sas-a-simple-attention-sparsification-that-learns-context-ranking-directly-without-distillation" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — In post-training attention sparsification, inject the continuous scores produced by the selector into the attention logits as a &lt;strong&gt;log gate&lt;/strong&gt;. This bypasses the gradients blocked by discrete Top-K selection, allowing the selector to be trained &lt;strong&gt;end-to-end with the language modeling loss, without auxiliary distillation&lt;/strong&gt;. As a result, at a tight budget (1024 tokens), it lifts GPQA-Diamond by up to &lt;strong&gt;+15.5 points&lt;/strong&gt; over SeerAttention-R on Qwen3-4B/8B/14B, and cuts decoding latency by up to &lt;strong&gt;5.6×&lt;/strong&gt; at 512K context.&lt;/p&gt;</description></item><item><title>VestigeKV: The NoPE-MLA KV Cache Carries Its Own Eviction Signal in a Vestigial Branch</title><link>https://jaehun.me/en/posts/vestigekv-the-nope-mla-kv-cache-carries-its-own-eviction-signal-in-a-vestigial-branch/</link><pubDate>Wed, 09 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/vestigekv-the-nope-mla-kv-cache-carries-its-own-eviction-signal-in-a-vestigial-branch/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.03949v1"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="vestigekv-the-degenerate-rope-branch-carries-its-own-cache-eviction-signal"&gt;VestigeKV: The Degenerate RoPE Branch Carries Its Own Cache Eviction Signal&lt;a href="#vestigekv-the-degenerate-rope-branch-carries-its-own-cache-eviction-signal" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h2 id="tldr"&gt;TL;DR&lt;a href="#tldr" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;In &lt;strong&gt;NoPE-MLA&lt;/strong&gt; models (Kimi Linear 48B), reading only &lt;strong&gt;11%&lt;/strong&gt; of each row — the 64-dim &lt;strong&gt;decoupled branch&lt;/strong&gt; that training has repurposed as a &lt;em&gt;salience channel&lt;/em&gt;, a &amp;ldquo;vestige&amp;rdquo; of RoPE — yields a query-independent importance signal and achieves &lt;strong&gt;8–32×&lt;/strong&gt; (up to &lt;strong&gt;128×&lt;/strong&gt; with the retrieval tier) KV cache compression while maintaining retrieval performance. It is a &lt;strong&gt;pure cache policy&lt;/strong&gt; that never touches weights, kernels, or compute (source: Abstract).&lt;/p&gt;</description></item><item><title>ShallowStream: Index Shallow then Answer Deep for Streaming Video Understanding</title><link>https://jaehun.me/en/posts/shallowstream-index-shallow-then-answer-deep-for-streaming-video-understanding/</link><pubDate>Tue, 08 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/shallowstream-index-shallow-then-answer-deep-for-streaming-video-understanding/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.02780v1"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="shallowstream-index-shallowly-answer-deeply--unlocking-the-computational-bottleneck-of-streaming-video-understanding"&gt;ShallowStream: Index Shallowly, Answer Deeply — Unlocking the Computational Bottleneck of Streaming Video Understanding&lt;a href="#shallowstream-index-shallowly-answer-deeply--unlocking-the-computational-bottleneck-of-streaming-video-understanding" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — In streaming video understanding, the most expensive cost is prefilling every frame through the MLLM&amp;rsquo;s &lt;strong&gt;full depth (28–32 layers)&lt;/strong&gt;. ShallowStream builds frame encoding and a retrieval index with &lt;strong&gt;only 4–5 shallow layers&lt;/strong&gt;, and runs full-depth computation on the retrieved evidence &lt;strong&gt;only at the moment a question arrives&lt;/strong&gt;. As a result, it keeps SOTA-level performance (OVO-Bench 69.5 / StreamingBench 78.2) while cutting per-frame prefill by &lt;strong&gt;up to 52.1×&lt;/strong&gt; and 10-second end-to-end latency by &lt;strong&gt;up to 11.9×&lt;/strong&gt; (source: Abstract).&lt;/p&gt;</description></item><item><title>BeaconKV: Key-Value Cache Compression Guided by Beacon Queries for Efficient Large Reasoning Model Inference</title><link>https://jaehun.me/en/posts/beaconkv-key-value-cache-compression-guided-by-beacon-queries-for-efficient-large-reasoning-model-inference/</link><pubDate>Mon, 07 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/beaconkv-key-value-cache-compression-guided-by-beacon-queries-for-efficient-large-reasoning-model-inference/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.04971v1"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="catch-the-moment-a-model-revisits-its-thoughts-how-beaconkv-compresses-reasoning-kv-caches-58-with-beacon-queries"&gt;Catch the Moment a Model &amp;ldquo;Revisits Its Thoughts&amp;rdquo;: How BeaconKV Compresses Reasoning KV Caches 5.8× with Beacon Queries&lt;a href="#catch-the-moment-a-model-revisits-its-thoughts-how-beaconkv-compresses-reasoning-kv-caches-58-with-beacon-queries" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&#10; &lt;blockquote&#10; class="border-primary bg-muted/30 hover:bg-muted/40 my-6 rounded-r-lg border-l-4 py-4 pr-4 pl-6 italic transition-all duration-200 ease-out hover:translate-x-1"&#10; &gt;&#10; &lt;div class="prose prose-sm max-w-none"&gt;&#10; &lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — The KV cache of a Large Reasoning Model (LRM) grows linearly as it produces longer Chains-of-Thought (CoT). When Qwen3-4B generates 32K tokens at batch size 16, the KV cache alone exceeds &lt;strong&gt;77 GB&lt;/strong&gt;, approaching the 80 GB GPU limit (source: §1). Existing compression methods predict future important tokens from &lt;strong&gt;recent queries&lt;/strong&gt;, but this assumption breaks down during reasoning because of a phenomenon called Thought Revisiting Token (TRT), in which the model &lt;strong&gt;re-reads distant past context (problem definition, solution plan)&lt;/strong&gt; (source: §3). Building on the geometric insight that the &lt;strong&gt;global queries&lt;/strong&gt; behind TRT form a few clusters in embedding space, BeaconKV selects a &lt;strong&gt;beacon query&lt;/strong&gt; to represent each cluster online via Continual FPS and compresses the KV cache accordingly. This achieves &lt;strong&gt;up to 5.8× memory savings (77.0 → 13.3 GB)&lt;/strong&gt; and &lt;strong&gt;4.3× throughput gains (82.3 → 356.4 tokens/s)&lt;/strong&gt;, while improving accuracy by up to &lt;strong&gt;31.7 pp&lt;/strong&gt; over RPC and R-KV (source: §5.4, Fig. 8).&lt;/p&gt;</description></item><item><title>Language Models Can Control Their Own Attention</title><link>https://jaehun.me/en/posts/language-models-can-control-their-own-attention/</link><pubDate>Mon, 07 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/language-models-can-control-their-own-attention/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.02737v1"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="language-models-control-their-own-attention-declarative-attention"&gt;Language Models Control Their Own Attention: Declarative Attention&lt;a href="#language-models-control-their-own-attention-declarative-attention" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Existing sparse attention methods still paid $O(N)$ per decoding step by &lt;em&gt;approximating externally&lt;/em&gt; which tokens matter. This paper flips the direction: it lets the model &lt;strong&gt;&amp;ldquo;declare&amp;rdquo;&lt;/strong&gt; directly, inside Chain-of-Thought (CoT), &lt;strong&gt;where it will look&lt;/strong&gt;. The inference engine parses this declaration like a tool call and skips most KV cache reads. Without any training (zero-shot), Gemma-4-31B cuts decoding attention cost by &lt;strong&gt;52.0%&lt;/strong&gt; with only a &lt;strong&gt;1.27pp&lt;/strong&gt; accuracy drop (source: §1, §5.1).&lt;/p&gt;</description></item><item><title>Same Request, Different Answer: Quantization Amplifies Cache-Induced Divergence in LLM Serving</title><link>https://jaehun.me/en/posts/same-request-different-answer-quantization-amplifies-cache-induced-divergence-in-llm-serving/</link><pubDate>Mon, 07 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/same-request-different-answer-quantization-amplifies-cache-induced-divergence-in-llm-serving/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.04748v1"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="same-request-different-answer-prefix-caching-makes-serving-non-reproducible-and-quantization-amplifies-it"&gt;Same Request, Different Answer: Prefix Caching Makes Serving Non-Reproducible, and Quantization Amplifies It&lt;a href="#same-request-different-answer-prefix-caching-makes-serving-non-reproducible-and-quantization-amplifies-it" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&#10; &lt;blockquote&#10; class="border-primary bg-muted/30 hover:bg-muted/40 my-6 rounded-r-lg border-l-4 py-4 pr-4 pl-6 italic transition-all duration-200 ease-out hover:translate-x-1"&#10; &gt;&#10; &lt;div class="prose prose-sm max-w-none"&gt;&#10; &lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Prefix caching is billed as a &amp;ldquo;transparent optimization,&amp;rdquo; but it is not transparent. With caching off, repeated runs of the same workload are &lt;strong&gt;bit-identical across all 10 configurations × 80 episodes = 800 runs&lt;/strong&gt; (source: Tab. 2); with caching on, agent trajectories change in &lt;strong&gt;36.2% of episodes at 16 bits and 75.0% under 4-bit quantization&lt;/strong&gt; (source: §IV-D). Yet average accuracy does not move — this is not &amp;ldquo;degradation&amp;rdquo; but &amp;ldquo;instability,&amp;rdquo; and the two call for different responses (source: §IV-F, §V).&lt;/p&gt;</description></item><item><title>SGD-KV: Summarization Guided KV Cache Compression</title><link>https://jaehun.me/en/posts/sgd-kv-summarization-guided-kv-cache-compression/</link><pubDate>Mon, 07 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/sgd-kv-summarization-guided-kv-cache-compression/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.03235v1"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="sgd-kv-finding-heads-that-are-good-at-summarizing-cuts-the-1m-token-kv-cache-by-up-to-75"&gt;SGD-KV: Finding &amp;lsquo;heads that are good at summarizing&amp;rsquo; cuts the 1M-token KV cache by up to 75%&lt;a href="#sgd-kv-finding-heads-that-are-good-at-summarizing-cuts-the-1m-token-kv-cache-by-up-to-75" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&#10; &lt;blockquote&#10; class="border-primary bg-muted/30 hover:bg-muted/40 my-6 rounded-r-lg border-l-4 py-4 pr-4 pl-6 italic transition-all duration-200 ease-out hover:translate-x-1"&#10; &gt;&#10; &lt;div class="prose prose-sm max-w-none"&gt;&#10; &lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Attention heads do not all do the same job. &lt;strong&gt;SGD-KV&lt;/strong&gt; pinpoints the &lt;strong&gt;summarization heads&lt;/strong&gt; — the ones responsible for the high-level information compression called &amp;lsquo;summarization&amp;rsquo; — with a diagnostic task, then hands out the KV cache budget in proportion to their scores. At contexts of up to 1 million (1M) tokens it cuts KV cache memory by up to &lt;strong&gt;75%&lt;/strong&gt; while beating existing head-level compression methods.&lt;/p&gt;</description></item><item><title>Random Attention: Rethinking KV Cache Eviction for Efficient Reasoning</title><link>https://jaehun.me/en/posts/random-attention-rethinking-kv-cache-eviction-for-efficient-reasoning/</link><pubDate>Sun, 06 Sep 2026 00:00:00 +0900</pubDate><guid>https://jaehun.me/en/posts/random-attention-rethinking-kv-cache-eviction-for-efficient-reasoning/</guid><description>&lt;p&gt;&lt;a&#10; href="https://arxiv.org/abs/2609.03430v1"target="_blank"&#10; class="inline-flex items-center gap-1"&#10; &gt;Paper&lt;svg class="h-3 w-3 flex-shrink-0" id="external-link" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/&gt;&lt;/svg&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="the-scores-were-a-waste-the-paradox-where-random-sampling-ties-the-strongest-in-kv-cache-eviction--an-in-depth-review-of-random-attention"&gt;The Scores Were a Waste: The Paradox Where &amp;lsquo;Random Sampling&amp;rsquo; Ties the Strongest in KV Cache Eviction — An In-Depth Review of Random Attention&lt;a href="#the-scores-were-a-waste-the-paradox-where-random-sampling-ties-the-strongest-in-kv-cache-eviction--an-in-depth-review-of-random-attention" class="heading-anchor" aria-label="Link to this section"&gt;&lt;svg class="h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"&gt;&lt;g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&#10; &lt;blockquote&#10; class="border-primary bg-muted/30 hover:bg-muted/40 my-6 rounded-r-lg border-l-4 py-4 pr-4 pl-6 italic transition-all duration-200 ease-out hover:translate-x-1"&#10; &gt;&#10; &lt;div class="prose prose-sm max-w-none"&gt;&#10; &lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Research on reasoning-specific KV cache eviction has always been the problem of &lt;strong&gt;scoring&lt;/strong&gt; &amp;ldquo;which tokens will matter later&amp;rdquo; and picking the top-K. Random Attention forcibly preserves only the prompt with +∞ and evicts the rest &lt;strong&gt;without any scores, uniformly at random per head&lt;/strong&gt;. Across 4 models and 6 reasoning tasks it matches the strongest baseline (TriAttention) in accuracy (statistical advantage in 31 of 60 comparison cells, significantly worse in just 1), and since vLLM serving has no scoring pass it delivers &lt;strong&gt;32–43% higher throughput&lt;/strong&gt; (source: §1, Fig. 1, Tab. 1, Tab. 4).&lt;/p&gt;</description></item></channel></rss>