diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 65991dc3aaa7..12945ce54100 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -256,6 +256,36 @@ jobs: echo "All benchmark tests completed!" + sgl-kernel-b200-test: + needs: [check-changes, sgl-kernel-build-wheels] + if: needs.check-changes.outputs.sgl_kernel == 'true' + runs-on: 4-gpu-b200 + env: + RUNNER_LABELS: 4-gpu-b200 + steps: + - uses: actions/checkout@v4 + + - name: Cleanup + run: | + ls -alh sgl-kernel/dist || true + rm -rf sgl-kernel/dist/* || true + + - name: Download artifacts + uses: actions/download-artifact@v4 + with: + path: sgl-kernel/dist/ + merge-multiple: true + pattern: wheel-python3.10-cuda12.9 + + - name: Install dependencies + run: | + CUSTOM_BUILD_SGL_KERNEL=${{needs.check-changes.outputs.sgl_kernel}} IS_BLACKWELL=1 bash scripts/ci/ci_install_dependency.sh + + - name: Run sgl-kernel unit tests on B200 + timeout-minutes: 30 + run: | + cd sgl-kernel + pytest tests/ # Adding a single CUDA13 smoke test to verify that the kernel builds and runs # TODO: Add back this test when it can pass on CI # cuda13-kernel-smoke-test: @@ -931,6 +961,7 @@ jobs: sgl-kernel-unit-test, sgl-kernel-mla-test, sgl-kernel-benchmark-test, + sgl-kernel-b200-test, multimodal-gen-test, diff --git a/sgl-kernel/README.md b/sgl-kernel/README.md index dc5925a55bf5..829f980d4656 100644 --- a/sgl-kernel/README.md +++ b/sgl-kernel/README.md @@ -9,7 +9,7 @@ -SGL Kernel provides optimized compute primitives for the SGLang framework, enabling efficient inference for large language models and vision-language models through custom kernels for operations. +SGL Kernel provides optimized compute primitives for the SGLang framework, enabling efficient inference for large language models and vision-language models through custom kernel operations. ## Installation Requires torch == 2.8.0 diff --git a/sgl-kernel/tests/conftest.py b/sgl-kernel/tests/conftest.py index 6682bc0c9487..4aae7ffbbd09 100644 --- a/sgl-kernel/tests/conftest.py +++ b/sgl-kernel/tests/conftest.py @@ -2,7 +2,7 @@ import torch -# This ensures the torch defaults don't get left in modified states between +# This fixture ensures the torch defaults don't get left in modified states between # tests (e.g., when a test fails before restoring the original value), which # can cause subsequent tests to fail. @pytest.fixture(autouse=True)