[Core][Frontend] Support request-level batching for diffusion pipelines (#4079)

Signed-off-by: jader <yjader@foxmail.com>
Co-authored-by: Samit <285365963@qq.com>
This commit is contained in:
JiangJie ZhangandSamit authored and GitHub committed 2026-06-29 18:09:19 +02:00
1 parent 504698dec8
commit c45ac74d43
123 files changed
+4160 -2233

No files matched your search

+25
View File
@@ -15,6 +15,7 @@ from vllm_omni.diffusion.ipc import (
pack_diffusion_output_shm,
unpack_diffusion_output_shm,
)
from vllm_omni.diffusion.worker.utils import BatchRunnerOutput, RunnerOutput
pytestmark = [pytest.mark.core_model, pytest.mark.diffusion, pytest.mark.cpu]
@@ -107,6 +108,30 @@ def test_rpc_result_envelope_diffusion_output_round_trips_through_shm() -> None:
assert unpacked["rank_statuses"] == [{"rank": 0, "ok": True}]
def test_batch_runner_output_round_trips_nested_results_through_shm() -> None:
first = torch.arange(_large_numel(torch.float32), dtype=torch.float32)
second = torch.arange(_large_numel(torch.float32), dtype=torch.float32) + 1
output = BatchRunnerOutput.from_list(
[
RunnerOutput(request_id="req-0", finished=True, result=DiffusionOutput(output=first)),
RunnerOutput(request_id="req-1", finished=True, result=DiffusionOutput(output={"image": second})),
RunnerOutput(request_id="req-error", finished=True, result=DiffusionOutput(error="boom")),
]
)
pack_diffusion_output_shm(output)
assert output.runner_outputs[0].result.output["__tensor_shm__"] is True
assert output.runner_outputs[1].result.output["image"]["__tensor_shm__"] is True
assert output.runner_outputs[2].result.error == "boom"
unpack_diffusion_output_shm(output)
torch.testing.assert_close(output["req-0"].result.output, first)
torch.testing.assert_close(output["req-1"].result.output["image"], second)
assert output["req-error"].result.error == "boom"
def test_pack_value_keeps_tensor_at_threshold_inline() -> None:
tensor = torch.arange(
_SHM_TENSOR_THRESHOLD // torch.empty((), dtype=torch.float32).element_size(),