[Kernel][Build] Bump DeepGEMM to the 26/09/30 release and adapt the sparse indexer (#61149)

Signed-off-by: Yongye Zhu <zyy1102000@gmail.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Yongye Zhu
2026-10-12 23:24:43 -07:00
committed by GitHub
co-authored by Claude Opus 5.5
parent 86b1c2ef15
commit a6009ea85b
23 changed files with 516 additions and 208 deletions
+2 -1
View File
@@ -35,8 +35,9 @@ env = os.environ.copy()
env.pop("DG_SKIP_CUDA_BUILD", None)
print(f"[build_deepgemm_C] building in {src} with {sys.executable}", flush=True)
# CMake decides when to rebuild; setuptools would only check python_api.cpp.
subprocess.check_call(
[sys.executable, "setup.py", "build_ext", "--inplace"],
[sys.executable, "setup.py", "build_ext", "--inplace", "--force"],
cwd=src,
env=env,
)
+9 -2
View File
@@ -4,10 +4,12 @@
"""Assert the vendored DeepGEMM package has the TORCH_LIBRARY binding layout.
Expects ``deep_gemm/_C.py`` plus a single ``_C_extension*.so`` (abi3) under
``vllm.third_party.deep_gemm``. Run after vLLM is installed, e.g. the H100
deepgemm kernel tests in .buildkite/test_areas/kernels.yaml.
``vllm.third_party.deep_gemm``, and that the package imports: vLLM treats an
import failure as DeepGEMM being absent. Run after vLLM is installed, e.g. the
H100 deepgemm kernel tests in .buildkite/test_areas/kernels.yaml.
"""
import importlib
import importlib.util
import sys
from pathlib import Path
@@ -38,6 +40,11 @@ def main() -> int:
if missing:
print(f"missing: {missing}", file=sys.stderr)
return 1
try:
importlib.import_module("vllm.third_party.deep_gemm")
except Exception as e:
print(f"vllm.third_party.deep_gemm failed to import: {e!r}", file=sys.stderr)
return 1
return 0
+4 -4
View File
@@ -7,10 +7,10 @@ set -e
# Default values
# Keep DEEPGEMM_GIT_REF in sync with cmake/external_projects/deepgemm.cmake
DEEPGEMM_GIT_REPO="https://github.com/vllm-project/DeepGEMM.git"
# NOTE: This targets the vLLM fork's dev branch, which carries the sm120
# and sm90 paged-MQA ports plus the SwiGLU alpha/beta and SiTU Mega MoE
# activations, plus the CUDA 12.x layout header fix from vllm-project/DeepGEMM#12.
DEEPGEMM_GIT_REF="1e1842a833699298f7afc02eefb2ed168fff6938"
# NOTE: This targets the vLLM fork's dev branch: upstream's 26/09/30 release
# plus the sm120 and sm90 paged-MQA ports, the SwiGLU alpha/beta and SiTU
# Mega MoE activations, and NVFP4 Mega MoE.
DEEPGEMM_GIT_REF="6ce1c5ec6627a6bf11dbcc698b0b1e19c9248432"
WHEEL_DIR=""
# Parse command line arguments