Add finals package download link
CCF 2026 开源创新大赛 · Mooncake 赛题 2 决赛作品
赛题 2:优化 Mooncake Store 吞吐性能、高可用功能和可扩展性,优化 SGLang HiCache + Mooncake Store 性能
队伍:KVCache Forge
GitHub 参赛仓库 · GitLink 参赛仓库 · Mooncake Fork · 上游 Draft PR #3347
决赛全量材料(百度网盘):KVCacheForge团队_决赛材料 · 提取码:5e6s
5e6s
本项目针对 Mooncake Store 现有 free_ratio_first 分配策略的失败恢复路径进行优化。旧实现最多检查 100 个回退位置,即使某个 OffsetAllocator 已能保守证明当前 Segment 的最大可分配连续区域小于请求尺寸,该位置仍会消耗有限预算。在大规模 Segment 池中,大量已确定无法容纳请求的候选可能提前耗尽预算,使后方仍可分配的 Segment 没有机会被访问。
free_ratio_first
OffsetAllocator
决赛方案不再新增独立的 fragmentation_aware 策略,而是在现有 free_ratio_first 内引入 Fit-Aware Bounded Fallback:被保守证明为 NO_FIT 的 Segment 不消耗可计费回退预算,但物理扫描仍受独立硬上限约束。方案因此同时保留原有配置、排序、兼容语义和最坏情况边界。
fragmentation_aware
NO_FIT
初赛 PR #2797 通过独立碎片感知策略证明了一个机制事实:总空闲空间充足,不代表存在能容纳当前对象的连续空间。维护者随后指出,生产负载通常只有 1 至 2 种主要对象尺寸,初赛的宽混合尺寸假设代表性不足,单独增加新策略的维护成本也缺少充分依据。
决赛阶段据此完成三步收敛:
初赛材料完整保留在 initial/;决赛权威成果位于 finals/。
initial/
finals/
free_ratio_first 采样、排序与 preferred 路径保持不变 | v 发生真实分配失败? 否 / \ 是 保持旧行为 大池 Fit-Aware 回退 | 读取保守连续空间提示 | +--------------+--------------+ | | 全部已知且不足 MAY_FIT / UNKNOWN NO_FIT fail-open | | 返还可计费预算 调用真实 allocator | | +--------------+--------------+ | 最多 100 个可计费位置,最多 200 个物理位置
MAY_FIT
UNKNOWN
preferred
excluded
used
决赛统一补丁对应 Mooncake 上游 Draft PR #3347,基线为 64495bdfd3e215e495db714418c4b60c0f7d0fad,头提交为 ba84216951ca14f369bfe39bb9106f9dbdd54046。
64495bdfd3e215e495db714418c4b60c0f7d0fad
ba84216951ca14f369bfe39bb9106f9dbdd54046
+903/-11
PR-ready Patch:finals/mooncake_fit_aware_fallback_pr_3347.patch
finals/mooncake_fit_aware_fallback_pr_3347.patch
allocation_strategy_test
buffer_allocator_test
master_metrics_test
mooncake_master
git diff --check
40.480% -> 78.643%
+55.821%
-19.798%
+49.473%
+10.268%
-15.946%
原始 CSV、JSON、Prometheus 快照和测试日志位于 finals/关键证据/。
finals/关键证据/
Lorry1024/Mooncake:agent/store-fit-aware-fallback-budget
build (3.10)
build (3.12)
finals/KVCache_Forge_Mooncake决赛技术报告.pdf
finals/KVCache_Forge_Mooncake决赛技术报告.tex
KVCache Forge-Mooncake Store碎片感知优化-Mooncake KVCache存储设计和性能优化.pptx
finals/KVCache_Forge_Mooncake决赛答辩.pdf
finals/决赛交付说明.md
finals/复现与验证指南.md
finals/决赛答辩讲稿.md
finals/5分钟演示视频脚本.md
finals/真实负载碎片研究摘要.md
finals/决赛提交检查清单.md
release/KVCache_Forge_Mooncake决赛交付_20260810.zip
6433f6df84e5d620b0748d18c8e49b80f9e044da1e43bc37838e4fa6f5dc7a67
git clone https://github.com/kvcache-ai/Mooncake.git cd Mooncake git checkout 64495bdfd3e215e495db714418c4b60c0f7d0fad git apply --check /path/to/mooncake_fit_aware_fallback_pr_3347.patch git apply /path/to/mooncake_fit_aware_fallback_pr_3347.patch git diff --check
也可以直接检出 Fork 分支:
git clone https://github.com/Lorry1024/Mooncake.git cd Mooncake git checkout agent/store-fit-aware-fallback-budget git rev-parse HEAD
完整构建、聚焦测试、Store 生命周期场景和指标核验命令见 finals/复现与验证指南.md。
. ├── README.md # 当前决赛方案、结果和入口 ├── SUBMISSION.md # 决赛提交索引与证据边界 ├── finals/ # 决赛最终报告、PPT、Patch、文档和关键证据 ├── initial/ # 初赛策略、PR #2797、报告、PPT、仿真与日志归档 └── release/ # 可直接提交的决赛 ZIP 与独立 SHA-256 文件
本项目证明的是:在大规模 Segment 池的特定 NO_FIT 几何压力下,保守容量提示与双预算回退能够减少可避免的分配失败;真实 Store 中也观察到路径触发、越界恢复和条件性的请求速率/P99 收益。
本项目不宣称所有生产负载都更快,也不把合成机制矩阵的 +55.821% 外推为普遍 Store 吞吐提升。当前未完成 RDMA、多节点、GPU 或 SGLang HiCache 端到端 E5 验证,因此不声明 TTFT、Prefix 命中率或 GPU 利用率改善。
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
Mooncake Store Fit-Aware 有界回退优化
CCF 2026 开源创新大赛 · Mooncake 赛题 2 决赛作品
赛题 2:优化 Mooncake Store 吞吐性能、高可用功能和可扩展性,优化 SGLang HiCache + Mooncake Store 性能
队伍:KVCache Forge
GitHub 参赛仓库 · GitLink 参赛仓库 · Mooncake Fork · 上游 Draft PR #3347
决赛全量材料(百度网盘):KVCacheForge团队_决赛材料 · 提取码:
5e6s项目简介
本项目针对 Mooncake Store 现有
free_ratio_first分配策略的失败恢复路径进行优化。旧实现最多检查 100 个回退位置,即使某个OffsetAllocator已能保守证明当前 Segment 的最大可分配连续区域小于请求尺寸,该位置仍会消耗有限预算。在大规模 Segment 池中,大量已确定无法容纳请求的候选可能提前耗尽预算,使后方仍可分配的 Segment 没有机会被访问。决赛方案不再新增独立的
fragmentation_aware策略,而是在现有free_ratio_first内引入 Fit-Aware Bounded Fallback:被保守证明为NO_FIT的 Segment 不消耗可计费回退预算,但物理扫描仍受独立硬上限约束。方案因此同时保留原有配置、排序、兼容语义和最坏情况边界。从初赛到决赛
初赛 PR #2797 通过独立碎片感知策略证明了一个机制事实:总空闲空间充足,不代表存在能容纳当前对象的连续空间。维护者随后指出,生产负载通常只有 1 至 2 种主要对象尺寸,初赛的宽混合尺寸假设代表性不足,单独增加新策略的维护成本也缺少充分依据。
决赛阶段据此完成三步收敛:
初赛材料完整保留在
initial/;决赛权威成果位于finals/。核心算法
安全与兼容约束
NO_FIT。MAY_FIT、UNKNOWN和可能过高的旧提示一律 fail-open,继续调用真实 Allocator。preferred、excluded、used、多副本去重和 best-effort 语义保持不变。工程实现
决赛统一补丁对应 Mooncake 上游 Draft PR #3347,基线为
64495bdfd3e215e495db714418c4b60c0f7d0fad,头提交为ba84216951ca14f369bfe39bb9106f9dbdd54046。+903/-11NO_FIT守卫和双上限终止UNKNOWN,OffsetAllocator 复用已有保守最大连续区域上界PR-ready Patch:
finals/mooncake_fit_aware_fallback_pr_3347.patch验证结果
构建与功能回归
allocation_strategy_testbuffer_allocator_testmaster_metrics_testmooncake_master与聚焦测试目标构建通过git diff --check通过分层性能证据
40.480% -> 78.643%;成功 Goodput+55.821%;原始请求速率-19.798%;P99+49.473%NO_FIT几何下提高成功可达性,但存在吞吐定义与尾延迟代价+10.268%,P99-15.946%;成功率与成功 Goodput 的 95% CI 跨 0原始 CSV、JSON、Prometheus 快照和测试日志位于
finals/关键证据/。当前上游状态
Lorry1024/Mooncake:agent/store-fit-aware-fallback-budgetba84216951ca14f369bfe39bb9106f9dbdd54046build (3.10)在全量 CTest 阶段失败,build (3.12)随后取消,因此不声明官方 CI 全绿,也不在缺少完整日志时将失败归因于本方案。决赛交付
finals/KVCache_Forge_Mooncake决赛技术报告.pdffinals/KVCache_Forge_Mooncake决赛技术报告.texKVCache Forge-Mooncake Store碎片感知优化-Mooncake KVCache存储设计和性能优化.pptxfinals/KVCache_Forge_Mooncake决赛答辩.pdffinals/决赛交付说明.mdfinals/复现与验证指南.mdfinals/决赛答辩讲稿.mdfinals/5分钟演示视频脚本.mdfinals/真实负载碎片研究摘要.mdfinals/决赛提交检查清单.mdrelease/KVCache_Forge_Mooncake决赛交付_20260810.zip6433f6df84e5d620b0748d18c8e49b80f9e044da1e43bc37838e4fa6f5dc7a675e6s快速复现
也可以直接检出 Fork 分支:
完整构建、聚焦测试、Store 生命周期场景和指标核验命令见
finals/复现与验证指南.md。仓库结构
结论边界
本项目证明的是:在大规模 Segment 池的特定
NO_FIT几何压力下,保守容量提示与双预算回退能够减少可避免的分配失败;真实 Store 中也观察到路径触发、越界恢复和条件性的请求速率/P99 收益。本项目不宣称所有生产负载都更快,也不把合成机制矩阵的
+55.821%外推为普遍 Store 吞吐提升。当前未完成 RDMA、多节点、GPU 或 SGLang HiCache 端到端 E5 验证,因此不声明 TTFT、Prefix 命中率或 GPU 利用率改善。