跳到主要内容
返回时间线
arXiv来源发表:

Nebula把位置无关缓存搬上集群:四模型四负载中位首字延迟平均降61.4%

核心概要

面向检索增强生成与智能体工作负载,Nebula把位置无关缓存(PIC,允许同一文本段在不同前缀下复用已算好的键值缓存)的片段提升为集群级缓存对象,使远端复用与并行预填充成为可能。此前分布式缓存系统仍只按前缀匹配,单机PIC又无法利用其他节点的缓存与算力。在四个模型和四个真实RAG与智能体负载上,Nebula相对最强基线把中位首字延迟平均降低61.4%,并平均找回前缀缓存漏掉的76.1%的token。

Source-provided article image: Nebula: Distributed Position-Independent Caching for LLM Serving
arXiv

深度剖析

Nebula是首个把位置无关缓存片段当作集群级一等缓存对象的分布式大模型服务框架,这些片段可跨节点独立索引、放置、传输、复用或计算。 此前的分布式缓存系统如Mooncake、LMCache和MemServe虽能跨节点复用键值缓存,但复用仍依赖严格前缀匹配;CacheBlend、EPIC等PIC方法只在单机内实现位置无关复用,不参与集群级资源管理。 在七个预填充工作节点加一个解码节点的集群上,把启用PIC的工作节点直接放在Dynamo前缀感知路由器之后,六个负载的缓存命中率仍比理想PIC上界低10.6至56.7个百分点,ChatRAG-QuAC上仅为33.4%对90.0%。

系统用路由器即时记账与工作节点事件反馈相结合的方式维护集群视图,并用统一的预填充完成时间估计来选择计算位置与并行度。 仅靠路由器推测会报告无效缓存命中,仅靠工作节点确认又会重复计算同一片段;只优化缓存局部性或只做负载均衡,都不必然缩短预填充完成时间。 在Qwen3.5-35B-A3B、7P1D集群上以40 QPS回放RAGPulse与-bench-Retail,相对乐观记账把无效命中token减少98.4%和100%,相对事件驱动更新把重复计算token减少96.1%和95.1%。

共享缓存容量在PC与PIC之间的比例由集群范围的幽灵命中反馈自动调整,即统计被逐出条目随后又被请求命中的情况。 统一LRU可能让一种缓存挤掉另一种的高频内容,固定配额又会在需求变化时让一侧容量闲置;两种策略在ChatRAG与RAGPulse上各有胜负。 在RAGPulse 48 QPS上,相对统一LRU与固定分区分别把缓存命中率提高4.32和4.88个百分点,中位首字延迟降低11.5%和14.7%;ChatDev 12 QPS上命中率提高5.48和7.37个百分点。

启示与展望

评测覆盖四个模型与四个公开RAG和智能体负载,部署为七个预填充工作节点加一个解码节点、每节点单GPU,请求保留原始顺序并以泊松到达回放,且每个请求只生成一个输出token;系统聚焦预填充优化,解码路径保持不变。

缓存容量分配实验使用前800个请求作为预热;更新窗口在8、16、32和64个请求之间测试,所选默认窗口在RAGPulse与ChatDev上距最佳测试窗口的中位首字延迟均在1毫秒以内;未确认缓存位置条目使用5秒TTL。