Skip to content

v0.3.12

Choose a tag to compare

@ShangmingCai ShangmingCai released this 23 Jul 13:23
c7ae97f

What's Changed

  • docs: reflect WITH_NVIDIA_PEERMEM change from CMake flag to runtime env var by @stmatengss with @Copilot in #2164
  • feat(rdma): mlx5dv QP path diversity via UDP sport and LAG port balance by @staryxchen in #2175
  • [TENT] Enhanced QoS and Slice Spraying for TENT by @alogfans in #2048
  • [TENT] Add codeowner to the TENT directory by @alogfans in #2183
  • Add release-npu workflow by @JieTang66 in #2178
  • [chore] Set default for WITH_NVIDIA_PEERMEM to true by @ShangmingCai in #2192
  • [Store] Add structured object store helper by @zxpdemonio in #2140
  • Bump version to 0.3.11.post1 in pyproject.toml by @ShangmingCai in #2194
  • [build] Strip shared libraries to reduce NPU wheel size by @JieTang66 in #2202
  • [Docs] Update README with citation details by @UNIDY2002 in #2190
  • [Doc]: Update vLLM LMCache guide for MP interface by @fcczzz in #2209
  • [Store] fix gauge overflow by separating DFS unlimited flag by @LujhCoconut in #2152
  • [Store]: avoid INVALID_REPLICA error on empty offload by @LujhCoconut in #2151
  • [Store] Fix: Auto-recovery for SSD Offload after Master Restart by @Colors-111 in #2077
  • [Store] Fix: validate HA backend availability during config parsing by @Lin-z-w in #2111
  • [Doc] Add missing aws-logo by @ykwd in #2211
  • [codex] Update snapshot object store docs by @Dao007forever in #2148
  • [TE] Python api "register_memory" & "batch_register_memory" support location param by @A-Liuhao in #2191
  • [Bugfix][Store] Fix snapshot failure when OpLog has never been written by @leonzzhu in #2144
  • [Build] Fix compile warnings across multiple components by @Aionw in #2193
  • [Store] fix batch tensor allocation error code by @Lin-z-w in #2226
  • Fix MACA nvlink allocator build by mapping CUmemAllocationHandleType by @muma378 in #2227
  • [Docs]: fix docs config, remove autodoc2, archive zh docs, add .agents/… by @Aionw in #2218
  • [TransferEngine][MACA] Add missing CUDA-like type aliases for MACA compatibility by @Dayuxiaoshui in #2230
  • [TENT] Add rule-based transport and device selection by @alogfans in #2079
  • [TE] Add ProgressWorker skeleton by @ZhenyuePan in #2199
  • [Store] remove invalid kMaxSliceSize assertion in AllocateBatch by @LujhCoconut in #2165
  • [CI] Add docs-check job to validate Sphinx build with -W by @Aionw in #2229
  • [Store] Add opt-in grouped object routing semantics by @CAICAIIs in #2180
  • feat(store): add SPDK NoF worker pool by @Enigmo-x in #2172
  • [Store] (CI run_tests_with_ssd failed / promotion-on-hit failed) eliminate race conditions by @LujhCoconut in #2235
  • [TransferEngine][docs] document FI_EFA_USE_DEVICE_RDMA=0 for same-host EFA loopback by @Chelseatr in #2222
  • [Doc] update overall picture by @stmatengss in #2249
  • [CI] feat: pre-release ci workflow by @stmatengss in #2212
  • [Doc] Clarify TENT failover poll behavior by @ZhenyuePan in #2208
  • [Security] Fix Go vulnerabilities in libetcd_wrapper.so by @alogfans in #2250
  • Build tent by @Dao007forever in #2089
  • [Store] Clarify cache stats semantics by @CAICAIIs in #2248
  • feat(store): route NoF replicas through put and get by @Enigmo-x in #2247
  • [Doc] Split LMCache vLLM MP and non-MP guides by @fcczzz in #2268
  • [PG][EP] Fix engine.so runtime dependency by @mmangkad in #2255
  • [Store] Implement tenant metadata map isolation by @Lin-z-w in #2232
  • [EFA] Add MC_EFA_CQ_THREADS env var to cap CQ poller threads by @yuhuiaws in #2113
  • [TransferEngine][ROCm] Add HIP dmabuf MR registration for AMD GPUs (fixes #751) by @andyluo7 in #2225
  • [Store] enables the Ubtransport for Mooncake Store And optimize UrmaEndpoint by @zchuango in #2196
  • [Store] L2->L1 promotion-on-hit: observability metrics + max_per_heartbeat knob by @yzhan1 in #2176
  • fix(metrics): show actual client-reported SSD capacity instead of infinite by @Oxygen56 in #2278
  • [TE][Store] Fix IPv6 address parsing in connection endpoints by @Aionw in #2184
  • Fix P2PHANDSHAKE in dual-NIC container setups via MC_RDMA_BIND_ADDRESS by @stmatengss with @Copilot in #2280
  • [TE] IntraNode NVLink transport: update cuMemcpyAsync to BatchAsyc for CUDA version >= 12.8 by @TTThanos in #2251
  • fix(wheel): exclude libfabric/libefa from auditwheel bundle to avoid dual-libfabric EFA conflict by @whn09 in #2271
  • remote redis dependency by @jinke446 in #2109
  • [Store] Robustify ConfigDict size parsing by @CAICAIIs in #2206
  • fix: unify default cluster_namespace to match master's DEFAULT_CLUSTE… by @leonzzhu in #2244
  • [TE] fix: pass default port when parsing TENT RDMA bind a… by @Lin-z-w in #2289
  • [Store] RemoveAll not deleting SSD offload files, enable storage_backend_->RemoveAll() in Client::RemoveAll by @Colors-111 in #2283
  • [Store] Propagate tenant identity through object RPCs by @Lin-z-w in #2288
  • [Doc] add vLLM scenario-based landing pages and archive legacy docs by @Aionw in #2262
  • [Store] Support tenant-aware async storage tasks by @Lin-z-w in #2294
  • [Build] Disable debug symbols (-g) in default compilation flags by @Aionw in #2285
  • [TE] Fix TCP connection pool SIGSEGV by deferring cleanup with asio::post by @alogfans in #2174
  • Store Extract 3FS logic into DistributedStorageBackend by @LujhCoconut in #2234
  • [TENT] Add policy name binding to transport selector by @alogfans in #2295
  • [Doc] reorganize API reference with Python/C++/HTTP sub-indices by @Aionw in #2263
  • [Store] Support SSD offload configuration in standalone store service by @ertcmm in #2261
  • [TransferEngine] Make TCP transport slice size configurable via MC_TCP_SLICE_SIZE by @gogongxt in #2308
  • fix(transfer_engine): improve auto gid selection and retry by @Bo-Vincent in #2269
  • [TE/TENT] Allow building tebench without USE_TENT by @00fish0 in #2322
  • fix(ci): move sccache --show-stats to after build steps by @Aionw in #2303
  • [Docs][1/N] Refactor Readme: update readme top link and badges by @ykwd in #2304
  • [Docs] [2/N] Refactor Readme: merges the Showcase and Components sections by @ykwd in #2312
  • [TE] fix(efa): short-circuit same-process GPU loopback to avoid libfabric SHM segfault by @whn09 in #2298
  • [Doc] Update Documentation URL in pyproject.toml by @ShangmingCai in #2326
  • [Docs] Add build guidance for npu platform by @VNightMare in #2325
  • [Store] Fix idempotent rpc_meta re-publish by @he-yufeng in #2311
  • [Bugfix][Store] Fix HA snapshot restore rejecting newer metadata formats by @Dao007forever in #2257
  • [TE] Optimize ascend_direct async query and fix auto_connect teardown by @ascend-direct-dev in #2323
  • [TransferEngine] Fix resource leaks in error paths by @jfeng18 in #2332
  • [Common] Harden Environ parsing, fix opendir leak, support .yml config by @jfeng18 in #2316
  • [PG] Add MUSA build support by @UNIDY2002 in #2329
  • [Wheel] Fix _parse_segment_size to support KB/MB/TB suffixes and fix handle_put None crash by @jfeng18 in #2321
  • [TE] add device API support by @UNIDY2002 in #2333
  • [PG] Fix null-deref on MNNVL disconnect and activeRanks leak by @jfeng18 in #2347
  • [PG] Fix data race: make running_ atomic by @jfeng18 in #2352
  • [PG] Build the MUSA PG extension through torchada by @yeahdongcn in #2353
  • Fix DLSlime typo in LMDeploy docs by @JimyMa in #2356
  • feat(engine): add attributes in python package for compile flags by @HubertZhang in #2342
  • [Doc] Add Mooncake local CI skill docs by @stmatengss in #2134
  • [TENT] Validate minimum request size before XferDataDesc cast by @jfeng18 in #2351
  • [TE] Fix data race, double-close, uninit, and off-by-one in RDMA transport by @jfeng18 in #2346
  • [TE] Harden config parsing: remove exit() and guard stoi by @jfeng18 in #2344
  • [TE] Fix error-path safety: freeaddrinfo leak, null deref, OOB read by @jfeng18 in #2343
  • [TE] Fix lock leak, missing transport_, and empty entries UB by @jfeng18 in #2349
  • feat(store): add NoF SSD deployment tools and e2e coverage by @Enigmo-x in #2273
  • [TE] Harden TCP transport: validate remote addresses, fix idle cleanup, add TCP_NODELAY by @jfeng18 in #2314
  • [Store] master log journal by @stmatengss in #2297
  • [Store] Remove HAMetricManager::Init() by @Aionw in #2287
  • [Store] Clean up tenant-aware master service APIs by @Lin-z-w in #2337
  • [TENT] feat: add per-request transport_hint for fine-grained transport selection in tent by @chestnut-Q in #2339
  • [Store] Introduce buffer pool for zero copy interfaces by @zxpdemonio in #2095
  • chore(Doc): update clang-format installation instructions in documentation by @SYaoJun in #2381
  • [Doc] restructure SGLang integration docs and add performance index by @Aionw in #2265
  • [build] NPU wheel: RPATH patching, vendored lib consolidation, pip retry, cmake fixes by @JieTang66 in #2216
  • [Store] feat: add GetSegmentsDetail API to expose segment info via ad… by @leonzzhu in #2310
  • [Common][Store][TE] Fix UB: passing signed char to ::tolower in std::transform by @Chelseatr in #2367
  • [CI] Add issue bot for auto-triage and stale issue closure by @stmatengss in #2378
  • [Doc] rewrite deployment guide and add Mooncake Store performance index by @Aionw in #2266
  • [TENT] Add local admission queue prototype by @zbchi in #2341
  • [TE] Improving the RDMA transport failure handling by @alogfans in #2155
  • [TransferEngine] Fix: TCP transport implicitly creates CUDA context on GPU0 by @gogongxt in #2307
  • Add modular KVCache storage benchmark (v1) by @alogfans in #2368
  • [Doc] finalize navigation restructure and update build/design docs by @Aionw in #2267
  • [Store] Introduce cached batch query result by @zxpdemonio in #1834
  • [CI] guard sccache stats when unavailable by @Aionw in #2369
  • feat: support graceful shutdown for mooncake_master on SIGINT/SIGTERM by @SYaoJun in #2359
  • [TE] Guard stoull in EFA getMaxPteEntries against invalid input by @jfeng18 in #2363
  • [Docs] [3/N] Refactor Readme: improve TE description and streamline updates by @ykwd in #2418
  • [CI] allow clang-format (generic binary) to be detected as version 20 by @Aionw in #2334
  • [Integration] Reject failed Python buddy allocator backing buffer by @he-yufeng in #2402
  • [Docs] move Mooncake Store usage guide by @Aionw in #2421
  • fix(ha): ensure /oplog/{cluster_id}/latest key is initialized on firs… by @leonzzhu in #2168
  • [Docs] [4/N] Refactor Readme: simplify hardware and build sections by @Aionw in #2420
  • [Misc] Enhance PR template with AI disclosure and structured testing by @stmatengss in #2397
  • [TE] Use MLU address range query for RDMA dmabuf by @phantomlei3 in #2416
  • [CI/Build] Expand auto-labeling and add PR description cleanup by @stmatengss in #2396
  • [TE] fix race condition in ub_transport and disable ub_transport_test by @00fish0 in #2324
  • [TE] Fix NVMeoF loop variable bug and NVMeoFBatchDesc leak by @jfeng18 in #2373
  • [TransferEngine] Bound handshake-port connect() with a timeout by @Dao007forever in #2425
  • [PG] Add experimental MACA PG support by @Dayuxiaoshui in #2365
  • [Docs] Readme add pypi npu badge by @ykwd in #2437
  • [TransferEngine] fix: reset last_wait_ts after work to avoid skipping… by @QAQYangT-T in #2434
  • [TransferEngine] Clean up failed io_uring sub-batch initialization by @he-yufeng in #2403
  • feat(store): scope S3 snapshot path by cluster_id to support multi-cl… by @leonzzhu in #2301
  • [Store] fix: register local hot cache memory with transfer engine by @zwtao40 in #2399
  • [CI] Change options to speed up ci for ascend. by @VNightMare in #2439
  • [Doc] Fix inaccuracies in EFA transport doc (vLLM router, SGLang patch link, Technical Details) by @whn09 in #2443
  • [build] Migrate NPU wheel CI to cloud runners with ARM/x86 matrix by @JieTang66 in #2386
  • [TE][Sunrise][Feat] Enable Sunrise support in the classic transfer engine path by @RuixiangMa in #2290
  • [Docs] [5/N] Refactor Readme: Streamline README Store, SGLang, and vLLM integration sections by @ykwd in #2442
  • [EP] integrate Device API (P2pTransport/RdmaTransport) — CUDA only by @UNIDY2002 in #2382
  • [Store] test: add comprehensive MasterAdminServer HTTP endpoint tests by @Aionw in #2431
  • [CI] add qoder review by @stmatengss in #2462
  • [Store] fix: /query_key endpoint returns valid JSON response by @Aionw in #2435
  • Store check actual disk space in eviction logic by @LujhCoconut in #2419
  • [CI] Skip Qoder code review for fork and cross-repo PRs by @stmatengss in #2473
  • [Integration] Return documented failure sentinel 0 from uint64 async transfer APIs by @bp-cheng in #2433
  • fix: wrap async main() for console_scripts entry point by @mzygQAQ in #2453
  • [TE] Extend standalone same-device avoidance to non-RoCE paths by @ascend-direct-dev in #2366
  • [Store] Fix local hot cache rejecting larger objects after block reuse by @feichai0017 in #2466
  • [Docs] Fix onboarding bugs: NameError, Dockerfile ref, PyPI URL, missing deps by @jfeng18 in #2408
  • [Docs]: Document group semantics by @yokinoshitayoki in #2465
  • [Store] feat: add tenant quota core by @Lin-z-w in #2358
  • [TE][Sunrise][Feat] Enable Sunrise VRAM support in tebench for the TENT backend by @RuixiangMa in #2452
  • [docs] add docs for EP & PG by @UNIDY2002 in #2481
  • [Store] Fix stale hot cache reuse after object removal by @zchuango in #2447
  • [build] Add Python 3.9 support to NPU wheel release by @JieTang66 in #2483
  • [Store] fix: change default eviction policy for offload bucket from n… by @NUABO in #2474
  • fix(efa): declare FI_HMEM in caps for GPU builds by @whn09 in #2448
  • [Store] Fix ABBA deadlock between GracefulUnmountScheduler and snapshot_mutex_ by @feichai0017 in #2486
  • [CI/Build] Add stale issue/PR bot by @stmatengss in #2395
  • [Bugfix] Support EulerOS in dependencies installer by @he-yufeng in #2460
  • [Store][Refactor]: extract generic DeadlineScheduler from graceful unmount by @Aionw in #2494
  • [Doc]: publish built-in skills and add plugin marketplace by @Aionw in #2497
  • [Store] support zero-sized tensors in Python APIs by @zxpdemonio in #2470
  • [Store] Reduce lookup eviction contention by @yokinoshitayoki in #2405
  • fix(store): don't fail bundle cleanup when per-key remove retry succeeds by @he-yufeng in #2500
  • [Integration] Fix double-free in buffer_to_tensor error path by @feichai0017 in #2493
  • [TENT] Reduce SegmentDesc fetch overhead on cold receive path by @chestnut-Q in #2482
  • [CI] cleanup: delete deprecated .ci directory by @stmatengss in #2517
  • [TE] Add MC_TE_FILTERS env var for IB device whitelist by @huojianqiangg in #2495
  • [Doc] Update tent arxiv paper to README.md by @stmatengss in #2522
  • [Store] Group BatchGetReplicaList metadata lookup by shard by @bitborne in #2508
  • Store: Enable rpc timeout by @zhangzuo21 in #2423
  • [Store] recover etcd client after leader hang (SIGSTOP) by @Icedcoco in #2383
  • [Store] Make etcd master-view watch event-driven instead of polling by @silas-scitix in #2484
  • [Store][Refactor]: Refactor master admin service by @Aionw in #2422
  • [Store] Rust: don't force-link the ASan runtime in non-sanitized builds by @donghun-furiosa in #2510
  • [Store] Fix cache total metrics accounting on metadata removal by @feichai0017 in #2520
  • [Store][TE] Fix remaining signed-char ::tolower/::toupper UB missed by #2367 by @bp-cheng in #2488
  • [TE] Fix signed-char tolower UB in PCI BDF lowercasing loops (follow-up to #2367/#2488) by @bp-cheng in #2504
  • [TENT] Fix CUDA event leak in nvlink/mnnvl transports by @jfeng18 in #2507
  • [EP] support MUSA platform by @UNIDY2002 in #2480
  • [CI] disable automatic assignment by @stmatengss in #2531
  • [TE] Support per-role Ascend protocol for co-located Transfer Engines by @ascend-direct-dev in #2499
  • Add torch 2.12.1 to EP PG build matrix by @mmangkad in #2538
  • [CI] Update stale.yml by @stmatengss in #2543
  • [Store] dynamic tenant quota master admission by @Lin-z-w in #2492
  • [Store] add codec inference and recursive structure expansion by @zxpdemonio in #2521
  • [Doc] Rework Mooncake Store deployment guide: P2P-first quick start, three client deployment methods, flag fixes by @00fish0 in #2532
  • [TE][Fix] Fix excessive memory allocation in submitPostSend by @leonzzhu in #2490
  • [TE] fix(efa): widen MR keys to 64-bit to avoid fi_mr_key() truncation by @whn09 in #2564
  • [Store] Complete dynamic tenant quota admin, eviction, metrics, and snapshots by @Lin-z-w in #2549
  • [Doc] complete Rust API reference for transfer engine and mooncake store by @stmatengss in #2547
  • [Store][K8s-Native][3/N] Label-based routing by @vladnosiv in #2537
  • Update BatchAsync for MMNVL by @TTThanos in #2384
  • [Store] Add size-class allocator fragmentation benchmark by @HGinkgo in #2340
  • [TENT] add local runtime queue dispatch by @zbchi in #2562
  • [Store] fix integer overflow in BatchOffload for objects larger than 4 GiB by @he-yufeng in #2570
  • HipTransport: restore caller device after async transfer by @carlushuang in #2566
  • [CI] Fix build-musa: add missing MUSA macro mappings for nvlink_tranport APIs by @RuixiangMa in #2575
  • [TE] Make TransferEngine movable by @zjjf in #2567
  • [TransferEngine] Apply configured SL/TC to the TENT notification QP by @catyans in #2526
  • [Store] add structured object copy-mode policy by @zxpdemonio in #2472
  • [Store]: Fix BatchEvict Over-Eviction Due to Inflated Target When SSD Offload Is Enabled by @Colors-111 in #2286
  • [Store] Clean up HTTP metadata on client timeout for separately-deployed metadata servers (follow-up to #1363) by @chenkaiyue in #2498
  • [Bugfix] Preserve empty values in Mooncake Store REST GET by @VectorPeak in #2587
  • [TE] Universal TCP Force Mechanism for All Environments by @alogfans in #2593
  • [Build] Fix build failure on Python 3.14t without --enable-shared by @leveretconey in #2553
  • [Store] Add SSD free-ratio-first allocation strategy by @zchuango in #2450
  • [Store][Bugfix]:Fix SGLang fails to start with MC_USE_TENT=1 when built without USE_TENT by @RuixiangMa in #2596
  • [TransferEngine] Make InfiniBand Service Level configurable via MC_IB_SL by @catyans in #2525
  • [TE] Skip redundant Disconnect on AutoConnect transfer failures by @ascend-direct-dev in #2604
  • fix(rdma): restore task.request association in submitTransfer by @he-yufeng in #2610
  • [codex] sync store and benchmark docs by @Aionw in #2556
  • [MUSA] Add release-musa github workflow by @yeahdongcn in #2576
  • [Store] add structured object flat mvp by @zxpdemonio in #2600
  • [TE] Enforce one-shot lifecycle for connected RDMA endpoints by @alogfans in #2588
  • fix(maca): map cudaStreamQuery for the intra-node NVLink build by @he-yufeng in #2606
  • [Store] Make offloading_queue_limit and offload_cap_ratio configurabl… by @leonzzhu in #2599
  • [Doc] chore: Add Sunrise logo to supported hardware and contributors by @RuixiangMa in #2615
  • Infer gpu device from request source pointers, set correct device for stream creation. by @dadadada-147 in #2569
  • [PG] Fix elastic P2P after max_world_size recovery by @zackyoray in #2623
  • [CI] Add AWS EFA wheel build/release to official CI/CD by @whn09 in #2565
  • [TE] Fix signed-char isxdigit UB in EFA smaps page-size parsing (follow-up to #2504) by @he-yufeng in #2619
  • fix(transport): associate task.request in EFA/Kunpeng submitTransfer by @he-yufeng in #2617
  • [CI][Build] Build CUDA release wheels in the PyTorch manylinux image by @mgoin in #2605
  • [Store] add remote tensor batch interfaces by @zxpdemonio in #2050
  • [Bugfix] Parse string booleans for enable_ssd_offload in from_file by @he-yufeng in #2506
  • [Docs] Clarify non-CUDA quick start dependencies by @Makzert in #2539
  • [Bugfix] Return HTTP 500 when is_exist reports an error in handle_exist by @he-yufeng in #2602
  • [CI] Disable pip cache in build-flags to avoid disk exhaustion by @mgoin in #2626
  • [Store] Stop snapshot thread promptly during shutdown by @feichai0017 in #2533
  • [Bugfix] Fix RDMA active handshake timeout race with simultaneous passive connection by @LCAIZJ in #2624
  • [TENT] Add optional Request.deadline_ns and MLU observability metric (RFC #2519 step 1) by @catyans in #2618
  • [Store] Don't abort client init on a malformed MC_MS_AUTO_DISC value by @he-yufeng in #2629
  • [Bugfix] Set Ascend context in batch get worker by @greatwhole in #2557
  • [Doc] chore: Add Hygon logo to supported hardware and contributors by @huojianqiangg in #2642
  • [TransferEngine] Guard MC_TCP_SLICE_SIZE parsing against std::stoull throwing by @he-yufeng in #2641
  • [Docs] [7/N] Refactor Readme: update README hardware partners table and logos by @ykwd in #2654
  • [Store] Fix source refcnt leak in CopyEnd/MoveEnd on invalid source by @he-yufeng in #2628
  • Hca peer affinity by @hzt123123 in #2616
  • [TE] Guard against null endpoint_store_ in UrmaContext destructor by @he-yufeng in #2627
  • [TE] add HPE Slingshot (cxi) backend by @wqwqazwsxedc in #2535
  • [TENT] Fix stale getTransferStatus in nvlink/mnnvl/ascend transports by @jfeng18 in #2505
  • [EP] Fix: Skip inactive ranks in combine reduction loop by @RuixiangMa in #2653
  • [Docs] Add Docker Badge for Readme by @ykwd in #2670
  • [build] Use dynamic CANN version detection for NPU release workflow by @JieTang66 in #2577
  • [TE] Name AscendDirectTransport worker threads by @ascend-direct-dev in #2672
  • [Docs] [6/N] Refactor Readme: Streamline README and move setup/trace details to other places by @ykwd in #2652
  • [Store] feat: implements strict multi-tenant quota admission by @Lin-z-w in #2612
  • [CI] add arm64 CI by @UNIDY2002 in #2428
  • [Store] Skip bucket files with non-numeric names instead of aborting Init by @he-yufeng in #2651
  • [TENT] Port TE RDMA lifecycle and tests to TENT by @alogfans in #2664
  • [Bugfix] Remove duplicate replica erase in PutRevoke by @fcczzz in #2679
  • [EP]:Stabilize MACA Expert Parallelism P2P Fast Path by @Dayuxiaoshui in #2592
  • [Docs] Update build guide source flow by @Aionw in #2675
  • [Store] Refactor accelerator device registry and staging copies by @Aionw in #2583
  • [Store]: Fix Offloading Task Orphan Causing Expired Warnings by @Colors-111 in #2658
  • Complete Cache Hit Metrics for Memory and SSD Offload Tiers by @Colors-111 in #2637
  • [TE] Support rdma+hip multi-protocol segments for single-node disaggregation by @Lzy17 in #2682
  • [Doc]: clarify Mooncake Store quick start and Transfer Engine guidance by @Aionw in #2667
  • [Doc] Align docs homepage and sidebar navigation depth by @Aionw in #2705
  • [Bugfix] Separate post and poll in RDMA worker pool by @c-guo16 in #2696
  • [Store] Refactor SHM UDS FD Passing for Real/Dummy Client by @Aionw in #2681
  • [Wheel] Enrich PyPI metadata for Mooncake wheel variants by @Icedcoco in #2677
  • Apply per Device stream to avoid GPU 0 kmd traffic by @TTThanos in #2578
  • [Store][Sunrise]: Enable sunrise support for Mooncake Store by @RuixiangMa in #2534
  • Bump google.golang.org/grpc from 1.59.0 to 1.79.3 in /mooncake-p2p-store/src/p2pstore by @dependabot[bot] in #1789
  • [CI] fix some small CI issues by @UNIDY2002 in #2686
  • [Store] Add Local First Allocation Strategy by @yokinoshitayoki in #2638
  • [Store] Add NormalizeTenantIdRef zero-copy variant for hot paths by @ZhijunLStudio in #2698
  • [CI/Build] Fix build-musa: add missing MUSA mappings for nvlink_transport APIs (#2578) by @staryxchen in #2710
  • [TE] Fix cross-node RDMA KV transfer under rdma+hip multi-protocol on AMD by @Lzy17 in #2725
  • [CI] publish master image to Docker Hub via manual workflow by @tpiperatgod in #2678
  • [Doc] Clarify FAST25 trace release by @yokinoshitayoki in #2727
  • [TE] Capture GPU device at registration time in MnnvlTransport / NVLinkTransport by @xiangui33423 in #2691
  • fix(store): chunk oversized io_uring vector I/O by @zxpdemonio in #2719
  • Bump golang.org/x/net from 0.47.0 to 0.55.0 in /mooncake-common/k8s-lease by @dependabot[bot] in #2742
  • [TE] Add TPU (PJRT) staging support to TENT by @Liwink in #2733
  • [Store] Make batch_query_keys read-only and return all replica types by @smartssw in #2685
  • [Doc] Add agent guidance by @Aionw in #2712
  • [TransferEngine] Prefer private-range IPv4 GIDs over link-local IPv6 in auto-selection by @n-WN in #2741
  • [TE] Downgrade unrecognized mem addr log from ERROR to INFO by @ascend-direct-dev in #2734
  • [Store] Enable hugepage mmap in allocate_buffer_numa_segments by @mikegguo in #2417
  • [TENT] Fix data race on local SegmentDesc via copy-on-write snapshots by @n-WN in #2714
  • [Store] Format Mooncake Store Go and Rust bindings by @Aionw in #2737
  • [TE] Fix MNNVL staging path reading capabilities from RDMA transport by @staryxchen in #2751
  • [Store] add etcd tenant quota connector by @Lin-z-w in #2687
  • [Store] Fix ConfigDict global segment size validation by @bitborne in #2661
  • [Store] Refactor store buffer headers and slice splitting by @Aionw in #2732
  • [TENT] SelectionPolicy: per-policy SL/TC/qp_pool schema (RFC #2568 step 1) by @catyans in #2640
  • [Store] feat: allow configuring client tenant id by @Lin-z-w in #2755
  • [TE] Fix cross-GPU NVLink/MNNVL event-stream device mismatch (#2722) by @xiangui33423 in #2754
  • [TE] Route cross-host targets over rdma automatically in rdma+hip multi-protocol segments by @Lzy17 in #2753
  • Bump golang.org/x/net from 0.38.0 to 0.55.0 in /mooncake-transfer-engine/example/http-metadata-server by @dependabot[bot] in #2730
  • [CI/Build] Add dedicated tent-ci job with CUDA/CPU matrix by @staryxchen in #2720
  • [Doc] Update README with LightX2V deployment details by @stmatengss in #2767
  • [Store] Add BatchEvict candidate-selection benchmark by @jacklin78911-collab in #2584
  • docs: clarify local SSD offload configuration by @feichai0017 in #2728
  • [Wheel] Validate MooncakeConfig fields with fail-fast errors by @SuperMarioYL in #2456
  • [Store] Externalize S3 client config via environment variables by @mzygQAQ in #2649
  • [TENT] Per-pool QP allocation with per-pool SL/TC (RFC #2568 step 2) by @catyans in #2759
  • [TENT] Make RDMA NIC allow/deny list configurable via MC_FILTER_NIC(_EXCLUDE) by @catyans in #2760
  • [CI] Extract reusable wheel build/publish workflows by @mgoin in #2723
  • [Store] Support local_buffer_size in mooncake_client by @NUABO in #2739
  • [TENT] Opt-in earliest-deadline-first dispatch in admission queue (RFC #2519 step 2) by @catyans in #2763
  • [Bench] Enable replay speedup and multi-threading in SSD Benchmarking by @alogfans in #2780
  • [TENT] Deadline-infeasible drop + degradation hook (RFC #2519 step 3) by @catyans in #2764
  • [Store] Fix S3 list objects pagination by @feichai0017 in #2778
  • feat(store): add optional RFC #1527 KV events publisher on master by @stmatengss in #2214
  • [TENT] RailMonitor: prefer same-name device for cross-NUMA rail mapping (#2758/#2467) by @catyans in #2790
  • Bump golang.org/x/net from 0.48.0 to 0.55.0 in /mooncake-p2p-store/src/p2pstore by @dependabot[bot] in #2708
  • [Bugfix] Reject empty keys in HTTP metadata server by @VectorPeak in #2770
  • [wip] docs: add vLLM V1 MooncakeStore KV cache sharing benchmark by @LujhCoconut in #2773
  • Bump golang.org/x/crypto from 0.51.0 to 0.52.0 in /mooncake-transfer-engine/example/http-metadata-server by @dependabot[bot] in #2789
  • [Store] Fix --host parameter to support ip:port format for TransferEngine data plane port by @NUABO in #2784
  • [TENT] Opt-in per-entry priority promotion (#2528) by @catyans in #2788
  • [TENT] Expose Request.deadline_ns and policy_name to Python bindings by @catyans in #2808
  • [Bugfix][TENT] Fix silent TPU data corruption for transfers larger than one staging chunk by @Liwink in #2815
  • [Doc] Reorganize performance docs by @ykwd in #2824
  • [Bugfix] Skip os.chmod when binary is already readable and executable by @Csrayz in #2803
  • [CI/Build] Fix compile warnings by @Aionw in #2825
  • [Store] Refactor: Extract snapshot orchestration into MasterSnapshotManager by @xiangui33423 in #2805
  • [TENT] Add IntentType enum to Request for Transfer Intent API by @catyans in #2810
  • [TENT] admission queue: deadline proximity promotion for dispatch by @catyans in #2814
  • [TransferEngine] Add show-link diagnostic tool for NIC topology by @catyans in #2820
  • [TransferEngine] Add graceful shutdown for SIGTERM/SIGINT by @catyans in #2812
  • [TransferEngine] Validate batch memory registrations by @feichai0017 in #2854
  • [TE] Make ThreadLocalStorage per-instance and reclaim per-thread holders by @n-WN in #2842
  • [EP] Cap active RoCE QPs for IBGDA kernels by @UNIDY2002 in #2544
  • [EP] add DeepEP V2 elastic buffer by @UNIDY2002 in #2503
  • [TE] Add host control fallback for IBGDA QP setup by @UNIDY2002 in #2867
  • [CI] Migrate tone_tests to CUDA 13: pull cu130 wheel, adapt sglang/vllm paths, add NCCL env & offline model cache by @luketong777 in #2811
  • [TransferEngine] Acknowledged TCP framing: COMPLETED means applied at destination by @n-WN in #2850
  • [TransferEngine] Reject concurrent overlapping memory registrations by @feichai0017 in #2870
  • [TransferEngine] Optimize MACA P2P copy path by @Dayuxiaoshui in #2774
  • [Store] Speed up HugeTLB population before RDMA registration by @zhangzuo21 in #2838
  • [TE] Fix RDMA transport rail-failure handling and CQ timeout diagnostic by @alogfans in #2872
  • [TENT] Add best-effort RDMA task cancellation by @catyans in #2851
  • [Bugfix] Gate RDMA sends until active side confirms QP readiness by @LCAIZJ in #2625
  • [Store] feat: expose client metrics HTTP config to Python by @Lin-z-w in #2822
  • [TENT] Add causal chain stage decomposition for transfer latency by @catyans in #2821
  • [TE] Add metadata refresh polling for segment cache by @greatwhole in #2795
  • [TENT] Bind transport policies to intent type by @catyans in #2847
  • [store] Opt-in topology-aware remote replica scoring in SelectBestReplica (#2516) by @catyans in #2781
  • [Store] Extract master snapshot codec from MasterService(3/5) by @xiangui33423 in #2831
  • [TENT] Opt-in deadline-aware NIC bandwidth arbitration (RFC #2792) by @catyans in #2794
  • [Transfer Engine] Refresh RDMA metadata on HCA and GID change events by @alogfans in #2878
  • [Doc] Add Kubernetes Deployment Guide for Mooncake Store and Transfer Engine by @tpiperatgod in #2771
  • [Store] Fix SSD offload publish-before-commit race (#2799) by @LujhCoconut in #2818
  • [STORE] Implement FIFO eviction for OffsetAllocatorStorageBackend by @LujhCoconut in #2880
  • [TENT] Reuse and release SHM relocation mappings across threads by @morluto in #2891
  • [TE] Reject empty RDMA completion resources during context setup by @morluto in #2892
  • [Store] Tune Master defaults based on RPC scaling results by @Aionw in #2871
  • [TENT] Wire live RDMA bandwidth into admission queue degradation policy by @catyans in #2816
  • [TE] Use std::atomic to support ARM64 relaxed ordering by @alogfans in #2897
  • [TE] Reject unsupported NVMe-oF task batches and correlate cuFile completions by @morluto in #2893
  • [Store] Make batch_evict_bench scale and eviction ratios configurable by @jacklin78911-collab in #2855
  • [TENT] Add receiver-credit ledger model and protocol invariants by @catyans in #2860
  • [TENT] Add QoS metrics baseline to tebench by @catyans in #2845
  • [TENT] Fix mismatched cuFileBatchIOGetStatus semantics in gds transport by @tong1heng in #2921
  • [Store] fix GPU-addressed local copy crashes by @zxpdemonio in #2926
  • [Doc] Update README news by @stmatengss with @Copilot in #2940
  • [TransferEngine] Share one dma_buf fd across all NICs to avoid ×N BAR1 usage by @Dao007forever in #2523
  • [Store] Extract snapshot restore path into layered architecture(4/5) by @xiangui33423 in #2879
  • feat(store): add proactive disk watermark eviction by @CAICAIIs in #2281
  • [TENT] Add QoS contract schema resolver by @catyans in #2857
  • [store] fix SPDK client buffer teardown by @zxpdemonio in #2936
  • [transport/nvmeof] surface terminal slice failures by @zxpdemonio in #2939
  • [MUSA] Enable EP/PG extensions by switching to a PyTorch base image by @yeahdongcn in #2938
  • [TE] Enforce QP teardown before MR dereg on shutdown by @alogfans in #2895
  • [TransferEngine] Propagate batch memory operation errors by @feichai0017 in #2869
  • [Bugfix][TransferEngine] Pause active reconnects to failed peers by @Dao007forever in #2941
  • [TransferEngine] Roll back partial registration in registerLocalMemory by @he-yufeng in #2965
  • [TE] Add MNNVL support to Device API by @UNIDY2002 in #2956
  • [Wheel] Gracefully stop Store REST service on SIGTERM by @zhangzuo21 in #2874
  • [Store] Clean up and document snapshot refactoring (5/5) by @xiangui33423 in #2943
  • [Store] Surface HTTP metadata server bind failures in start() by @he-yufeng in #2942
  • [Doc] Add SGLang PD transfer benchmark by @yokinoshitayoki in #2972
  • [Bugfix] Roll back failed OffsetAllocator evictions by @feichai0017 in #2964
  • [CI/Build] Build release aarch64 wheels in a manylinux container by @chethanuk in #2968
  • [CI] Align pre-release artifact names with release naming by @stmatengss in #2931
  • [CI/Build] Fix pre-release wheel builds by @Aionw in #2975
  • [TE] Improve RDMA NIC failover recovery by @alogfans in #2959
  • [TENT] Fix metrics HTTP server falsely reporting success on port bind failure by @anranxia in #2978
  • [CI/Build] Fix test-wheel-ubuntu flake by @staryxchen in #2988
  • [Store] Serialize ssd_total_capacity_bytes in local disk snapshot (#2783) by @he-yufeng in #2927
  • [Doc] Add llm-d Integration page to the Kubernetes deployment guide by @tpiperatgod in #2983
  • [CI/Build] Disable unit tests in release wheel builds by @Aionw in #2995
  • [Store] L2→L1 promotion background retry for hot LOCAL_DISK-only keys (V1.1) by @Srinivasoo7 in #2690
  • [PG][1/N] Decouple communication failures from membership changes by @caozhanhao in #2338
  • [CI/Build] Stabilize release wheel builds by @Aionw in #3002
  • [TENT] Expose RDMA NIC load stats via Transport interface by @HeinUmin in #2996
  • [TENT] Fix metrics recording zero-overhead, MLU sentinel, and parallel-vector contract by @staryxchen in #2989
  • Revert "[PG][1/N] Decouple communication failures from membership changes" by @UNIDY2002 in #3011
  • feat: expand Grafana dashboard with comprehensive Master metrics panels by @liangxu2000 in #2944
  • [TENT] Remove dead metrics config flags and wire validateConfig into initialize() by @staryxchen in #3017
  • [CI]fix(ci): lookup integration artifact by workflow run by @luketong777 in #3026
  • [Wheel] Bump version to 0.3.12 on release branch by @Aionw in #3084

New Contributors

Full Changelog: v0.3.11...v0.3.12