Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

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

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. 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. Implementation and packaging are maintained together on sgl-deepep. Before starting a release, merge both kinds of changes into that branch:

  • CUDA 13, x86_64 and aarch64: sgl-deepep (DeepEP v2)

Run the workflow manually with:

  • version: the public package version, without a leading v;
  • deepep-ref: the branch, tag, or commit containing both the implementation and sgl_deep_ep/ (normally sgl-deepep; use a commit for a reproducible release).

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.

Building from a checkout

Initialize the submodules and install the build dependencies, including the target CUDA PyTorch build, NCCL 2.30.7, NVSHMEM, ninja, setuptools, and wheel. The release container in SGLang's docker/sgl-deep-ep.Dockerfile provides these dependencies for manylinux builds. Then run:

git clone --recursive --branch sgl-deepep https://github.com/sgl-project/DeepEP.git
cd DeepEP
SGL_DEEP_EP_VERSION=0.1.3 bash sgl_deep_ep/build_sgl_deep_ep.sh dist 13.0 x86_64

The arguments are the output directory, CUDA version (13.0 or 13.4), and CPU architecture (x86_64 or aarch64). Use the CUDA version and architecture of the build environment. The script reads implementation and packaging from its own checkout, stages a temporary copy, and leaves the source unchanged. SGL_DEEP_EP_VERSION overrides sgl_deep_ep/VERSION; the wheel version includes the corresponding +cu130 or +cu134 suffix. PYTHON_BIN selects the build interpreter and MAX_JOBS controls parallelism.

This produces a native Linux wheel. The SGLang release build script applies auditwheel repair for manylinux and creates the public-version PyPI wheel. The CUDA 13.4 image also uses this entry point; the release workflow currently publishes CUDA 13.0 wheels only.

Metadata

Release files for sgl-deep-ep 0.1.3rc3

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.3rc3
File
sgl_deep_ep-0.1.3rc3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
sgl_deep_ep-0.1.3rc3-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.3rc3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
sgl_deep_ep-0.1.3rc3-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.3rc3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
sgl_deep_ep-0.1.3rc3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details

Total release size: 100.1 MB

Release files / sgl_deep_ep-0.1.3rc3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL sgl_deep_ep-0.1.3rc3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 16.8 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c09f47c0b6f24d9141a08898931de012cf5cac948d00c0999a9d8190fdcc74a9
BLAKE2b-256 checksum
How to use checksums
64c6454b943e7c27afe8a8f71650e4c4018cad5ff87951fd78c0b6e77dcccdb3
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.3rc3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL sgl_deep_ep-0.1.3rc3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 16.6 MB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
7d4e1081a6b5ed78e3960d07c48f774c88736ef125cd9c4f431c830a22fa6000
BLAKE2b-256 checksum
How to use checksums
9ccaccfa5fd6c860f29f3b9af5222836b35dd3b77532b70c2bb24f5a406a3521
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.3rc3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL sgl_deep_ep-0.1.3rc3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 16.8 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d5ea1960a220a8e526acb1eee9b20188bc47368971783210a6cbc758b7fc4fdb
BLAKE2b-256 checksum
How to use checksums
0eafffe22ae6ec6c1925ad6bcf35f24c568929d8a805cef2947e232a32fa0bf1
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.3rc3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL sgl_deep_ep-0.1.3rc3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 16.6 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
14099de689721d913d2d647c01a052baa41279f98708a3a26b23f058d88e2af6
BLAKE2b-256 checksum
How to use checksums
fdb79b1063c667a146eb2c80913ba1e7b21e1bc92ead0b1ed2efe6b43983e26f
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.3rc3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL sgl_deep_ep-0.1.3rc3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 16.8 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7470a95e87ef7697e0651e1dbee25e9065661be7de86ebb1d84bd0cf55daf827
BLAKE2b-256 checksum
How to use checksums
5769b4dd29f5d6080f6843bf74b369577e550674ed2c3eb5e4b6b5882a436e07
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.3rc3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL sgl_deep_ep-0.1.3rc3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 16.6 MB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
4c5fae7243d01727a194f976a13e3e6db5b2fd8deec30a080eb85ac6ae82031c
BLAKE2b-256 checksum
How to use checksums
fd1c4e2992b92be4ae6b618907439b569369b02c7f84eec60d62169b83152695
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