mirror of
https://github.com/kvcache-ai/Mooncake.git
synced 2026-11-05 01:17:55 +00:00
[GH-ISSUE #2586] [Installation]: Build release wheels in the PyTorch manylinux image instead of ubuntu-22.04 #680
Labels
No labels
ascend
auto-closed
bug
bug
CI/Build
Common
documentation
enhancement
feature request
good first issue
help wanted
high priority
MetaX
nightly-failure
pull-request
PyTorch Backend
question
RFC
Roadmap
stale
Store
Tests
Transfer Engine
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kvcache-ai/Mooncake#680
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @mgoin on GitHub (Jun 23, 2026).
Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/2586
Issue
The release wheels are built on a plain
ubuntu-22.04runner (release.yaml,release-cuda13.yaml,pre-release.yaml, etc.). I'd like to build them inside the PyTorch manylinux images instead, the way PyTorch and vLLM build their wheels for broad system support.Background
Building on ubuntu-22.04 ties the wheels to that environment in two ways:
glibc floor of 2.35.
build_wheel.shtags the wheel from the runner's glibc, so it comes outmanylinux_2_35. That leaves out RHEL/Rocky/Alma 9 (glibc 2.34), the RHEL 8 family (2.28), Ubuntu 20.04 (2.31), and a lot of HPC images.The toolchain's libstdc++ leaks in. ubuntu-22.04 ships GCC 12, so the binaries require
GLIBCXX_3.4.30. glibc and libstdc++ are versioned separately, so a host can satisfy themanylinux_2_35floor and still fail to load:import mooncake.storefails the same way. #2585 statically links the C++ runtime to stop that leak, but the wheel still carries the 2.35 floor.Proposal
Build in
pytorch/manylinux2_28-builder(AlmaLinux 8, glibc 2.28) — the standard image for CUDA Python wheels::cuda12.8and:cuda13.0tags cover both CUDA lines; matching aarch64 images exist for ARM.Jimver/cuda-toolkitstep goes away./opt/python/cp${XY}-cp${XY}/, anddependencies.shalready has ayumpath for AlmaLinux.build_wheel.shalready runsauditwheel repair; on a 2.28 base it just tagsmanylinux_2_28.vLLM did exactly this with its
BUILD_OS=manylinuxbuild base (pytorch/manylinux2_28-builder:cuda13.0) to get a glibc 2.28 floor that matches PyTorch's own wheels - seevllm/docker/Dockerfileand https://github.com/vllm-project/vllm/pull/41416.Before submitting a new issue...
@github-actions[bot] commented on GitHub (Jun 23, 2026):
Thanks for opening this issue, @mgoin!
3195154A maintainer will triage this when possible. To help us respond faster, please include:
Useful links: Documentation · Contributing guide
@Aionw commented on GitHub (Jun 24, 2026):
Thanks for reporting this. Are you interested in submitting a PR? If not, i can take care of it.
@mgoin commented on GitHub (Jun 24, 2026):
I can work on a PR to demonstrate! Thanks
@mgoin commented on GitHub (Jun 25, 2026):
https://github.com/kvcache-ai/Mooncake/pull/2605
@github-actions[bot] commented on GitHub (Sep 24, 2026):
This issue has had no activity for 90 days and will be closed in 7 days if there is no further activity. Please comment or react if it should stay open.
@github-actions[bot] commented on GitHub (Oct 1, 2026):
Closing due to 3 months of inactivity. If this is still relevant, please comment and we can reopen.