Skip to content

[diffusion] MiniMax-H3: warm up at the served clip shape - #37945

Merged
mickqian merged 5 commits into
sgl-project:mainfrom
kevin-mii:h3-warmup-served-shape
Sep 4, 2026
Merged

mickqian merged 5 commits into
sgl-project:mainfrom
kevin-mii:h3-warmup-served-shape

Conversation

@kevin-mii

@kevin-mii kevin-mii commented Sep 4, 2026 •

Copy link
Copy Markdown
Collaborator

Motivation

MiniMax-H3's synthetic warmup rendered the default 5-second 768p clip regardless of --warmup-num-frames / --warmup-resolutions. The first served forward at another clip length then paid allocator growth and first-call kernel setup in every DiT block: 2 to 3 s per forward on a 14 s clip (measured on 4x and 8x B200).

Modifications

MiniMaxH3SamplingParams derives the warmup duration from --warmup-num-frames (24 fps; admission range-checks the duration as for any request) and the aspect ratio from --warmup-resolutions (_synthetic_warmup_target), keeping the released 5-second 16:9 default otherwise. The short edge stays at the released 768: breakable CUDA graphs seed --warmup-resolutions with an area-capped default (832x464 for H3) that must not shrink the canvas. Unit test test_synthetic_warmup_target_honors_warmup_flags.

Split out of #37903, which depends on it for its served-shape warmup numbers.

Checklist

🤖 Generated with Claude Code


CI States

Latest PR Test (Base): ✅ Run #33854829199
Latest PR Test (Extra): ❌ Run #33854829117
Latest PR Test (AMD ROCm 7.2): ⏳ Run #33854829201

The synthetic warmup request rendered the default 5-second 768p clip
regardless of --warmup-num-frames / --warmup-resolutions, so the first
served forward at another clip length paid allocator growth and first-call
kernel setup in every DiT block (2 to 3 s per forward on a 14 s clip).
The warmup target now honors both flags.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
kevin-mii and others added 3 commits September 4, 2026 06:50
…armup

Only the aspect ratio comes from --warmup-resolutions. BCG seeds that flag
with an area-capped default (832x464 for H3), which the previous revision
turned into a 464-short-edge warmup instead of the released 768p canvas.
Reuse the H3 fps / duration / short-edge constants, reject frame counts
outside the 4-15 s admission range with a flag-named error, and drop the
positivity check server args already perform.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Admission already range-checks duration_seconds, and H3 only serves the
named aspect ratios, so the hook just converts the two flags and snaps to
the nearest ratio.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
kevin-mii added a commit to kevin-mii/sglang that referenced this pull request Sep 4, 2026
fp8 per-tensor becomes its own quantization method, fp8_per_tensor
(fp8_per_tensor.py subclassing the online fp8 method), registered by name;
fp8.py, PipelineConfig and the loader keep their shapes and VDN-H3 admission
maps --quantization fp8 to it. The out-of-place QK-norm + RoPE JIT variant is
dropped (clone + the existing in-place kernel, ~1%). The H3 served-shape
warmup fix moves to its own PR (sgl-project#37945). One benchmark preset; no package
re-export of the VDN config.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@mickqian

mickqian commented Sep 4, 2026

Copy link
Copy Markdown
Collaborator

/tag-and-rerun-ci

@github-actions github-actions Bot added the run-ci CI: run the baseline test suite on this PR label Sep 4, 2026
@mickqian
mickqian merged commit 3b67854 into sgl-project:main Sep 4, 2026
131 of 146 checks passed
StevenChenSE pushed a commit to StevenChenSE/sglang that referenced this pull request Sep 6, 2026
…roject#37945)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

diffusion SGLang Diffusion run-ci CI: run the baseline test suite on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants