[GH-ISSUE #187] The new mooncake pip package do not contains libgrpc++.so.1 #89

Closed
opened 2026-10-29 21:09:02 +00:00 by bsakaguchi · 21 comments
Owner

Originally created by @maobaolong on GitHub (Mar 31, 2025).
Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/187

# mooncake master cannot run successfully

root@TENCENT64:/vllm-workspace#  /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master 
/usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master: error while loading shared libraries: libgrpc++.so.1: cannot open shared object file: No such file or directory

# it lack of a lots of other dependencies

root@TENCENT64:/vllm-workspace# ldd /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master 
        linux-vdso.so.1 (0x00007ffc63fde000)
        libgrpc++.so.1 => not found
        libprotobuf.so.23 => not found
        libetcd-cpp-api.so => not found
        libibverbs.so.1 => /usr/lib/x86_64-linux-gnu/libibverbs.so.1 (0x00007fd2f9671000)
        libjsoncpp.so.25 => not found
        libglog.so.0 => not found
        libgflags.so.2.2 => not found
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fd2f9443000)
        libgcc_s.so.1 => /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fd2f9423000)
        libc.so.6 => /usr/lib/x86_64-linux-gnu/libc.so.6 (0x00007fd2f91fa000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fd2f97af000)
        libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007fd2f9177000)
        libnl-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007fd2f9152000)
        libm.so.6 => /usr/lib/x86_64-linux-gnu/libm.so.6 (0x00007fd2f906b000)


# After I added lib_so to the LD_LIBRARY_PATH

root@TENCENT64:/vllm-workspace# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/python3.12/dist-packages/mooncake/lib_so/
root@TENCENT64:/vllm-workspace# ldd /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master 
        linux-vdso.so.1 (0x00007fff9957d000)
        libgrpc++.so.1 => not found
        libprotobuf.so.23 => not found
        libetcd-cpp-api.so => /usr/local/lib/python3.12/dist-packages/mooncake/lib_so/libetcd-cpp-api.so (0x00007fae33fdd000)
        libibverbs.so.1 => /usr/lib/x86_64-linux-gnu/libibverbs.so.1 (0x00007fae33fba000)
        libjsoncpp.so.25 => not found
        libglog.so.0 => not found
        libgflags.so.2.2 => not found
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fae33d8c000)
        libgcc_s.so.1 => /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fae33d6c000)
        libc.so.6 => /usr/lib/x86_64-linux-gnu/libc.so.6 (0x00007fae33b43000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fae3457e000)
        libcpprest.so.2.10 => not found
        libgpr.so.10 => not found
        libgrpc.so.10 => not found
        libgrpc++.so.1 => not found
        libprotobuf.so.23 => not found
        libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007fae33abc000)
        libnl-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007fae33a99000)
        libm.so.6 => /usr/lib/x86_64-linux-gnu/libm.so.6 (0x00007fae339b2000)
Originally created by @maobaolong on GitHub (Mar 31, 2025). Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/187 ``` # mooncake master cannot run successfully root@TENCENT64:/vllm-workspace# /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master: error while loading shared libraries: libgrpc++.so.1: cannot open shared object file: No such file or directory # it lack of a lots of other dependencies root@TENCENT64:/vllm-workspace# ldd /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master linux-vdso.so.1 (0x00007ffc63fde000) libgrpc++.so.1 => not found libprotobuf.so.23 => not found libetcd-cpp-api.so => not found libibverbs.so.1 => /usr/lib/x86_64-linux-gnu/libibverbs.so.1 (0x00007fd2f9671000) libjsoncpp.so.25 => not found libglog.so.0 => not found libgflags.so.2.2 => not found libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fd2f9443000) libgcc_s.so.1 => /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fd2f9423000) libc.so.6 => /usr/lib/x86_64-linux-gnu/libc.so.6 (0x00007fd2f91fa000) /lib64/ld-linux-x86-64.so.2 (0x00007fd2f97af000) libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007fd2f9177000) libnl-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007fd2f9152000) libm.so.6 => /usr/lib/x86_64-linux-gnu/libm.so.6 (0x00007fd2f906b000) # After I added lib_so to the LD_LIBRARY_PATH root@TENCENT64:/vllm-workspace# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/python3.12/dist-packages/mooncake/lib_so/ root@TENCENT64:/vllm-workspace# ldd /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master linux-vdso.so.1 (0x00007fff9957d000) libgrpc++.so.1 => not found libprotobuf.so.23 => not found libetcd-cpp-api.so => /usr/local/lib/python3.12/dist-packages/mooncake/lib_so/libetcd-cpp-api.so (0x00007fae33fdd000) libibverbs.so.1 => /usr/lib/x86_64-linux-gnu/libibverbs.so.1 (0x00007fae33fba000) libjsoncpp.so.25 => not found libglog.so.0 => not found libgflags.so.2.2 => not found libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fae33d8c000) libgcc_s.so.1 => /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fae33d6c000) libc.so.6 => /usr/lib/x86_64-linux-gnu/libc.so.6 (0x00007fae33b43000) /lib64/ld-linux-x86-64.so.2 (0x00007fae3457e000) libcpprest.so.2.10 => not found libgpr.so.10 => not found libgrpc.so.10 => not found libgrpc++.so.1 => not found libprotobuf.so.23 => not found libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007fae33abc000) libnl-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007fae33a99000) libm.so.6 => /usr/lib/x86_64-linux-gnu/libm.so.6 (0x00007fae339b2000) ```
Author
Owner

@maobaolong commented on GitHub (Mar 31, 2025):

@xhyf77 Would you like to take a look at this issue?

<!-- gh-comment-id:2766139629 --> @maobaolong commented on GitHub (Mar 31, 2025): @xhyf77 Would you like to take a look at this issue?
Author
Owner

@ShangmingCai commented on GitHub (Mar 31, 2025):

@maobaolong Yeah, actually we want to remove and replace grpc since it is a bit heavy, which could cause trouble when installing. Since #179 has been merged, I think we don't need grpc anymore. Can you try building from source? We will check whether the pip package has been built correctly tomorrow.

<!-- gh-comment-id:2766803642 --> @ShangmingCai commented on GitHub (Mar 31, 2025): @maobaolong Yeah, actually we want to remove and replace grpc since it is a bit heavy, which could cause trouble when installing. Since #179 has been merged, I think we don't need grpc anymore. Can you try building from source? We will check whether the pip package has been built correctly tomorrow.
Author
Owner

@xhyf77 commented on GitHub (Apr 1, 2025):

@xhyf77 Would you like to take a look at this issue?

Yes, the pip package does not include libgrpc++.so.1. In order to minimize the number of external .so libraries included in the package, we only bundled libetcd-cpp-api.so. The reason for including only libetcd-cpp-api.so is that, based on my tests (on Ubuntu 22.04 LTS), the correct versions of libgrpc.so.x, libgrpc++.so.x, and libprotobuf.so.x can be installed using the provided dependency.sh script. (Reference: https://github.com/kvcache-ai/Mooncake/pull/177#issuecomment-2761236212)

Therefore, we only need to ensure that the compiled libetcd-cpp-api.so correctly locates its dependencies.

One thing I overlooked is that I forgot to add a RUNPATH to mooncake_master, which caused you to have to manually export LD_LIBRARY_PATH. This might need to be fixed, but since we're now planning to remove etcd, it seems there's no longer a need to fix the missing RUNPATH. The newly released packages should no longer depend on libgrpc++.so.1.

<!-- gh-comment-id:2767893483 --> @xhyf77 commented on GitHub (Apr 1, 2025): > [@xhyf77](https://github.com/xhyf77) Would you like to take a look at this issue? Yes, the pip package does not include libgrpc++.so.1. In order to minimize the number of external .so libraries included in the package, we only bundled libetcd-cpp-api.so. The reason for including only libetcd-cpp-api.so is that, based on my tests (on Ubuntu 22.04 LTS), the correct versions of libgrpc.so.x, libgrpc++.so.x, and libprotobuf.so.x can be installed using the provided dependency.sh script. (Reference: https://github.com/kvcache-ai/Mooncake/pull/177#issuecomment-2761236212) Therefore, we only need to ensure that the compiled libetcd-cpp-api.so correctly locates its dependencies. One thing I overlooked is that I forgot to add a RUNPATH to mooncake_master, which caused you to have to manually export LD_LIBRARY_PATH. This might need to be fixed, but since we're now planning to remove etcd, it seems there's no longer a need to fix the missing RUNPATH. The newly released packages should no longer depend on libgrpc++.so.1.
Author
Owner

@maobaolong commented on GitHub (Apr 1, 2025):

@xhyf77 Thanks for your reply, it is detailed and helped. But the requirement still exist, which is that we have to install mooncake vllm adapter into vllm container, but i have to copy mooncake source into vllm container and it hard to run dependency.sh successfully since vllm container and mooncake dev container are different, I can build mooncake successfully in the mooncake dev container, but cannot build successfully in vllm container.

So is there a solution to help to make it easy to install mooncake vllm adapter into an existing vllm container ?

<!-- gh-comment-id:2767995187 --> @maobaolong commented on GitHub (Apr 1, 2025): @xhyf77 Thanks for your reply, it is detailed and helped. But the requirement still exist, which is that we have to install `mooncake vllm adapter` into `vllm` container, but i have to copy `mooncake source` into vllm container and it hard to run `dependency.sh` successfully since `vllm container and mooncake dev container are different`, I can build `mooncake` successfully in the `mooncake dev container`, but cannot build successfully in `vllm container`. So is there a solution to help to make it easy to install `mooncake vllm adapter` into an existing vllm container ?
Author
Owner

@alogfans commented on GitHub (Apr 10, 2025):

We are preparing to include all referenced dynamic libraries in the whl package. To work around the problem you can install all dependencies by using bash dependencies.sh in prior. See #222 in detail.

<!-- gh-comment-id:2791642256 --> @alogfans commented on GitHub (Apr 10, 2025): We are preparing to include all referenced dynamic libraries in the whl package. To work around the problem you can install all dependencies by using `bash dependencies.sh` in prior. See #222 in detail.
Author
Owner

@alogfans commented on GitHub (Apr 14, 2025):

Our latest distribution of Mooncake Python library has fixed this problem. Close this issue.

<!-- gh-comment-id:2800513087 --> @alogfans commented on GitHub (Apr 14, 2025): Our latest distribution of Mooncake Python library has fixed this problem. Close this issue.
Author
Owner

@maobaolong commented on GitHub (Apr 14, 2025):

@alogfans Thanks for your help. It make mooncake can be integrated more and more easily.

<!-- gh-comment-id:2800777815 --> @maobaolong commented on GitHub (Apr 14, 2025): @alogfans Thanks for your help. It make mooncake can be integrated more and more easily.
Author
Owner

@maobaolong commented on GitHub (Apr 14, 2025):

pip install mooncake-transfer-engine
Collecting mooncake-transfer-engine
  Downloading mooncake_transfer_engine-0.3.0b3.tar.gz (19.9 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.9/19.9 MB 24.9 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Discarding https://files.pythonhosted.org/packages/20/0d/61ab67c63062f20312435ae7dc05724969a5d194a9b8b0c9cc71c68a6106/mooncake_transfer_engine-0.3.0b3.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/20/0d/61ab67c63062f20312435ae7dc05724969a5d194a9b8b0c9cc71c68a6106/mooncake_transfer_engine-0.3.0b3.tar.gz has inconsistent version: expected '0.3.0b3', but metadata has '0.1.0'
  Downloading mooncake_transfer_engine-0.3.0b1.tar.gz (19.5 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.5/19.5 MB 16.7 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Discarding https://files.pythonhosted.org/packages/cd/24/d22de6bf1c123d1515f222a9b324fdd680696f3708209c78a820d97094e7/mooncake_transfer_engine-0.3.0b1.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/cd/24/d22de6bf1c123d1515f222a9b324fdd680696f3708209c78a820d97094e7/mooncake_transfer_engine-0.3.0b1.tar.gz has inconsistent version: expected '0.3.0b1', but metadata has '0.1.0'
  Downloading mooncake_transfer_engine-0.3.0b0.tar.gz (19.5 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.5/19.5 MB 17.1 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Discarding https://files.pythonhosted.org/packages/c5/58/7a20f5e1b5eb09bb77e6436893e300d716da1830162609c986da9a633fba/mooncake_transfer_engine-0.3.0b0.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/c5/58/7a20f5e1b5eb09bb77e6436893e300d716da1830162609c986da9a633fba/mooncake_transfer_engine-0.3.0b0.tar.gz has inconsistent version: expected '0.3.0b0', but metadata has '0.1.0'
  Downloading mooncake_transfer_engine-0.3.0a0.tar.gz (10.8 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.8/10.8 MB 13.3 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Discarding https://files.pythonhosted.org/packages/b7/62/a216b84c445d9be0ce5c88ad5b3fbe5c3a75ae71170e41ff74918d3b83e3/mooncake_transfer_engine-0.3.0a0.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/b7/62/a216b84c445d9be0ce5c88ad5b3fbe5c3a75ae71170e41ff74918d3b83e3/mooncake_transfer_engine-0.3.0a0.tar.gz has inconsistent version: expected '0.3.0a0', but metadata has '0.1.0'
ERROR: Could not find a version that satisfies the requirement mooncake-transfer-engine (from versions: 0.3.0a0, 0.3.0b0, 0.3.0b1, 0.3.0b3)
ERROR: No matching distribution found for mooncake-transfer-engine

Is there something wrong with me? @alogfans

<!-- gh-comment-id:2801738495 --> @maobaolong commented on GitHub (Apr 14, 2025): ``` pip install mooncake-transfer-engine Collecting mooncake-transfer-engine Downloading mooncake_transfer_engine-0.3.0b3.tar.gz (19.9 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.9/19.9 MB 24.9 MB/s eta 0:00:00 Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Discarding https://files.pythonhosted.org/packages/20/0d/61ab67c63062f20312435ae7dc05724969a5d194a9b8b0c9cc71c68a6106/mooncake_transfer_engine-0.3.0b3.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/20/0d/61ab67c63062f20312435ae7dc05724969a5d194a9b8b0c9cc71c68a6106/mooncake_transfer_engine-0.3.0b3.tar.gz has inconsistent version: expected '0.3.0b3', but metadata has '0.1.0' Downloading mooncake_transfer_engine-0.3.0b1.tar.gz (19.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.5/19.5 MB 16.7 MB/s eta 0:00:00 Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Discarding https://files.pythonhosted.org/packages/cd/24/d22de6bf1c123d1515f222a9b324fdd680696f3708209c78a820d97094e7/mooncake_transfer_engine-0.3.0b1.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/cd/24/d22de6bf1c123d1515f222a9b324fdd680696f3708209c78a820d97094e7/mooncake_transfer_engine-0.3.0b1.tar.gz has inconsistent version: expected '0.3.0b1', but metadata has '0.1.0' Downloading mooncake_transfer_engine-0.3.0b0.tar.gz (19.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.5/19.5 MB 17.1 MB/s eta 0:00:00 Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Discarding https://files.pythonhosted.org/packages/c5/58/7a20f5e1b5eb09bb77e6436893e300d716da1830162609c986da9a633fba/mooncake_transfer_engine-0.3.0b0.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/c5/58/7a20f5e1b5eb09bb77e6436893e300d716da1830162609c986da9a633fba/mooncake_transfer_engine-0.3.0b0.tar.gz has inconsistent version: expected '0.3.0b0', but metadata has '0.1.0' Downloading mooncake_transfer_engine-0.3.0a0.tar.gz (10.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.8/10.8 MB 13.3 MB/s eta 0:00:00 Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Discarding https://files.pythonhosted.org/packages/b7/62/a216b84c445d9be0ce5c88ad5b3fbe5c3a75ae71170e41ff74918d3b83e3/mooncake_transfer_engine-0.3.0a0.tar.gz (from https://pypi.org/simple/mooncake-transfer-engine/) (requires-python:>=3.10): Requested mooncake-transfer-engine from https://files.pythonhosted.org/packages/b7/62/a216b84c445d9be0ce5c88ad5b3fbe5c3a75ae71170e41ff74918d3b83e3/mooncake_transfer_engine-0.3.0a0.tar.gz has inconsistent version: expected '0.3.0a0', but metadata has '0.1.0' ERROR: Could not find a version that satisfies the requirement mooncake-transfer-engine (from versions: 0.3.0a0, 0.3.0b0, 0.3.0b1, 0.3.0b3) ERROR: No matching distribution found for mooncake-transfer-engine ``` Is there something wrong with me? @alogfans
Author
Owner

@ShangmingCai commented on GitHub (Apr 14, 2025):

Can you tell me what your os version is? We only support Ubuntu currently.

<!-- gh-comment-id:2801825584 --> @ShangmingCai commented on GitHub (Apr 14, 2025): Can you tell me what your os version is? We only support Ubuntu currently.
Author
Owner

@maobaolong commented on GitHub (Apr 14, 2025):

I install it within vllm container which is Ubuntu

<!-- gh-comment-id:2801852867 --> @maobaolong commented on GitHub (Apr 14, 2025): I install it within vllm container which is Ubuntu
Author
Owner

@ShangmingCai commented on GitHub (Apr 14, 2025):

@xiaguan Can you check whether this is caused by (requires-python:>=3.10) or mooncake_transfer_engine-0.3.0b3.tar.gz has inconsistent version: expected '0.3.0b3', but metadata has '0.1.0'?

<!-- gh-comment-id:2801945433 --> @ShangmingCai commented on GitHub (Apr 14, 2025): @xiaguan Can you check whether this is caused by ` (requires-python:>=3.10)` or `mooncake_transfer_engine-0.3.0b3.tar.gz has inconsistent version: expected '0.3.0b3', but metadata has '0.1.0'`?
Author
Owner

@xiaguan commented on GitHub (Apr 14, 2025):

The metadata from the package downloaded and extracted from PyPI just now is as follows:

╰─ cat mooncake_transfer_engine-0.3.0b3.dist-info/METADATA
Metadata-Version: 2.4
Name: mooncake-transfer-engine
Version: 0.3.0b3
Summary: Python binding of a Mooncake library using pybind11
Home-page: https://github.com/kvcache-ai/Mooncake
Author: Mooncake Authors
Project-URL: Documentation, https://github.com/kvcache-ai/Mooncake/tree/main/doc
Project-URL: Source, https://github.com/kvcache-ai/Mooncake
Project-URL: Issues, https://github.com/kvcache-ai/Mooncake/issues
Keywords: mooncake, data transfer, kv cache, llm inference
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: C++
Classifier: Operating System :: POSIX :: Linux
Classifier: License :: OSI Approved :: Apache Software License
Requires-Python: >=3.10
Dynamic: author
Dynamic: classifier
Dynamic: home-page
Dynamic: keywords
Dynamic: project-url
Dynamic: requires-python
Dynamic: summary

The metadata appears to be valid and complete.

Could you please share your Python and lib versions?

python --version
ldd --version
<!-- gh-comment-id:2801980610 --> @xiaguan commented on GitHub (Apr 14, 2025): The metadata from the package downloaded and extracted from PyPI just now is as follows: ``` ╰─ cat mooncake_transfer_engine-0.3.0b3.dist-info/METADATA Metadata-Version: 2.4 Name: mooncake-transfer-engine Version: 0.3.0b3 Summary: Python binding of a Mooncake library using pybind11 Home-page: https://github.com/kvcache-ai/Mooncake Author: Mooncake Authors Project-URL: Documentation, https://github.com/kvcache-ai/Mooncake/tree/main/doc Project-URL: Source, https://github.com/kvcache-ai/Mooncake Project-URL: Issues, https://github.com/kvcache-ai/Mooncake/issues Keywords: mooncake, data transfer, kv cache, llm inference Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: C++ Classifier: Operating System :: POSIX :: Linux Classifier: License :: OSI Approved :: Apache Software License Requires-Python: >=3.10 Dynamic: author Dynamic: classifier Dynamic: home-page Dynamic: keywords Dynamic: project-url Dynamic: requires-python Dynamic: summary ``` The metadata appears to be valid and complete. Could you please share your Python and lib versions? ``` python --version ldd --version ```
Author
Owner

@maobaolong commented on GitHub (Apr 14, 2025):

@xiaguan Thanks for your help. The following is my env, basically, it is a vllm container, you can verify it from vllm image

root@TENCENT64:/vllm-workspace# python3 --version
Python 3.12.9
root@TENCENT64:/vllm-workspace# ldd --version
ldd (Ubuntu GLIBC 2.35-0ubuntu3.8) 2.35
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
<!-- gh-comment-id:2802002924 --> @maobaolong commented on GitHub (Apr 14, 2025): @xiaguan Thanks for your help. The following is my env, basically, it is a vllm container, you can verify it from vllm image ```Console root@TENCENT64:/vllm-workspace# python3 --version Python 3.12.9 root@TENCENT64:/vllm-workspace# ldd --version ldd (Ubuntu GLIBC 2.35-0ubuntu3.8) 2.35 Copyright (C) 2022 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Roland McGrath and Ulrich Drepper. ```
Author
Owner

@ShangmingCai commented on GitHub (Apr 14, 2025):

@xiaguan Thanks for your help. The following is my env, basically, it is a vllm container, you can verify it from vllm image

root@TENCENT64:/vllm-workspace# python3 --version
Python 3.12.9
root@TENCENT64:/vllm-workspace# ldd --version
ldd (Ubuntu GLIBC 2.35-0ubuntu3.8) 2.35
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

Thank you so much. We will test with vllm container tomorrow. We have verified that it fits with the sglang container, but haven't checked it with the vllm container yet. Currently, this is still a beta version for the sglang users, the official 0.3.0 release will definitely work well with both engines.

<!-- gh-comment-id:2802024431 --> @ShangmingCai commented on GitHub (Apr 14, 2025): > [@xiaguan](https://github.com/xiaguan) Thanks for your help. The following is my env, basically, it is a vllm container, you can verify it from vllm image > > root@TENCENT64:/vllm-workspace# python3 --version > Python 3.12.9 > root@TENCENT64:/vllm-workspace# ldd --version > ldd (Ubuntu GLIBC 2.35-0ubuntu3.8) 2.35 > Copyright (C) 2022 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. There is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. > Written by Roland McGrath and Ulrich Drepper. Thank you so much. We will test with vllm container tomorrow. We have verified that it fits with the sglang container, but haven't checked it with the vllm container yet. Currently, this is still a beta version for the sglang users, the official 0.3.0 release will definitely work well with both engines.
Author
Owner

@xiaguan commented on GitHub (Apr 14, 2025):

After testing, it appears that the issue is related to the Python version—there seem to be some problems with installing version 3.12. The issue will be addressed and resolved tomorrow. Thank you for reporting it.

<!-- gh-comment-id:2802049576 --> @xiaguan commented on GitHub (Apr 14, 2025): After testing, it appears that the issue is related to the Python version—there seem to be some problems with installing version 3.12. The issue will be addressed and resolved tomorrow. Thank you for reporting it.
Author
Owner

@maobaolong commented on GitHub (Apr 14, 2025):

@ShangmingCai @xiaguan Admire your efficiency 🫡

<!-- gh-comment-id:2802193230 --> @maobaolong commented on GitHub (Apr 14, 2025): @ShangmingCai @xiaguan Admire your efficiency 🫡
Author
Owner

@maobaolong commented on GitHub (Apr 16, 2025):

@xiaguan Is there any update?

<!-- gh-comment-id:2808155636 --> @maobaolong commented on GitHub (Apr 16, 2025): @xiaguan Is there any update?
Author
Owner

@xiaguan commented on GitHub (Apr 16, 2025):

@xiaguan Is there any update?

fixed this issue in #249 yesterday

We are currently collecting several other patches for the next release. If you need an urgent fix for this issue, you can manually download the available py312 wheel package from: https://github.com/kvcache-ai/Mooncake/actions/runs/14463285244.

<!-- gh-comment-id:2808511469 --> @xiaguan commented on GitHub (Apr 16, 2025): > [@xiaguan](https://github.com/xiaguan) Is there any update? fixed this issue in #249 yesterday We are currently collecting several other patches for the next release. If you need an urgent fix for this issue, you can manually download the available py312 wheel package from: https://github.com/kvcache-ai/Mooncake/actions/runs/14463285244.
Author
Owner

@maobaolong commented on GitHub (Apr 16, 2025):

@xiaguan I use ldd to check that all the dependencies are existed.

<!-- gh-comment-id:2809191007 --> @maobaolong commented on GitHub (Apr 16, 2025): @xiaguan I use ldd to check that all the dependencies are existed.
Author
Owner

@xiaguan commented on GitHub (Apr 16, 2025):

@maobaolong https://pypi.org/project/mooncake-transfer-engine/, released new version

<!-- gh-comment-id:2809292050 --> @xiaguan commented on GitHub (Apr 16, 2025): @maobaolong https://pypi.org/project/mooncake-transfer-engine/, released new version
Author
Owner

@maobaolong commented on GitHub (Apr 16, 2025):

@xiaguan Great job, it works.

root@TENCENT64:/vllm-workspace# ldd  /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_vllm_adaptor.so 
        linux-vdso.so.1 (0x00007ffff7fc1000)
        libglog-c040a6f3.so.0.4.0 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libglog-c040a6f3.so.0.4.0 (0x00007ffff7c86000)
        libetcd_wrapper-a553d0a3.so => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libetcd_wrapper-a553d0a3.so (0x00007ffff6e3c000)
        libcurl.so.4 => /usr/lib/x86_64-linux-gnu/libcurl.so.4 (0x00007ffff6d8d000)
        libibverbs.so.1 => /usr/lib/x86_64-linux-gnu/libibverbs.so.1 (0x00007ffff6d6a000)
        libjsoncpp-7d699962.so.1.9.5 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libjsoncpp-7d699962.so.1.9.5 (0x00007ffff6d2d000)
        libnuma.so.1 => /usr/lib/x86_64-linux-gnu/libnuma.so.1 (0x00007ffff6d20000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007ffff6af4000)
        libgcc_s.so.1 => /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ffff6ad4000)
        libc.so.6 => /usr/lib/x86_64-linux-gnu/libc.so.6 (0x00007ffff68ab000)
        /lib64/ld-linux-x86-64.so.2 (0x00007ffff7fc3000)
        libunwind-5d1f6f10.so.8.0.1 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libunwind-5d1f6f10.so.8.0.1 (0x00007ffff688f000)
        libgflags-f3c7dc50.so.2.2.2 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libgflags-f3c7dc50.so.2.2.2 (0x00007ffff6861000)
        libnghttp2.so.14 => /usr/lib/x86_64-linux-gnu/libnghttp2.so.14 (0x00007ffff6837000)
        libidn2.so.0 => /usr/lib/x86_64-linux-gnu/libidn2.so.0 (0x00007ffff6816000)
        librtmp.so.1 => /usr/lib/x86_64-linux-gnu/librtmp.so.1 (0x00007ffff67f7000)
        libssh.so.4 => /usr/lib/x86_64-linux-gnu/libssh.so.4 (0x00007ffff678a000)
        libpsl.so.5 => /usr/lib/x86_64-linux-gnu/libpsl.so.5 (0x00007ffff6776000)
        libssl.so.3 => /usr/lib/x86_64-linux-gnu/libssl.so.3 (0x00007ffff66d0000)
        libcrypto.so.3 => /usr/lib/x86_64-linux-gnu/libcrypto.so.3 (0x00007ffff628c000)
        libgssapi_krb5.so.2 => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007ffff6238000)
        libldap-2.5.so.0 => /usr/lib/x86_64-linux-gnu/libldap-2.5.so.0 (0x00007ffff61d9000)
        liblber-2.5.so.0 => /usr/lib/x86_64-linux-gnu/liblber-2.5.so.0 (0x00007ffff61c8000)
        libzstd.so.1 => /usr/lib/x86_64-linux-gnu/libzstd.so.1 (0x00007ffff60f9000)
        libbrotlidec.so.1 => /usr/lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007ffff60e9000)
        libz.so.1 => /usr/lib/x86_64-linux-gnu/libz.so.1 (0x00007ffff60cd000)
        libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007ffff604a000)
        libnl-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007ffff6027000)
        libm.so.6 => /usr/lib/x86_64-linux-gnu/libm.so.6 (0x00007ffff5f40000)
        liblzma.so.5 => /usr/lib/x86_64-linux-gnu/liblzma.so.5 (0x00007ffff5f13000)
        libpthread.so.0 => /usr/lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ffff5f0e000)
        libunistring.so.2 => /usr/lib/x86_64-linux-gnu/libunistring.so.2 (0x00007ffff5d64000)
        libgnutls.so.30 => /usr/lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007ffff5b79000)
        libhogweed.so.6 => /usr/lib/x86_64-linux-gnu/libhogweed.so.6 (0x00007ffff5b31000)
        libnettle.so.8 => /usr/lib/x86_64-linux-gnu/libnettle.so.8 (0x00007ffff5aeb000)
        libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007ffff5a67000)
        libkrb5.so.3 => /usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007ffff599c000)
        libk5crypto.so.3 => /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007ffff596d000)
        libcom_err.so.2 => /usr/lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007ffff5967000)
        libkrb5support.so.0 => /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007ffff5959000)
        libsasl2.so.2 => /usr/lib/x86_64-linux-gnu/libsasl2.so.2 (0x00007ffff593c000)
        libbrotlicommon.so.1 => /usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007ffff5919000)
        libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007ffff57de000)
        libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007ffff57c6000)
        libkeyutils.so.1 => /usr/lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007ffff57bf000)
        libresolv.so.2 => /usr/lib/x86_64-linux-gnu/libresolv.so.2 (0x00007ffff57a9000)
        libffi.so.8 => /usr/lib/x86_64-linux-gnu/libffi.so.8 (0x00007ffff579c000)

