Netpreme X-Mem 加速 SGLang HiCache:TTFT 最高提升 6.7 倍

Netpreme X-Mem 加速 SGLang HiCache:TTFT 最高提升 6.7 倍

Netpreme 团队近日介绍了 Netpreme X-Mem™ Memory Processing Unit(MPU)与 SGLang HiCache 的集成方案。其核心思路是:在较慢的 Host DRAM 卸载层之外,增加一个面向 KV Cache 的高带宽专用内存层,从而让 SGLang HiCache 在长上下文与高前缀复用场景下更快、更可扩展。

Figure 1

核心结论

  • Prefix caching 正成为长上下文、Agentic AI 和推荐类 LLM 工作负载的关键能力。
  • SGLang HiCache 通过将 RadixAttention 扩展为包含 HBM、Host DRAM 与外部存储的分层 KV Cache,为大规模前缀复用提供了软件基础。
  • Netpreme X-Mem™ 可作为 SGLang HiCache 的专用 TB/s 级 KV 内存层接入。
  • 在前缀密集型负载中,相比基于 Host DRAM 的 SGLang HiCache,Netpreme X-Mem™ 可将 Time-to-First-Token(TTFT)最高改善 6.7 倍

为什么 Prefix caching 需要更快的内存层?

Prefix caching 的目标,是减少重复长提示词带来的昂贵 prefill 计算。当多个请求共享大量 token 完全一致的长前缀,只在末尾短文本上不同,系统就可以复用此前生成的 KV Cache,避免重复计算。

SGLang 已经在这方面建立了较完整的软件能力:RadixAttention 支持在 GPU 显存中高效进行前缀缓存,而 HiCache 则进一步将缓存体系扩展到 GPU HBM 之外,形成分层 KV Cache。

但随着 GPU 计算能力提升,新的瓶颈开始出现:当命中 Prefix cache 后,系统必须足够快地把 KV Cache 从次级内存搬回 HBM。Netpreme 团队用一个长上下文 coding-agent 场景进行建模:提示词长度为 64K tokens,prefill 并发为 8。结果显示,随着前缀命中率提升,剩余计算量迅速下降,但从次级内存读取的 KV 数据量会同步上升。当命中率超过 95% 后,提升 KV Cache 分层带宽可以显著降低 TTFT。

Figure 2

95% 的前缀命中率现实吗?

Netpreme 进一步分析了 coding agents 中的 KV Cache 复用情况。团队使用 Claude Code agent 在 SWE-bench 上执行多轮编码工作流,并收集 trace 来测量 Prefix cache hit ratio。

结果显示,在同一会话的后续轮次中,缓存命中率稳定超过 95%,平均命中率约为 98%。在这种高命中率区间,将 KV Cache 带宽扩展到 Host CPU offloading 难以达到的水平,可以带来约 3 倍性能提升。

Figure 3

Netpreme X-Mem™:面向 SGLang HiCache 的专用 KV 层

Netpreme X-Mem™ MPU 是一种用于扩展 GPU 内存的专用方案,可通过高速网络 fabric 为 GPU 机架增加数十 TB 级内存。概念上,X-Mem™ 是 AI rack 中的专用内存节点,可与同一机架内所有 GPU 进行 peer-to-peer 访问。

单个 X-Mem™ 内存节点最高提供 24 TB 内存容量,并可被同一机架内所有 GPU 以 4 TB/s 访问。机架中可部署多个 MPU 节点,聚合带宽会随节点数量增加而扩展。在软件层面,X-Mem™ 的地址空间会作为 unified virtual memory 的一部分暴露给应用;从语义上看,访问 X-Mem™ 与访问本地 HBM 或远端 GPU 内存并无本质差异。

与 SGLang HiCache 集成时,Netpreme X-Mem™ 充当 KV Cache offload 的专用内存层。它不再依赖 Host DRAM 或 RDMA 作为主要 L2 KV Cache 层,而是提供一个针对加速器和 KV 搬运优化的高带宽内存层。

适用场景

  • 对 TTFT 有严格 SLO 要求的服务;
  • 存在长共享前缀或高并发会话的应用;
  • 大量重复 prefill-heavy 请求的工作负载。

Netpreme X-Mem™ 通过 CUDA 与 PyTorch 兼容 API 接入 SGLang。这意味着机器学习应用可以较透明地使用这一高带宽内存层,并尽量减少对应用代码的修改。

基准测试:SGLang + Netpreme X-Mem™

团队进行了两类实验:一类是测量单个请求 TTFT 的 micro-benchmark;另一类是面向 Agentic AI 工作负载的端到端 LLM 推理实验。测试对比了三种配置:

配置说明
GPU-only RadixAttention禁用 Prefix caching,需要重新计算
SGLang HiCache + Host DRAM使用 Host DRAM 作为卸载层的分层缓存
SGLang HiCache + Netpreme X-Mem™使用 Netpreme MPU 作为卸载层;测试中为受 H100 GPU 限制的 350 GB/s 配置

