ci(xeon): merge 2 partitions into 1 job to reduce runner contention (#26904)

This commit is contained in:
MingxuZh
2026-06-03 09:46:27 +08:00
committed by GitHub
parent eda21f6839
commit b678448b8a
4 changed files with 13 additions and 5 deletions
+2 -5
View File
@@ -87,10 +87,7 @@ jobs:
include: include:
- runner: xeon-gnr - runner: xeon-gnr
suite: base-b-test-cpu suite: base-b-test-cpu
partition_args: "--auto-partition-id 0 --auto-partition-size 2" partition_args: ""
- runner: xeon-gnr
suite: base-b-test-cpu
partition_args: "--auto-partition-id 1 --auto-partition-size 2"
steps: steps:
- name: Cleanup workspace - name: Cleanup workspace
run: | run: |
@@ -132,7 +129,7 @@ jobs:
bash -c "source /opt/.venv/bin/activate && python3 -c 'import torch; import sgl_kernel; assert torch._C._cpu._is_amx_tile_supported(); assert hasattr(torch.ops.sgl_kernel, \"convert_weight_packed\"); '" bash -c "source /opt/.venv/bin/activate && python3 -c 'import torch; import sgl_kernel; assert torch._C._cpu._is_amx_tile_supported(); assert hasattr(torch.ops.sgl_kernel, \"convert_weight_packed\"); '"
- name: Run unit tests - name: Run unit tests
timeout-minutes: 60 timeout-minutes: 120
run: | run: |
docker exec -w /sglang-checkout/ ci_sglang_${{ matrix.runner }} \ docker exec -w /sglang-checkout/ ci_sglang_${{ matrix.runner }} \
bash -c "source /opt/.venv/bin/activate && cd ./test && python3 run_suite.py --hw cpu --suite ${{ matrix.suite }} ${{ matrix.partition_args }}" bash -c "source /opt/.venv/bin/activate && cd ./test && python3 run_suite.py --hw cpu --suite ${{ matrix.suite }} ${{ matrix.partition_args }}"
+1
View File
@@ -47,6 +47,7 @@ RUN source $HOME/.local/bin/env && \
ENV SGLANG_USE_CPU_ENGINE=1 ENV SGLANG_USE_CPU_ENGINE=1
ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc.so.4:/usr/lib/x86_64-linux-gnu/libtbbmalloc.so:/opt/.venv/lib/libiomp5.so ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc.so.4:/usr/lib/x86_64-linux-gnu/libtbbmalloc.so:/opt/.venv/lib/libiomp5.so
ENV PATH="/opt/.venv/bin:$PATH"
RUN echo 'source /opt/.venv/bin/activate' >> /root/.bashrc RUN echo 'source /opt/.venv/bin/activate' >> /root/.bashrc
WORKDIR /sgl-workspace/sglang WORKDIR /sgl-workspace/sglang
+1
View File
@@ -91,6 +91,7 @@ docker run \
--privileged \ --privileged \
--ipc=host \ --ipc=host \
--network=host \ --network=host \
--user root \
--group-add $(getent group video | cut -d: -f3) \ --group-add $(getent group video | cut -d: -f3) \
--device /dev/dri \ --device /dev/dri \
-v /dev/dri/by-path:/dev/dri/by-path \ -v /dev/dri/by-path:/dev/dri/by-path \
+9
View File
@@ -460,6 +460,15 @@ def extend(reqs, model_runner):
) )
batch.prepare_for_extend() batch.prepare_for_extend()
_maybe_prepare_mlp_sync_batch(batch, model_runner) _maybe_prepare_mlp_sync_batch(batch, model_runner)
if (
batch.input_ids is None
and getattr(batch, "prefill_input_ids_cpu", None) is not None
):
batch.input_ids = batch.prefill_input_ids_cpu.to(
batch.device, non_blocking=True
)
batch.prefill_input_ids_cpu = None
forward_batch = ForwardBatch.init_new(batch, model_runner) forward_batch = ForwardBatch.init_new(batch, model_runner)
logits_output = model_runner.forward(forward_batch).logits_output logits_output = model_runner.forward(forward_batch).logits_output
next_token_ids = model_runner.sample(logits_output, forward_batch) next_token_ids = model_runner.sample(logits_output, forward_batch)