Commit Graph

139 Commits

Author SHA1 Message Date
Ken J da67fad95f
[Store] Add Go language bindings for Mooncake Store (#1764) 2026-04-04 00:25:40 +08:00
ykwd 483c9970f7
[Chore] Update codeowners (#1819)
* Update codeowners

* Update codeowners

---------

Co-authored-by: Ke Yang <yangke@approaching.ai>
2026-04-03 19:03:17 +08:00
lujh 5ff565dcab
[CI] fix bugs with CI pr1782: fail-fast on format check and restore Ascend/Integration as PR gates (#1806) 2026-04-02 22:07:38 +08:00
lujh f0a1dc8717
[CI] Add fail-fast mechanism and stage-based execution (#1782)
Changes:
- Add job dependencies in ci.yml (build jobs depend on spell-check/clang-format)
- Convert ci_ascend.yml and integration-test.yml to workflow_run trigger
- Add paths-filter to avoid running on docs-only PRs
- Fix context variables in integration-test.yml for workflow_run
- Add paths filtering to ci_cu13.yml
2026-04-02 10:23:02 +08:00
Xun Sun bc9947873e
[Misc] Improve developers' experience for EP & PG (#1708)
Some IDEs (like CLion) uses CMakeLists.txt for smart context. This PR adds an optional flag `EP_USE_IDE` that IDE users can enable. It is switched off by default, so that it will not affect production systems.
2026-03-24 10:45:22 +08:00
Stary 79266ffb4d
build: add memory-aware compile/link parallelism (#1718)
* build: add memory-aware compile/link parallelism

Auto-detect available memory and CPU cores at configure time to calculate
safe parallel job limits. With Ninja generator, creates separate job pools
for compilation (~1.5GB/job) and linking (~4GB/job) so high-core machines
can compile fast without OOM during linking.

Changes:
- New mooncake-common/limit_jobs.cmake module
- Include from common.cmake for all build modes
- Switch Dockerfile and CI workflows to Ninja
- User can override via -DPARALLEL_COMPILE_JOBS / -DPARALLEL_LINK_JOBS

Signed-off-by: staryxchen <staryxchen@tencent.com>

* fix(ci): remove sudo from Ascend CI install step

The Ascend CI job runs inside a Docker container as root, where sudo
is not available. This caused exit code 127 after a successful build.

Signed-off-by: staryxchen <staryxchen@tencent.com>

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Signed-off-by: staryxchen <staryxchen@tencent.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 22:33:21 +08:00
1180300720 fdb7040787
[CI] Add hixl roce samples on ASCEND platforms. (#1697)
---------

Co-authored-by: ZhaoBaiwei <zhaobaiwei@huawei.com>
2026-03-21 00:39:41 +08:00
Xun Sun 59c9f90151
[CI] Update artifact selection criteria in workflow (#1700) 2026-03-19 22:38:06 +08:00
Xun Sun 99562454a7
Modify CODEOWNERS to add new code owners (#1679)
Updated CODEOWNERS to include @yuechen-sys.
2026-03-18 00:58:36 +08:00
1180300720 22ecbd794e
[CI] update ascend ci and docs (#1683)
Co-authored-by: ZhaoBaiwei <zhaobaiwei@huawei.com>
2026-03-17 20:34:42 +08:00
Teng Ma 3a36980661
[CI] avoid frequent website deployment (#1671) 2026-03-17 00:31:39 +08:00
Teng Ma 71886f2792
[CI] fix musa build hang issue (#1666)
Change make command to use 4 jobs for building
2026-03-16 13:22:32 +08:00
Copilot 9bd773e6fe
[EP] Move EP/PG wheel-building logic from build_wheel.sh into CMake (#1616) 2026-03-12 22:24:12 +08:00
1180300720 8887c354bf
[CI] Add CI workflow on ASCEND platform (#1640)
Co-authored-by: chenkunjie0506 <chenkunjie1@huawei.com>
Co-authored-by: ZhaoBaiwei <zhaobaiwei@huawei.com>
2026-03-11 16:27:45 +08:00
shicanwei.scw 1bc3c651bc
[CI] skip integration test for non-core file changes (#1609)
---------

Signed-off-by: shicanwei <shicanwei.scw@alibaba-inc.com>
2026-03-10 11:36:04 +08:00
Xun Sun 64627804f1
[PG] Remove CPU-only backend tests from CI (#1628) 2026-03-09 12:52:54 +08:00
Teng Ma cbc32b9c20
[CI] add CU13_BUILD environment variable to CI workflow (#1590)
* [CI] add CU13_BUILD environment variable to CI workflow

* Disable etcd, redis, and examples in CI workflow

* Apply suggestion from @stmatengss

* Update ci_cu13.yml
2026-03-03 10:11:34 +08:00
Stary a05cfc2fae
[DOCS] update pull request template (#1568)
* docs: update pull request template with module checklist and refined change types

- Add "Module" section with checkboxes for various project components
- Simplify "Type of Change" section by removing nested structure
- Add "Refactor" as a new change type option
---------

Signed-off-by: staryxchen <staryxchen@tencent.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-02-27 16:54:03 +08:00
Xinyi Zhang 0bc07265d1
[CI]extend waiting time for aritifact (#1563) 2026-02-26 16:45:46 +08:00
Teng Ma b381320156
[Store] add safe tensor API (#1199)
---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Xuchun Shang <xuchun.shang@gmail.com>
2026-02-26 10:11:10 +08:00
Teng Ma ac732acf6d
[CI] chore: update codeowner (#1556) 2026-02-25 18:48:18 +08:00
Teng Ma 1abb593ad8
[Build] update dockerfile and install mooncake from scratch (#1214)
* [Misc] add new dockerfile

* fix ci

* Add musa.Dockerfile

Signed-off-by: Xiaodong Ye <xiaodong.ye@mthreads.com>

* Update docker/mooncake.Dockerfile

* Apply suggestions from code review

* Fix Dockerfile issues: add submodule init, remove duplicate pip install, add newline

- Add missing git submodule update command in mooncake.Dockerfile
- Remove duplicate pip install command in mooncake.Dockerfile (was installing twice)
- Add missing newline at end of musa.Dockerfile

* Simplify Dockerfiles by removing unimportant steps

Removed unnecessary steps to streamline the build process:
- Remove separate pip upgrade (dependencies.sh handles this)
- Remove git submodule init (not needed for Docker builds from source)
- Remove bash -x verbose flag (reduces noise)
- Remove LD_LIBRARY_PATH setting (cmake install handles this)
- Remove venv creation in runtime (install directly to system Python)
- Remove WORKDIR /workspace in runtime (not needed)
- Remove unused packages: python3-distutils, python3-venv, python3-setuptools, curl, netcat
- Remove redundant pip upgrade in musa runtime

This reduces image size and build time while maintaining functionality.

* reduce size

---------

Signed-off-by: Xiaodong Ye <xiaodong.ye@mthreads.com>
Co-authored-by: Xiaodong Ye <xiaodong.ye@mthreads.com>
2026-02-25 17:24:35 +08:00
qiuweit7 30e48cfd93
[Store] feat: CXL storage full features. (#1531)
* [Store] feat: CXL storage full features.

* fix(ci): resolve cxl test failure and code format

* fix(ci): add CXL protocol support and fix code format issues

* [Store] feat: CXL storage full features, reset and rm extern/pybind

* [TE] Support TCP fallback in EFA build and improve EFA documentation (#1523)

When building with USE_EFA=ON, auto_discover is disabled to prevent
RDMA transport installation (QP creation fails on EFA devices). This
means TCP transport is also not installed automatically. Add explicit
TCP transport installation for non-EFA protocols in the EFA build path.

Documentation changes:
- build.md: Add USE_EFA option and clarify USE_CUDA default/purpose
- supported-protocols.md: Add EFA as a supported protocol
- efa_transport.md: Add USE_CUDA=ON to build command, document GPU
  memory requirement

Co-authored-by: whn09 <whn09@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Teng Ma <teng-ma@linux.alibaba.com>

* [Store] Optimize BucketStorageBackend for reduced lock contention and add delete safety (#1456)

* fix(ci): resolve cxl test failure and code format

* [Store] Add Local Cache Mechanism for Mooncake Store Client (#1226)

* feat(Store): add local hot cache for client

* feat(Store): add client local hot cache log to show performance

* fix: local hot cache initialize bug

* fix(Store): Mooncake put slice is max 16MB, so make local hot cache block 16MB

* feat(Store): move local hot cache initialization to Client::Create

* feat(Store):  local hot cache remove unused small block implementation

* feat(Store): add client local hot cache unit test

* fix(Store): modify client local hot cache suit with v0.3.7

* feat(Store): change local hot cache unit tes

* fix: initialize local hot cache with negative value

* feat: use in process master and metadata fro local hot cache unit test.

* feat: update local hot cache to one replica one slice version

* fix: local hot cache unit test use in process master service

* fix: code style fix

* fix: fix dirty read when client wants to read a previously hitted hot block but the hot block is modified by incoming put actions

* fix: local hot cache unit test use in process master service

* fix: code format fix

* fix: fix comment problems for

* feat: add local hot asynchronous queue size limit

* fix: local hot cache task involves the block so that there is no memcpy operation when inserting local hot cache

* fix: code check fix

* fix: update block in_use prop to reference count

---------

Co-authored-by: shichangzhang064 <zhangshichang@h-partners.com>

* fix(ci): add CXL protocol support and fix code format issues

* fix: address comments from code review

* fix(ci): resolve cxl test failure

* fix(ci): resolve ci error

---------

Co-authored-by: 王鹤男 <wanghenan09@gmail.com>
Co-authored-by: whn09 <whn09@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Teng Ma <teng-ma@linux.alibaba.com>
Co-authored-by: Mahesh Bapatu <153306023+maheshrbapatu@users.noreply.github.com>
Co-authored-by: Shichang Zhang <77728761+Shichang-Zhang@users.noreply.github.com>
Co-authored-by: shichangzhang064 <zhangshichang@h-partners.com>
2026-02-24 19:59:45 +08:00
Jasonzhang517 8d5adc21bf
[CI] opt: add ci switch and free space codes (#1540) 2026-02-12 23:25:38 +08:00
tang c724318217
[Store][Feature] copy and move client support (#1364)
* [Store]: add task executor feature with unit and executor test

Signed-off-by: Vincent Gao <vincentbo@linux.alibaba.com>

* [Store]: add some optimizations to task executor

Refactor the task_executor into the client_service and add a
task structure on the client side. Additionally, remove the
existence check in the execute function;
only retrying should be performed if replica allocation fails.

Signed-off-by: Vincent Gao <vincentbo@linux.alibaba.com>

* [Store]: get source replica from copyStart or moveStart api

* [Store]: call move or copy end if the target replica already exist to complete the replication task

* [Store]: use the max_retry_attempts in master side

* [Store]: add client integration test and set default max_retry_attempts to 10

* [Doc] update task api introduction

Signed-off-by: Vincent Gao <vincentbo@linux.alibaba.com>

* [Store] Set copy and move as private methods

Signed-off-by: Vincent Gao <vincentbo@linux.alibaba.com>

* [Doc]: change the default task max_retry_attempts to 10

* [Doc]: fix some description error

* [Store]: allocate the buffer size to be a multiple of 16MB

* [Store]: validate the replica is in local and directly construct slices from replica buffer address instead of copy the data to local buffer

* [Store]: change the validate logic to directly use transfer engine endpoint or local_hostname_.

* [Store] add e2e ci test for copy and move api

* [Store] refactor the client move and copy function

* [Store] fix the e2e test

* [Store] remove unused code

* [Store] add source field when build replica copy payload in the task_manager_test

* [Store] rename back to snake case for split_into_slices function and also remove hard code for client poll count

* [Store] revert mis deleted field when resolve conflicts

* [Store] change test to validate the real behaviour

* [Store] change the default task fetch size to 16

* [Doc]: change the replica copy/move sequence diagram

* [Store] add new split_into_slice method

* [Store] change the real client to use split_to_slice with buffer handle parameters

---------

Signed-off-by: Vincent Gao <vincentbo@linux.alibaba.com>
Co-authored-by: Vincent Gao <vincentbo@linux.alibaba.com>
2026-02-06 19:02:02 +08:00
Xun Sun a00f757424
Modifying package name for CUDA-13 build (#1502) 2026-02-05 18:33:00 +08:00
Shangming Cai 5c5f18c817
Revert "[Build] feat: use setuptools_scm for more elegant version and support…" (#1497)
This reverts commit 020a906295.
2026-02-05 16:07:16 +08:00
Teng Ma e9f523cb8c
[CI] Add new labels for PyTorch Backend and Mooncake EP (#1487) 2026-02-04 17:33:18 +08:00
Weixiao Huang 020a906295
[Build] feat: use setuptools_scm for more elegant version and support MOONCAKE_LOCAL_VERSION env (#1479)
* feat: use setuptools_scm for more elegant version and support MOONCAKE_LOCAL_VERSION env

* feat: more compatible

* feat: add fetch-tags for build ci

* feat: manually add Fetch git tags actions

* feat: use fetch-depth: 0 and filter: tree:0

---------

Co-authored-by: huangweixiao <huangweixiao@moonshot.cn>
2026-02-04 00:33:03 +08:00
Feng Ren 8f438716ec
Add ascend-direct-dev as codeowner (#1473) 2026-02-02 15:58:47 +08:00
qiuweit7 67d0afc4a9
[Store][Feature] Add CXL storage for mooncake_store (#1365)
* [Store] feat: add cxl storage for mooncake store

* Update extern/pybind11 to match main

* fix: use fake cxl device to bypass ci-test error

* Fix code formatting in segment.cpp

---------

Co-authored-by: Teng Ma <sima.mt@alibaba-inc.com>
2026-01-28 19:51:20 +08:00
Xun Sun 39d7baa94e
[CI] Support torch==2.10.0 (#1420) 2026-01-22 11:25:34 +08:00
shicanwei.scw 05247e0c40 fix(create_job): Filter artifacts by excluding cu130 builds when selecting py312 for the target SHA
Signed-off-by: shicanwei.scw <shicanwei.scw@alibaba-inc.com>
2026-01-19 11:25:00 +08:00
shicanwei.scw 23380988c8 fix(query_job): Change the wait time from 10s to 30s
Signed-off-by: shicanwei.scw <shicanwei.scw@alibaba-inc.com>
2026-01-19 11:25:00 +08:00
shicanwei.scw 8510cc8b45 ci: add 24h total timeout for job polling
Signed-off-by: shicanwei.scw <shicanwei.scw@alibaba-inc.com>
2026-01-19 11:25:00 +08:00
shicanwei.scw f19033c03e fix(ci): only count timeout while job is running (skip pending)
Signed-off-by: shicanwei.scw <shicanwei.scw@alibaba-inc.com>
2026-01-19 11:25:00 +08:00
shicanwei.scw 731f0ea2c7
[CI]Add testcase test_disaggregation_different_tp and fix potential network issues (#1386) 2026-01-16 14:15:40 +08:00
ympcMark 971c99ddca
Split Mooncake PG out of Mooncake EP (#1387) 2026-01-16 13:39:37 +08:00
Teng Ma fc2f688661
[CI] add cuda13 CI test (#1380) 2026-01-16 10:59:15 +08:00
ykwd c921c02087
[CI] Fix CI Failure (#1367)
* test

* Test

* Apply suggestions from code review

---------

Co-authored-by: Ke Yang <yangke@approaching.ai>
Co-authored-by: Teng Ma <teng-ma@linux.alibaba.com>
2026-01-15 00:20:03 +08:00
Stary 30ca0868d5
[CI] Improve Code Formatting Workflow (#1368)
* chore: add code formatting script and update PR template

- Add code_format.sh script for automated C/C++ code formatting
- Update pull request template to include code formatting checklist item

Signed-off-by: staryxchen <staryxchen@tencent.com>

* ci: simplify clang-format workflow by using script

- Consolidate checkout steps into a single step with fetch-depth: 0
- Replace manual changed file detection and formatting with unified script call
- Improve base ref determination for both PR and push events

Signed-off-by: staryxchen <staryxchen@tencent.com>

---------

Signed-off-by: staryxchen <staryxchen@tencent.com>
2026-01-14 14:46:07 +08:00
Xinyi Zhang 617c50b304
[CI] fix integration test on push and validate download error (#1361)
Co-authored-by: xinxing.zxy <xinxing.zxy@alibaba-inc.com>
2026-01-12 19:20:40 +08:00
Stary 5b3fd4deff
ci: optimize clang-format workflow to check only changed files (#1359)
- Add conditional checkout with different fetch-depth for PR vs push events
- Implement changed files detection for both PR and push scenarios
- Run clang-format only on changed C++ files instead of entire codebase
- Add skip step when no C++ files are modified

Signed-off-by: staryxchen <staryxchen@tencent.com>
2026-01-12 19:09:11 +08:00
ykwd ba2bbd7f6c
[Misc] Add amd-arozanov as CODEOWNERS for TE hip_transport (#1354)
* Add CODEOWNERS for TE hip_transport directory

* Fix CODEOWNERS path for hip_transport
2026-01-12 16:25:36 +08:00
Xinyi Zhang fdf08f108b
[CI] enable sglang-integration tests for forked repos with pull_request_target workflow (#1351)
Co-authored-by: xinxing.zxy <xinxing.zxy@alibaba-inc.com>
2026-01-10 12:16:59 +08:00
Teng Ma b8dbc2654d
[CI] add cuda13 wheel release workflow (#1331)
* [CI] add cuda13 wheel release workflow

* Update .github/workflows/release-cuda13.yaml

Co-authored-by: Xun Sun <UNIDY2002@outlook.com>

* update

* Update scripts/build_wheel.sh

Co-authored-by: Xun Sun <UNIDY2002@outlook.com>

---------

Co-authored-by: Xun Sun <UNIDY2002@outlook.com>
2026-01-08 14:16:16 +08:00
LiYiMing-lg f8ad6d2f1a
[CI] feat: Add code coverage support in CI (#1316)
* feat: add code coverage support in CI - Integrate coverage reporting into CI pipeline - Generate coverage reports for PRs and main branch - Add coverage tool integration - Closes #688

* fix: complete coverage implementation with all AI review fixes - Add coverage compiler flags via environment variables (CXXFLAGS/CFLAGS/LDFLAGS=--coverage) - Remove unsupported ENABLE_COVERAGE CMake option - Fix Chinese comments (replace with English) - Create valid lcov-compliant dummy file format - Update Codecov action from v3 to v4 - Add coverage failure tracking via output variable - Fix lcov exclusion patterns (remove '*/build/*') - Add coverage status check step
2026-01-04 10:48:45 +08:00
Teng Ma 9217f29117
[Misc] Add YiXR as code owner for mooncake-store (#1301) 2025-12-29 17:47:47 +08:00
Shangming Cai 823064aa76
Remove Python 3.9 from release workflow (#1290)
* Remove Python 3.9 from release workflow
2025-12-26 17:24:32 +08:00
Xun Sun ed2fa9dd22
[CI] Try to reduce disk usage during release build (#1287)
* [CI] Try to reduce disk usage during release build

* update
2025-12-26 16:59:44 +08:00