论文

Fathom:卸载 KV 缓存上稀疏解码的每查询读取深度

Fathom: Per-Query Read Depth for Sparse Decoding over Offloaded KV Caches

模型推理KV Cache

摘要

当代理会话运行到一百万个词元且同时驻有许多会话时,KV 缓存和对其进行排名的索引将驻留在主机内存中,并且对 top-k 步骤的所有 n 个键进行排名的扫描将成为限制解码的流量。我们提出了 Fathom,一种键扫描,其中每个查询决定读取每个键通道的多少位。 4 位 K 缓存以通道主存储为位平面,因此 t 个平面的前缀正是通道的 t 位量化器,并且查询通过对其通道的方差加权重要性进行反向注水来花费其位预算。在 Qwen3-8B 上的 100 万个标记上,解码步骤的 GPU 时间比 Double Sparsity、Loki 和 SparQ r=32 的 136 位扫描快 1.67 倍,并且在与 SparQ 的 68 位读取 (r=16) 相同的 GPU 时间下,Fathom 在七个模型和上下文设置中的六个上读取的字节数减少了 18%,注意力误差也较低。在 RULER 风格的任务中,每个词元扫描都与精确的 top-k 解码相匹配,而在真实的编码代理会话中,Fathom 在 92 位时达到了最准确的 136 位扫描的步长协议。存储是量化服务堆栈已保存的 4 位 K 副本,并且当索引驻留在 GPU 内存中时,该方法不会更快。