Commit Graph

323 Commits

Author SHA1 Message Date
Teng Ma e6bbc3dae8
[Build] add TE bench into wheel package (#514) 2025-06-18 19:04:09 +08:00
dong 7267919078
[MooncakeIntegration] Fix find class id (#500) 2025-06-17 16:41:43 +08:00
JinYan Su 244248d56c
fix(transfer-task): fix error hanlding logic in transfer task (#503) 2025-06-17 00:44:41 +08:00
shangmingc 9f60c25d07
chore: bump version to 0.3.3.post2 in pyproject.toml (#498) 2025-06-16 20:13:40 +08:00
Mingxing Zhang 2c811b704c
Merge pull request #497 from kvcache-ai/fix_hook
[TransferEngine] Optimize custom allocator function name
2025-06-16 19:12:22 +08:00
Shangming Cai 38e34a20ff [TransferEngine] Optimize custom allocator function name
Signed-off-by: Shangming Cai <caishangming@linux.alibaba.com>
2025-06-16 18:54:57 +08:00
shangmingc b41493464f
chore: bump version to 0.3.3.post1 in pyproject.toml (#494)
Signed-off-by: Shangming Cai <caishangming@linux.alibaba.com>
2025-06-15 12:10:47 +08:00
JinYan Su 7cf6db285d
chore(ci): disable asan in release workflow (#493) 2025-06-15 12:01:57 +08:00
JinYan Su 0f29a7c1d0
chore(release): set cmake release when release whl package (#490) 2025-06-14 15:08:26 +08:00
shangmingc e125f34264
chore: bump version to 0.3.3 in pyproject.toml (#489)
Signed-off-by: Shangming Cai <caishangming@linux.alibaba.com>
2025-06-14 14:17:12 +08:00
JinYan Su 07f2375c74
chore(ci): revert arm release workflow (#488) 2025-06-14 14:02:01 +08:00
JinYan Su 31b814a4af
feat(release): add support for arm64 architecture (#486)
* feat(release): add support for arm64 architecture

* Update scripts/build_wheel.sh

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-14 12:08:59 +08:00
fzyzcjy 96c23ed058
Fix NVLink transport error in multi-node scenarios (#485) 2025-06-13 21:30:50 +08:00
maobaolong 290d19c83e
[Store] Add operation cost time for mooncake_store_service (#471) 2025-06-13 00:09:21 +08:00
Teng Ma 4d11e25f28
[Build] fix build wheel if nvlink is disabled (#480)
* [Build] fix build wheel if nvlink is disabled

* fix
2025-06-13 00:08:08 +08:00
JinYan Su 1a53701e3d
feat(client): Abstract client-side data transmission for async and batch optimization (#455)
* feat(client): add transfer submitter for optimized data transfer

Signed-off-by: Jinyang Su <751080330@qq.com>

* feat(store): implement async memcpy task execution with worker pool

Add `MemcpyWorkerPool` to manage asynchronous execution of memcpy tasks. Refactor `BatchGet` and `BatchPut` methods for parallel execution and enhance logging for better traceability.

* Squashed commit of the following:

commit 38c435fcc6
Author: Feng Ren <alogfans@users.noreply.github.com>
Date:   Wed Jun 11 16:50:29 2025 +0800

    Revert "[TransferEngine] Fix minor bugs in NVLink transport and benchmark (#468)" (#469)

    This reverts commit ffaad6aa18.

commit 41b1df7954
Author: ykwd <oneday117@qq.com>
Date:   Wed Jun 11 16:37:05 2025 +0800

    [Store] Add initial support for master high availability failover (#451)

    * A temp version. Better to continue development after merging the latest main branch

    * Temp version to merge the latest main branch

    * Allow optional use HA mode, in default use non-HA mode. Fix a minor metrics bug.

    * Refactor the etcd_helper

    * refactor ha_helper

    * Add some unit tests. Refactor the code

    * Update cmakelists: build etcd_wrapper in default

    * Fix ci problems. Compile etcd wrapper only when use_etcd or with_store are set.

    * Update python config relating to mooncake-store client

    * make some blocking etcd helper function cancellable.
    bug fix: add string name of new errors that will be used in tostring.

    * Refactor etcd related code

    * Bug fix

    * Add basic masterviewhelper unit tests

    * In ci flow, install and start etcd to run HA feature unit test.

    * Fix a ci bug

    * Reuse master_server_address parameter and remove enable_ha parameter.

    * Format the code. Fix a minor bug.

    * Handle the error case: the coro server may fail to start or return internal error.

commit ffaad6aa18
Author: Feng Ren <alogfans@users.noreply.github.com>
Date:   Wed Jun 11 16:02:41 2025 +0800

    [TransferEngine] Fix minor bugs in NVLink transport and benchmark (#468)

    * [TransferEngine] Fix compilation bug in NVLink xport

    * [TransferEngine] Fix minor bugs in nvlink benchmark

Signed-off-by: Jinyang Su <751080330@qq.com>

---------

Signed-off-by: Jinyang Su <751080330@qq.com>
2025-06-12 16:02:48 +08:00
Feng Ren 883a5a734e
[TransferEngine] Add IPv6 support (#479)
* [TransferEngine] Fix compilation bug in NVLink xport

* [TransferEngine] Add IPv6 support
2025-06-12 14:35:00 +08:00
Yixin Zhang 20829bc4f4
fixed etcd and cmake version issues (#478)
Co-authored-by: 雨杨 <yuyang.zyx@alibaba-inc.com>
2025-06-12 10:23:28 +08:00
Feng Ren b6b95f0e27
[TransferEngine] Fix protection problem when multiple GPU devices are used (#475)
* [TransferEngine] Fix compilation bug in NVLink xport

* [TransferEngine] Fix cross-device access problem

* fix typo

* remove restriction of bench code

* fix bug in transfer engine bench
2025-06-11 19:58:31 +08:00
Feng Ren 38c435fcc6
Revert "[TransferEngine] Fix minor bugs in NVLink transport and benchmark (#468)" (#469)
This reverts commit ffaad6aa18.
2025-06-11 16:50:29 +08:00
ykwd 41b1df7954
[Store] Add initial support for master high availability failover (#451)
* A temp version. Better to continue development after merging the latest main branch

* Temp version to merge the latest main branch

* Allow optional use HA mode, in default use non-HA mode. Fix a minor metrics bug.

* Refactor the etcd_helper

* refactor ha_helper

* Add some unit tests. Refactor the code

* Update cmakelists: build etcd_wrapper in default

* Fix ci problems. Compile etcd wrapper only when use_etcd or with_store are set.

* Update python config relating to mooncake-store client

* make some blocking etcd helper function cancellable.
bug fix: add string name of new errors that will be used in tostring.

* Refactor etcd related code

* Bug fix

* Add basic masterviewhelper unit tests

* In ci flow, install and start etcd to run HA feature unit test.

* Fix a ci bug

* Reuse master_server_address parameter and remove enable_ha parameter.

* Format the code. Fix a minor bug.

* Handle the error case: the coro server may fail to start or return internal error.
2025-06-11 16:37:05 +08:00
Feng Ren ffaad6aa18
[TransferEngine] Fix minor bugs in NVLink transport and benchmark (#468)
* [TransferEngine] Fix compilation bug in NVLink xport

* [TransferEngine] Fix minor bugs in nvlink benchmark
2025-06-11 16:02:41 +08:00
JinYan Su f09c501b2a
feat(ci): enable nvlink hook in build configuration (#465)
* feat(ci): enable nvlink hook in build configuration

Signed-off-by: Jinyang Su <751080330@qq.com>

* chore(build): add fallback to g++ if nvcc is unavailable

Signed-off-by: Jinyang Su <751080330@qq.com>

---------

Signed-off-by: Jinyang Su <751080330@qq.com>
2025-06-10 17:32:24 +08:00
Feng Ren c5cdf8b8f5
[TransferEngine] hotfix bench program (#466)
* [TransferEngine] Fix compilation bug in NVLink xport

* [TransferEngine] hotfix bench program
2025-06-10 16:34:28 +08:00
Feng Ren ab242f0de0
[TransferEngine] Fix compilation bug in NVLink xport (#463) 2025-06-10 12:40:49 +08:00
Feng Ren f4ad8c16f7
[TransferEngine] Fix registration and relocating problem when requested size smaller than physical page size (#462)
* [TransferEngine] Add debug information in NVLink xport register

* [TransferEngine] Fix cuMem registration base_address and size in NVLink transport

* fix typo

* change bench alloc/free
2025-06-10 11:21:28 +08:00
JinYan Su 9c95392d07
chore: automate build output directory and update scripts (#460)
* chore: automate build output directory and update scripts

* feat(ci): enable CUDA support in workflows

Signed-off-by: Jinyang Su <751080330@qq.com>

* chore(build): switch to nvcc for nvlink hook compilation

Signed-off-by: Jinyang Su <751080330@qq.com>

---------

Signed-off-by: Jinyang Su <751080330@qq.com>
2025-06-10 10:45:36 +08:00
Feng Ren c9bbdf81c8
[TransferEngine] Add debug information in NVLink xport register (#461) 2025-06-09 19:02:44 +08:00
Teng Ma ebba3b8542
[DOC] Transfer Engine Python API Doc (#458) 2025-06-09 17:56:59 +08:00
Feng Ren 41d6151572
Support cuMem APIs (#457)
* [TransferEngine]Enable NVLINK transport across multiple processes in the same machine

Signed-off-by: Feng Ren <alogfans@gmail.com>

* update locking stragegy and fix minor problems

* removing thread pool in nvlink transport

* add the support of fabric

* add include

* fix compile bugs

* fix bug

* fix bugs

* add test code in nvlink transport

* minor fix

* enable cuda memory allocation in pywrapper

* extract supportFabricMem()

* add hook plugin to intercept malloc/free for torch program

* set build options

* install go binary according to arch

* copy granularity fix to the nvlink transport

---------

Signed-off-by: Feng Ren <alogfans@gmail.com>
2025-06-09 16:33:55 +08:00
卜居 b3cac34bc3
[Store] Provide cache aware interface for scheduler (#448) 2025-06-06 17:01:08 +08:00
Feng Ren 5b70626874
[TransferEngine] Enable NVLink transport across multiple processes (#442)
* [TransferEngine]Enable NVLINK transport across multiple processes in the same machine

Signed-off-by: Feng Ren <alogfans@gmail.com>

* update locking stragegy and fix minor problems

* removing thread pool in nvlink transport

* add the support of fabric

* add include

* fix compile bugs

* fix bug

* fix bugs

* add test code in nvlink transport

* minor fix

* enable cuda memory allocation in pywrapper

* extract supportFabricMem()

---------

Signed-off-by: Feng Ren <alogfans@gmail.com>
2025-06-06 13:21:37 +08:00
Wenjie 25cfc7bcb4
[CI] fix: fix sccache (#443)
* ci: fix sccache

Signed-off-by: swj <1186093704@qq.com>

* fix env doesn't work

Signed-off-by: swj <1186093704@qq.com>

---------

Signed-off-by: swj <1186093704@qq.com>
2025-06-06 11:17:54 +08:00
JinYan Su 22288622be
[Store] feat: add preferred segment allocation strategy (#412)
* feat(store): add preferred segment allocation strategy

* feat(store): set preferred segment in replication config
2025-06-05 16:00:54 +08:00
xinranwang17 4d0c85da0a
[MooncakeStore] support batch api (#428)
* support batch api

support to put/get a batch of data in order to reduce master rpc call.

* fix typo
2025-06-05 11:30:00 +08:00
Chenhao Ye 8ccf6932bd
[DOC] fix: default slice_size is 64KB (#444) 2025-06-04 10:23:29 +08:00
Teng Ma 59ac503510
[Test] add fault tolerant CI (#418) 2025-06-04 00:43:12 +08:00
QiyuanZhao 1944a25828
chore: artifact include etcd by default (#440)
* chore: artifact include etcd by default

* chore(ci): trim down python versions to 3.10 and 3.12

---------

Co-authored-by: xunqyzhao <xunqyzhao@tencent.com>
2025-06-03 14:31:17 +08:00
Mingxi 703655f5f0
[DOC] Update lmcacheV1-deployment.md (#438) 2025-06-03 11:38:05 +08:00
maobaolong 02504e145f
[Store] Improve the batchEvict logic (#432)
* Improve the batchEvict logic

* Address comment
2025-05-31 16:23:39 +08:00
Wenjie dff9965322
[CI] feat: add asan check (#423)
* ci: add asan check

Signed-off-by: swj <1186093704@qq.com>

* fix memory leak

Signed-off-by: swj <1186093704@qq.com>

* disable library asan check

Signed-off-by: swj <1186093704@qq.com>

---------

Signed-off-by: swj <1186093704@qq.com>
2025-05-31 02:35:05 +08:00
Wenjie 2d67e3990a
[TransferEngine] Reduce duplicated code (#425)
Signed-off-by: swj <1186093704@qq.com>
2025-05-30 20:08:30 +08:00
maobaolong a5cf796b73
[Store] feat: Add high watermark ratio flag to avoid trigger eviction until put failed (#403)
* followup(#374)(master): Add high watermark ratio flag to avoid trigger eviction until put failed

* Address comments

* fix type

* Add related docs
2025-05-29 15:39:40 +08:00
phoenixwu0229 9bcdbf36ff
[TE] fix: filter out DOWN network interfaces in findLocalIpAddresses() (#422)
Signed-off-by: phoenixwu0229 <phoenixwu0229@icloud.com>
2025-05-29 15:23:55 +08:00
jiafu zhang 072248ba68
make backlog size of handshake listen configurable (#388)
and change default value to 128

Co-authored-by: doujiang24 <doujiang24@gmail.com>

---------

Signed-off-by: jiafu.zhang <jiafu.zhang@intel.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Teng Ma <teng-ma@linux.alibaba.com>
Co-authored-by: doujiang24 <doujiang24@gmail.com>
2025-05-29 09:50:59 +08:00
Yongjian 8d0c7b8c27
[Benchmark] add VRAM support in server side (#413) 2025-05-28 00:28:02 +08:00
jiafu zhang 3c27b0bd91
leave endpoint status unchanged when delete endpoint reference to avoid endpoint deconstruction before CQ being generated (#384)
* leave endpoint status unchanged when delete endpoint reference to avoid endpoint deconstruction before CQ being generated

Signed-off-by: jiafu.zhang <jiafu.zhang@intel.com>

* leave endpoint status unchanged when delete endpoint reference to avoid endpoint deconstruction before CQ being generated

Signed-off-by: jiafu.zhang <jiafu.zhang@intel.com>

* leave endpoint status unchanged when delete endpoint reference to avoid endpoint deconstruction before CQ being generated

Signed-off-by: jiafu.zhang <jiafu.zhang@intel.com>

---------

Signed-off-by: jiafu.zhang <jiafu.zhang@intel.com>
2025-05-27 11:23:50 +08:00
ykwd d65d7baffe
[Fix] Store Metrics-related Bugs (#408)
* Add eviction related metrics to metrics output;
Decrease key_count and allocated_size metrics when unmount segment.

* Change metrics value type from double to int64_t

* For MasterMetricManager: add getter functions and basic unit tests
2025-05-27 11:12:33 +08:00
maobaolong 5cd902c25d
[Store] Support put 100MB limited value size (#407) 2025-05-27 10:25:03 +08:00
shangmingc 5451d3231e
chore: bump version to 0.3.2.post1 in pyproject.toml (#409)
Signed-off-by: Shangming Cai <caishangming@linux.alibaba.com>
2025-05-26 19:40:41 +08:00