root@TENCENT64:/vllm-workspace#  /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master 
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0416 21:19:18.357553   690 master.cpp:27] Master service started on port 50051, enable_gc=0, max_threads=4

root@TENCENT64:/vllm-workspace# python3 -c "from mooncake.store import MooncakeDistributedStore"
<!-- gh-comment-id:2809580649 --> @maobaolong commented on GitHub (Apr 16, 2025): @xiaguan Great job, it works. ``` root@TENCENT64:/vllm-workspace# ldd /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_vllm_adaptor.so linux-vdso.so.1 (0x00007ffff7fc1000) libglog-c040a6f3.so.0.4.0 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libglog-c040a6f3.so.0.4.0 (0x00007ffff7c86000) libetcd_wrapper-a553d0a3.so => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libetcd_wrapper-a553d0a3.so (0x00007ffff6e3c000) libcurl.so.4 => /usr/lib/x86_64-linux-gnu/libcurl.so.4 (0x00007ffff6d8d000) libibverbs.so.1 => /usr/lib/x86_64-linux-gnu/libibverbs.so.1 (0x00007ffff6d6a000) libjsoncpp-7d699962.so.1.9.5 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libjsoncpp-7d699962.so.1.9.5 (0x00007ffff6d2d000) libnuma.so.1 => /usr/lib/x86_64-linux-gnu/libnuma.so.1 (0x00007ffff6d20000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007ffff6af4000) libgcc_s.so.1 => /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ffff6ad4000) libc.so.6 => /usr/lib/x86_64-linux-gnu/libc.so.6 (0x00007ffff68ab000) /lib64/ld-linux-x86-64.so.2 (0x00007ffff7fc3000) libunwind-5d1f6f10.so.8.0.1 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libunwind-5d1f6f10.so.8.0.1 (0x00007ffff688f000) libgflags-f3c7dc50.so.2.2.2 => /usr/local/lib/python3.12/dist-packages/mooncake/../mooncake_transfer_engine.libs/libgflags-f3c7dc50.so.2.2.2 (0x00007ffff6861000) libnghttp2.so.14 => /usr/lib/x86_64-linux-gnu/libnghttp2.so.14 (0x00007ffff6837000) libidn2.so.0 => /usr/lib/x86_64-linux-gnu/libidn2.so.0 (0x00007ffff6816000) librtmp.so.1 => /usr/lib/x86_64-linux-gnu/librtmp.so.1 (0x00007ffff67f7000) libssh.so.4 => /usr/lib/x86_64-linux-gnu/libssh.so.4 (0x00007ffff678a000) libpsl.so.5 => /usr/lib/x86_64-linux-gnu/libpsl.so.5 (0x00007ffff6776000) libssl.so.3 => /usr/lib/x86_64-linux-gnu/libssl.so.3 (0x00007ffff66d0000) libcrypto.so.3 => /usr/lib/x86_64-linux-gnu/libcrypto.so.3 (0x00007ffff628c000) libgssapi_krb5.so.2 => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007ffff6238000) libldap-2.5.so.0 => /usr/lib/x86_64-linux-gnu/libldap-2.5.so.0 (0x00007ffff61d9000) liblber-2.5.so.0 => /usr/lib/x86_64-linux-gnu/liblber-2.5.so.0 (0x00007ffff61c8000) libzstd.so.1 => /usr/lib/x86_64-linux-gnu/libzstd.so.1 (0x00007ffff60f9000) libbrotlidec.so.1 => /usr/lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007ffff60e9000) libz.so.1 => /usr/lib/x86_64-linux-gnu/libz.so.1 (0x00007ffff60cd000) libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007ffff604a000) libnl-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007ffff6027000) libm.so.6 => /usr/lib/x86_64-linux-gnu/libm.so.6 (0x00007ffff5f40000) liblzma.so.5 => /usr/lib/x86_64-linux-gnu/liblzma.so.5 (0x00007ffff5f13000) libpthread.so.0 => /usr/lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ffff5f0e000) libunistring.so.2 => /usr/lib/x86_64-linux-gnu/libunistring.so.2 (0x00007ffff5d64000) libgnutls.so.30 => /usr/lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007ffff5b79000) libhogweed.so.6 => /usr/lib/x86_64-linux-gnu/libhogweed.so.6 (0x00007ffff5b31000) libnettle.so.8 => /usr/lib/x86_64-linux-gnu/libnettle.so.8 (0x00007ffff5aeb000) libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007ffff5a67000) libkrb5.so.3 => /usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007ffff599c000) libk5crypto.so.3 => /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007ffff596d000) libcom_err.so.2 => /usr/lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007ffff5967000) libkrb5support.so.0 => /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007ffff5959000) libsasl2.so.2 => /usr/lib/x86_64-linux-gnu/libsasl2.so.2 (0x00007ffff593c000) libbrotlicommon.so.1 => /usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007ffff5919000) libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007ffff57de000) libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007ffff57c6000) libkeyutils.so.1 => /usr/lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007ffff57bf000) libresolv.so.2 => /usr/lib/x86_64-linux-gnu/libresolv.so.2 (0x00007ffff57a9000) libffi.so.8 => /usr/lib/x86_64-linux-gnu/libffi.so.8 (0x00007ffff579c000) root@TENCENT64:/vllm-workspace# /usr/local/lib/python3.12/dist-packages/mooncake/mooncake_master WARNING: Logging before InitGoogleLogging() is written to STDERR I0416 21:19:18.357553 690 master.cpp:27] Master service started on port 50051, enable_gc=0, max_threads=4 root@TENCENT64:/vllm-workspace# python3 -c "from mooncake.store import MooncakeDistributedStore" ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kvcache-ai/Mooncake#89
No description provided.