Repository navigation
Conversation
b6cff8a to
c95675f
Compare
|
/bot run --disable-fail-fast --extra-stage "DGX_B200-8_GPUs-PyTorch-VisualGen-PerfSanity-Post-Merge-1" |
|
PR_Github #83724 [ run ] triggered by Bot. Commit: |
|
PR_Github #83724 [ run ] completed with state
|
c95675f to
48abf97
Compare
|
/bot run --disable-fail-fast --extra-stage "DGX_B200-8_GPUs-PyTorch-VisualGen-PerfSanity-Post-Merge-1" |
|
PR_Github #84058 [ run ] triggered by Bot. Commit: |
|
PR_Github #84058 [ run ] completed with state
|
48abf97 to
fb8d5aa
Compare
|
/bot run --disable-fail-fast --extra-stage "DGX_B200-8_GPUs-PyTorch-VisualGen-PerfSanity-Post-Merge-1" |
|
PR_Github #84125 [ run ] triggered by Bot. Commit: |
Signed-off-by: Taian Zhang <taianz@nvidia.com>
Signed-off-by: Taian Zhang <taianz@nvidia.com>
fb8d5aa to
a2620c2
Compare
|
/bot run --disable-fail-fast --extra-stage "DGX_B200-8_GPUs-PyTorch-VisualGen-PerfSanity-Post-Merge-1" |
|
PR_Github #84199 [ run ] triggered by Bot. Commit: |
|
No actionable comments were generated in the recent review. WalkthroughThis change updates B200 VisualGen performance-sanity recipes for FLUX.2, Wan 2.2, and LTX-2. It refreshes the scheduled test cases, removes a FLUX.2 skip entry, and revises the README with recipe names, examples, measurements, and configuration guidance. ChangesB200 VisualGen performance recipes
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
Merge Risk:
|
|
PR_Github #84125 [ run ] completed with state |
|
PR_Github #84199 [ run ] completed with state
|
LarryXFly
left a comment
There was a problem hiding this comment.
Review summary - Approve
Reviewed the full diff; no blocking or major issues found.
Automated review by NVCortex Lite, run by @LarryXFly.
Refresh the five covered FLUX.2-dev, Wan2.2 I2V and LTX2 B200 sanity cases using the best observed October sweep recipes within the existing model/mode, logical GPU budget and usable CI checkpoint set. #21929 has merged and removed Wan2.1. Refresh the five remaining scheduled B200 cases without restoring the removed recipe or selector.
The measured source was main
dddb74c217dadabd6e9ba04ef22d48da53a73e01. Each point had one measured request, so these are observed minima under the tested constraints, not universal optima. Existing CI prompts/reference images remain unchanged; exact CI latency can differ. Update pytest names and scheduled selectors together, using measured warmup shapes and explicit LTX compile options. All refreshed B200 LTX cases pin the native BF16 file rather than a directory containing multiple precision variants. GPU allocations, client shapes/steps/counts, timeouts, KPI extraction and regression thresholds are unchanged.LTX checkpoint and stage selection
The old
ltx2_nvfp4case pointed to the generalLTX-2directory without enabling quantization. The staged nativeLTX-2/ltx-2-19b-dev-fp4.safetensorsheader declares 1,176 transformer-layernvfp4entries; video/audio VAE tensors remain BF16. The metadata converter at the #21929 snapshot (23512d112e) still recognizes onlyfloat8_e4m3fn, not thatnvfp4format (checked with an isolated execution of the actual converter). The overall one-stage sweep minimum (5.25 s) used a separate ModelOpt static NVFP4 checkpoint and is not claimed reproducible using this native file.Use the measured FP8-blockwise recipe with the explicit staged BF16 file instead: the best observed one-stage recipe among the usable checkpoints in the October staging set (6.20 s). No loader workaround, unmeasured on-load NVFP4 substitution or cache mutation is introduced.
The
LTX-2directory also contains the upscaler and distilled LoRA. The loader discovers them automatically, so omitting YAML fields does not reliably keep a run single-stage. Move the one-stage case into its own YAML withTLLM_LTX2_FORCE_ONE_STAGE_PIPELINE=1; explicitly set it to0for the two-stage family. This isolates server environments and preserves intended coverage without changing runtime code or adding scheduled B200 cases.Platform scope and integration
This branch is rebased onto main
64f7213093, which includes merged #21929. The redundant private copy of the Wan2.1-removal commit is dropped, so the PR contains only the recipe refresh and obsolete-waiver cleanup. The current sharedltx2.yamlalso covers VR200, so keep its existing recipes unchanged for VR200 and scope it to that GPU. Place the sweep-derived B200 settings inltx2_blackwell.yamlandltx2_single_stage_blackwell.yaml. This preserves VR200 recipes while refreshing the five B200 selectors. No VR200 performance claim is made.Waiver consistency repair
Removed the obsolete waiver for the retired FP8 FLUX.2 selector. The replacement BF16 recipe remains unwaived. Local execution of the affected VisualGen parameter-generation and waiver-membership checks reproduces the stale-entry error before cleanup and passes afterward; these scoped checks do not replace full CI collection or the five-case B200 performance run. NVBug 6759009 and its separate perf-sanity investigation are unchanged. The branch also incorporates main's existing CPU fixture/API corrections; no unrelated executor code is changed by this PR.
Baselines and validation
Nov11 local integration checks (head
a2620c2e9e0010e43042611ba2878e7562cb44c3, rebased onto main64f7213093; not a new GPU run):git diff --checkpassed.Historical preparation evidence (October sweep / original PR preparation; not rerun against the updated PR head):
Changed settings require separate CI baselines. Do not rewrite old timing evidence or accept a known regression by installing a slower baseline. Fastest-recipe KPI cases complement fixed controls/investigations; they do not cover every regression, including single-GPU FP8-blockwise LTX (NVBug 7030044) and eight-GPU BF16/TRTLLM Wan5B (NVBug 7030393).
The previous #69231 request was accepted, but single-GPU failures blocked the multi-GPU prerequisite, so none of the five performance cases ran. Results from prior or superseded heads do not validate this rebased head; its target run is still required.
Before merge: run the updated cases in target B200 CI and review their new baselines. The updated five-case B200 performance run and baseline review are pending; local parser/schema checks and ordinary PR CI do not replace that acceptance. Native NVFP4 metadata support or staging the separately measured ModelOpt checkpoint remains a follow-up.
Dev Engineer Review
ltx2.yamlfor VR200.QA Engineer Review
l0_b200_visual_gen_perf_sanity.ymlwith five scheduled entries:#83724passed,#84058failed,#69231failed,#69525was aborted, and#84125has no reported completion result.Per-File QA Perspective
tests/integration/defs/perf/README_test_visual_gen_perf_sanity.md: Updates selectors, recipe examples, KPI observations, checkpoint constraints, and LTX2 stage guidance. QA should verify that documented selectors match the CI test-list entries.tests/integration/test_lists/test-db/l0_b200_visual_gen_perf_sanity.yml: Replaces five scheduled B200 entries and preserves the 120-second FLUX.2 and 30-second non-FLUX.2 timeouts. QA should verify that every selector resolves to its intended recipe.tests/integration/test_lists/waives.txt: Removes the FLUX.2 FP8 waiver. QA should verify that the BF16 replacement passes without a waiver.tests/scripts/perf-sanity/visual_gen/flux2_blackwell.yaml: Changes FLUX.2 from dynamic FP8 to BF16 and enables CUDA graphs. QA should verify server startup, compilation, and the 1024×1024 single-frame request.tests/scripts/perf-sanity/visual_gen/ltx2.yaml: Removes B200 from the shared LTX2 metadata. QA should verify that VR200 selection remains unchanged and B200 selection uses the dedicated recipes.tests/scripts/perf-sanity/visual_gen/ltx2_blackwell.yaml: Adds B200 BF16 I2V and FP8 block-scale T2V two-stage recipes. QA should verify FA4 attention, parallelism, compilation, checkpoint paths, and forced two-stage execution.tests/scripts/perf-sanity/visual_gen/ltx2_single_stage_blackwell.yaml: Adds a B200 FP8 block-scale I2V recipe withTLLM_LTX2_FORCE_ONE_STAGE_PIPELINE=1. QA should verify the one-stage execution path.tests/scripts/perf-sanity/visual_gen/wan22_i2v_a14b_blackwell.yaml: Adds INT8 Q/K and FP8 V attention quantization, async Ulysses, CUDA graphs, and explicit compilation shapes. QA should verify the 1280×720, 81-frame workload.