Files
vllm-omni/docs/design/module/diffusion/continuous_batching.md
T
2026-07-16 12:08:45 +08:00

1.4 KiB

title, kind, status, owners, primary_code_paths, related_code_paths, depends_on, validation_paths, upstream_refs, last_reviewed
title kind status owners primary_code_paths related_code_paths depends_on validation_paths upstream_refs last_reviewed
Diffusion Continuous Batching module draft
@Isotr0py
@princepride
vllm_omni/diffusion/sched/**
vllm_omni/diffusion/executor/**
diffusion_runtime.md
tests/diffusion/batching/**
2026-07-16

Diffusion continuous batching

Continuous batching defines when diffusion requests are compatible, how they share an execution step, and how each request advances independently.

Candidate invariants

BATCH-INV-001: Compatibility is explicit

Rule: Requests MAY share a batch only when all properties required by the selected pipeline, scheduler step, shape, precision, and execution features are compatible.

BATCH-INV-002: Per-request state remains isolated

Rule: Batch assembly MUST preserve each request's random generator, progress, conditioning, outputs, cancellation, and errors.

BATCH-INV-003: Admission is bounded

Rule: Admission MUST respect configured capacity and MUST NOT rely on an unbounded waiting or active-request collection.

BATCH-INV-004: Batch order is not completion order

Rule: Output association MUST use stable request identity rather than batch position across execution steps.

Safe-change guide

Test heterogeneous requests, partial completion, cancellation, deterministic seeds, capacity limits, and batch sizes of one and many.