论文

StreamIndex:通过流式 Top-k 进行内存限制的压缩稀疏注意力

StreamIndex: Memory-Bounded Compressed Sparse Attention via Streaming Top-k

模型推理KV Cache

摘要

DeepSeek-V3.2 和 V4 引入了压缩稀疏注意力(CSA):​​闪电索引器(压缩键上的学习评分投影)对它们进行评分,每个查询选择前 k 个,稀疏注意力内核仅读取这些内容。公共 CSA 实现在 top-k 缩减之前实现了 [B, S, H_I, T] FP32 分数张量。在 H_I=64 个索引器头和 V4-Flash 压缩比 m=4 的情况下,序列长度 S=65,536 时的中间值为 256 GB,超过任何单 GPU 高带宽内存 (HBM) 预算。我们提出了 StreamIndex,CSA 管道的 Triton 实现,其核心组件是分块分区合并 top-k 驱动程序,它永远不会实现完整的中间体。在单个 NVIDIA H200 上索引器步骤(层)级别的合成但真实的 V4 形输入上,物化路径在 S=65,536(具有 V4-Flash 尺寸)时耗尽内存 (OOM); StreamIndex 运行相同的索引器,达到 S=1,048,576,峰值 HBM 为 6.21 GB,这是 32 倍的机制扩展。针对具体化 真值 的集合重叠召回在两者都适合的小 S 处是位精确的;在三个 5 点设计空间扫描(块大小、关键图块大小、top-k)中,平均召回率舍入为 1.0000,每个单元格中的最小召回率至少为 0.9980。分块驱动程序与 TileLang 的流水线注意力内核组成:在 V4-Flash 尺寸的 S=262,144 处,物化索引器与 TileLang 注意力 OOM 配对,而分块索引器与相同注意力配对,运行时间为 1.97 秒,峰值为 18.56 GB。我们的贡献针对索引器步骤;我们没有声称有更快的注意力内核或真正的检查点端到端行为。代码:https://github.com/RightNow-AI/StreamIndex。