Skip to main content

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.

CUDA 12.9 wheels use the legacy NVSHMEM transport. Their low-latency and internode paths require an IBGDA-capable host, provided either by NVIDIA driver configuration or by GDRCopy (libgdrapi.so plus a usable /dev/gdrdrv). See the NVSHMEM setup guide for both supported configurations.

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);
  • CUDA 12.9, x86_64: sgl-deepep-cu12-x86;
  • CUDA 12.9, aarch64: sgl-deepep-cu12-arm.

Run the workflow manually with:

  • version: the public package version, without a leading v;
  • target: cu129, cu130, or all;
  • packaging-ref: the packaging overlay branch, tag, or commit (normally sgl-deepep-packaging).

The CUDA 12.9 matrix builds CPython 3.10 and 3.12 wheels. The CUDA 13.0 matrix builds CPython 3.10, 3.11, 3.12, and 3.13 wheels. Both matrices build for x86_64 and aarch64.

For each selected CUDA target, the workflow uploads CUDA-tagged wheels to the corresponding cu129 or 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.

Release files for sgl-deep-ep 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for sgl-deep-ep 0.1.1
File
sgl_deep_ep-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
sgl_deep_ep-0.1.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
sgl_deep_ep-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
sgl_deep_ep-0.1.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
sgl_deep_ep-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
sgl_deep_ep-0.1.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
sgl_deep_ep-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
sgl_deep_ep-0.1.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details

Total release size: 132.3 MB

Release files / sgl_deep_ep-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL sgl_deep_ep-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 16.6 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
b103e7fe3b3f68470600502dbac3c1060575ef53f441890ff1fd54e728043093
BLAKE2b-256 checksum
How to use checksums
4978a72edcf426e6085ec8b4cce711168629f11a1d7e95b91e436e0c0944129e
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.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL sgl_deep_ep-0.1.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 16.5 MB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e7a565a4922129778d51649961b4626575604275f34a7ef9cf0406332cd98359
BLAKE2b-256 checksum
How to use checksums
255cd0446ae2f1ee7d5223069147a6a3bc0c1444cb61e31d3619ab533cfdbb23
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.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL sgl_deep_ep-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 16.6 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c38c37145cec25eb10e220988f7dc1447e2541a155a134a5af4ff773ba522985
BLAKE2b-256 checksum
How to use checksums
cf58827e42de71a8f371ba27df14f3cbfeb906465ff96e45a02865d272434dab
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.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL sgl_deep_ep-0.1.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 16.5 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
5ed81a7b350f6607c5313c1b20641443d83534cbb341b87df4184235280ce98a
BLAKE2b-256 checksum
How to use checksums
6165f961f6166e418d27c1d24e587ccd4d1a68951a4b87b982fdb2d14d589158
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.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL sgl_deep_ep-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 16.6 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6b8617b5cf2d5cceea21a533666204fbc33843c964d4248f7e7428570ecc0589
BLAKE2b-256 checksum
How to use checksums
51b47126c9ef7a53affafa81b196a6d7bbf2bfe5e77f0cddfda79066eedda40b
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.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL sgl_deep_ep-0.1.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 16.4 MB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
198a6f493c27f5cc99ad4b669a0d50f1362ebe952b1cb44ffc23fcf561daf169
BLAKE2b-256 checksum
How to use checksums
26cbe122d2b4943b73dfe6a513f50443546f42e7442fa208ea15ac4d1d8db6b8
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.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL sgl_deep_ep-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 16.6 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
48d7b6f7bb29fa60e5c0883a431bec650fe234e6f48a318ebdc3137f3a2b05d7
BLAKE2b-256 checksum
How to use checksums
bdeb8b8fd55b7d7b8632106f9d864e19fd92aac92cf32fd33c8523a7a0977fa0
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.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL sgl_deep_ep-0.1.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 16.4 MB
Tags CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
818b5da47713394e7d8247c07380932fc461d637f824d7e9aa340008cfe584fb
BLAKE2b-256 checksum
How to use checksums
02d1a68eb51d6af25bf24c00dd017aa2ff172ed6808a3376c2c8380e38957fed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page