X-Mem™ 让单请求 TTFT 更趋平坦

单请求实验显示,与 Host DRAM 相比,Netpreme MPU 可将 TTFT 最高降低约 6.7 倍。即使在非常长的上下文下,TTFT 曲线也更接近平坦,说明高带宽 KV 层有效缓解了从次级内存回填 KV Cache 的瓶颈。

Figure 4

X-Mem™ 提升 LLM 服务交互性与系统容量

为了评估 TTFT 降低如何影响端到端推理表现,团队使用 NVIDIA Dynamo 团队的 AIPerf 进行 LLM serving benchmark。测试负载模拟 Agentic AI 推理:包含 1K tokens 的系统提示词、20K tokens 的用户上下文;每个用户单轮输入 26 tokens,平均轮数为 20。图中实心点表示 Pareto-optimal points,阴影点表示非 Pareto-optimal points。

Figure 5

结果表明,在中等负载下,Netpreme X-Mem™ 可带来 33% 更高的 TPS/user,也就是更强的交互性;在高负载下,则实现 50% 更高交互性以及 30% 更高 TPS,即系统容量提升。原因在于 GPU 在 Prefix cache 命中时不再长时间等待数据拷贝,整体利用率更高。

未来方向

随着 coding agents、长上下文助手和推荐系统持续增长,推理服务系统需要保存并搬运更大规模的 KV working set。Netpreme 计划围绕以下方向继续推进:

  • 结合 MPU 与 SSD 构建更大的持久化 KV stores;
  • 支持 multi-instance KV sharing;
  • 探索 near-memory KV compression;
  • 发展 near-memory computation。

Netpreme 的长期愿景,是为 Agentic workloads 提供全栈内存解决方案。其覆盖范围不仅包括 KV Cache,也包括模型权重、activations、embeddings 以及其他数据结构。通过提供面向 ML 工作负载优化的高性能内存层,Netpreme 希望支持传统 Host DRAM 与 GPU HBM 架构难以实现的新软件架构和优化方式。

结论

SGLang 已经通过 RadixAttention 与 HiCache 为 Prefix caching 打下坚实基础,使长上下文、多轮交互和前缀密集型工作负载能够复用 KV Cache。但当 Prefix caching 变得足够有效后,瓶颈会从“找到可复用前缀”转移到“能否足够快地把缓存 KV 搬回 GPU”。

Host DRAM-based offload 能扩大容量,但其 PCIe 级带宽可能成为 KV-intensive inference 的限制因素,尤其是在 TTFT SLO 较紧的场景中。Netpreme X-Mem™ 通过为 SGLang HiCache 提供高带宽、专用的 KV 内存层,直接针对这一瓶颈进行优化。

总体来看,SGLang HiCache 与 Netpreme X-Mem™ 的结合,有望让下一代 LLM 工作负载中的 Prefix caching 更快、更具扩展性,尤其适用于 coding agents、长上下文助手和推荐系统。

测试设置与参考

Evaluation setup

  • GPU:单张 H100-class GPU
  • KV memory tier size:64 GB(Host DRAM 或 Netpreme X-Mem™)
  • CUDA Version:12.8
  • Attention backend:FlashAttention
  • GPU prefix caching:禁用,用于评估本地 KV Cache miss 但命中 X-Mem™ 的情况
  • Model:Qwen3-30B-A3B-Instruct-2507-FP8
  • 单请求 TTFT benchmark:使用修改自 vLLM KVConnector benchmark 的脚本
  • 端到端吞吐 benchmark:使用 NVIDIA Dynamo 团队的 AIPerf
  • AIPerf 工作负载:用户数 15;全用户 QPS 为 [3.0, 3.0, 3.5, 4.0, 4.5, 5.5];共享系统提示词 1000 tokens;每用户上下文 20000 tokens;每轮查询 26 tokens;每轮输出 100 tokens

References

  • SGLang Documentation: HiCache Design
  • SGLang Blog: HiCache: High-Performance KV Cache Storage with Hierarchical Caching for LLM Serving
  • Netpreme SGLang X-Mem™ Integration: https://github.com/netpreme/sglang_xmem
  • LinkedIn Engineering Blog: Turbocharging LinkedIn’s Recommendation Systems with SGLang
  • Qwen3-235B-A22B-Thinking-2507: https://huggingface.co/Qwen/Qwen3-235B-A22B-Thinking-2507
  • SWE-bench: https://github.com/SWE-bench/SWE-bench
  • Netpreme Coding Agents Experiments: https://github.com/netpreme/coding_agents

作者:Netpreme Team。原文链接:https://lmsys.org/blog/2026-06-27-netpreme-xmem/