sgl-deep-ep
sgl-deep-ep is SGLang's binary distribution of
DeepEP. The distribution name is
sgl-deep-ep, while the Python import remains compatible with DeepEP:
import deep_ep
Installation
The PyPI package targets CUDA 13 and installs with:
pip install sgl-deep-ep
CUDA 12.9 wheels are published separately in the
SGLang wheel repository. Install the
matching PyTorch CUDA 12.9 build first, then install the wheel from the cu129
index or release URL.
Each wheel is specific to a CPython version, CPU architecture, and CUDA major.
The package checks these constraints when deep_ep is imported.
Host prerequisites
The wheel contains DeepEP's Python code and CUDA extension. It does not and cannot provision the host kernel or RDMA stack. Every host must provide:
- a compatible NVIDIA driver and CUDA runtime;
- the RDMA/NVLink environment required by the selected DeepEP transport.
At import time, the package checks the supported platform, PyTorch and CUDA
versions, and CUDA driver/device availability. Failures raise an actionable
ImportError. Transport-specific prerequisites are validated when DeepEP
initializes the selected transport.
CUDA 13 wheels use DeepEP v2 and its NCCL Gin transport. Release and runtime
images pin nvidia-nccl-cu13==2.30.7; this path does not require GDRCopy or a
/dev/gdrdrv device. NVSHMEM remains a build and runtime dependency because the
current v2 extension still links the legacy DeepEP methods.
Wheel release workflow
Wheels are built and published by SGLang's
Release sgl-deep-ep workflow.
Before starting a release, merge the required implementation changes into the
matching implementation branch and merge the packaging overlay into
sgl-deepep-packaging:
- CUDA 13, x86_64 and aarch64:
sgl-deepep(DeepEP v2)
Run the workflow manually with:
version: the public package version, without a leadingv;target:all;packaging-ref: the packaging overlay branch, tag, or commit (normallysgl-deepep-packaging).
For each selected CUDA target, the workflow uploads CUDA-tagged wheels to the cu130 index in
sgl-project/whl. CUDA 13.0 wheels are also
published to PyPI as sgl-deep-ep, without a CUDA suffix in the package name.
Publishing requires the GH_PAT_FOR_WHL_RELEASE and
SGL_DEEP_EP_PYPI_TOKEN repository secrets.
After the workflow completes, check that every expected Python and architecture
artifact was published, install the appropriate wheel in a clean environment,
and verify both import deep_ep and a multi-GPU DeepEP or SGLang workload.
Metadata
Release files for sgl-deep-ep 0.1.2.post1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 122.7 MB
Release files / sgl_deep_ep-0.1.2.post1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 15.4 MB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
023ee327596eb42b78dbbfd6bfdb34a742a9716a461bad415389bac4a14e947f
|
|
BLAKE2b-256 checksum How to use checksums |
f6f22378301448427a78a4a3b95acc0e56050b707c9a7eec8ca61f5ef8f0361b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / sgl_deep_ep-0.1.2.post1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 15.3 MB |
| Tags | CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
c81201b8cf57cc1e09af0f5a774ddac6b1499a30c38f3214f879ce5e45ce33c1
|
|
BLAKE2b-256 checksum How to use checksums |
6d9e8ec4d71986e2a5f14bfddb82df5edb55c93ebbe996d9498a1bde966b5262
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / sgl_deep_ep-0.1.2.post1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 15.4 MB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
5a74035e73b503e8a53c5a225a478309c8f837f7bc3fe24d8157afb83bc6a215
|
|
BLAKE2b-256 checksum How to use checksums |
e32cc8fe2f21bb589d65ee41cc8ca46ef2568f65b251470b006e47fe54e9ac4c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / sgl_deep_ep-0.1.2.post1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 15.3 MB |
| Tags | CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
091e06f5ed07b1224e70bd60a35163a7651591baa3977b10265abd632f0d7887
|
|
BLAKE2b-256 checksum How to use checksums |
77142d96f398a30ce2d12d552e0e8e0f60cb99c89f508d5b189a03a4508bff8f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / sgl_deep_ep-0.1.2.post1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 15.4 MB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
fb8f222a7a1c18289dec23a51d4c041c659eaa7612df086585c7db6e19b00bee
|
|
BLAKE2b-256 checksum How to use checksums |
7294e73568a31f901099f7fbec80c8c248cf360029525036155e6e68b5f5e9b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / sgl_deep_ep-0.1.2.post1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 15.3 MB |
| Tags | CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
78550ba9f89156974d1e4e4bd13c32713ec1032d4983ec840bed7754abfb2ab0
|
|
BLAKE2b-256 checksum How to use checksums |
aa2444f96ec7c805349526b22ab69139c03647e84c1eeafd694d109d14226f0b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / sgl_deep_ep-0.1.2.post1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 15.4 MB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
3cd303bbf306cb8168d73cf1d01d53831efc566d459974112980c9f639ce21ba
|
|
BLAKE2b-256 checksum How to use checksums |
6de33c6a11b8e0dabb971e5296a14809bf6715b3a17322672c008219a77c984e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / sgl_deep_ep-0.1.2.post1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | sgl_deep_ep-0.1.2.post1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 15.2 MB |
| Tags | CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
0688ff90ec3636b39c66c6294da6d28a4aea936c465597897bd96e29a36f3d35
|
|
BLAKE2b-256 checksum How to use checksums |
f4a8b4e4a43df28dcfdc9be3f3128b188f6a8e18befb7ee31e8a5547b4e27b20
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|