Repository navigation
[AMD] Fix the diffusion perf fixture lookup - #38686
Merged
Merged
Conversation
Collaborator
Author
|
All changes are confined to |
yctseng0211
marked this pull request as ready for review
September 9, 2026 16:21
This was referenced Sep 9, 2026
HaiShaw
approved these changes
Sep 10, 2026
murthy-l
added a commit
to murthy-l/sglang
that referenced
this pull request
Sep 27, 2026
Add test/registered/xpu/test_xpu_flux2_klein.py, a manual 1-GPU test
for FLUX.2-klein-4B and -9B on Intel XPU (bf16, 4 steps, 1024x1024).
- t2i: one fixed prompt, gated on CLIP score (clip-vit-base-patch32,
>= 0.25). Healthy 4B/9B output scores >= 0.4198; black, white and
noise frames score <= 0.1842. If the score cannot be computed, the
test fails instead of passing unchecked.
- ti2i: CUDA flux_2_ti2i's edit prompt and input image, at 1024x1024
with seed 0, compared against a stored reference image with
compare_with_gt (CLIP similarity, SSIM, PSNR, mean abs diff) at
flux_2_ti2i's H100 thresholds. There is no XPU reference set in
ci-data-diffusion, so references are read from
SGLANG_CONSISTENCY_GT_DIR. A run without a reference fails and saves
its output under $SGLANG_DIFFUSION_ARTIFACT_DIR/missing_consistency_gt/
to be inspected and promoted.
- Every output is saved to $SGLANG_DIFFUSION_ARTIFACT_DIR before it is
checked, so a failing image is kept.
- Residency is pinned per size: 4B dit=resident; 9B also
text_encoder=layerwise-offload, so 1024x1024 warmup fits in 24 GiB.
- Perf is neither checked nor collected (collect_perf=False). The
flux2_klein_* case ids added here have no perf_baselines/xpu_b60.json
entry; klein-4B t2i perf on XPU is already covered by the existing CI
case flux_2_klein_image_t2i.
- Registered to nightly-xpu-1-gpu with nightly=True, like its siblings,
and disabled, so the Intel nightly lists it as skipped and never runs
it.
Add test/registered/xpu/conftest.py, which re-exports the diffusion
perf_results fixture as test/registered/amd/conftest.py does (sgl-project#38686).
Without it, a plain pytest run of any DiffusionServerBase test in this
directory errors with "fixture 'perf_results' not found".
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3 of 4 tasks
This was referenced Sep 29, 2026
This was referenced Oct 7, 2026
murthy-l
added a commit
to murthy-l/sglang
that referenced
this pull request
Oct 19, 2026
Add test/registered/xpu/test_xpu_flux2_klein.py, a manual 1-GPU test
for FLUX.2-klein-4B and -9B on Intel XPU (bf16, 4 steps, 1024x1024).
- t2i: one fixed prompt, gated on CLIP score (clip-vit-base-patch32,
>= 0.25). Healthy 4B/9B output scores >= 0.4198; black, white and
noise frames score <= 0.1842. If the score cannot be computed, the
test fails instead of passing unchecked.
- ti2i: CUDA flux_2_ti2i's edit prompt and input image, at 1024x1024
with seed 0, compared against a stored reference image with
compare_with_gt (CLIP similarity, SSIM, PSNR, mean abs diff) at
flux_2_ti2i's H100 thresholds. There is no XPU reference set in
ci-data-diffusion, so references are read from
SGLANG_CONSISTENCY_GT_DIR. A run without a reference fails and saves
its output under $SGLANG_DIFFUSION_ARTIFACT_DIR/missing_consistency_gt/
to be inspected and promoted.
- Every output is saved to $SGLANG_DIFFUSION_ARTIFACT_DIR before it is
checked, so a failing image is kept.
- Residency is pinned per size: 4B dit=resident; 9B also
text_encoder=layerwise-offload, so 1024x1024 warmup fits in 24 GiB.
- Perf is neither checked nor collected (collect_perf=False). The
flux2_klein_* case ids added here have no perf_baselines/xpu_b60.json
entry; klein-4B t2i perf on XPU is already covered by the existing CI
case flux_2_klein_image_t2i.
- Registered to nightly-xpu-1-gpu with nightly=True, like its siblings,
and disabled, so the Intel nightly lists it as skipped and never runs
it.
Add test/registered/xpu/conftest.py, which re-exports the diffusion
perf_results fixture as test/registered/amd/conftest.py does (sgl-project#38686).
Without it, a plain pytest run of any DiffusionServerBase test in this
directory errors with "fixture 'perf_results' not found".
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fix AMD Nightly Test nightly-1-gpu-zimage-turbo
Motivation
nightly-1-gpu-zimage-turboinNightly Test (AMD ROCm 7.2)has failed every night since Sep 7 (run #687):#38185 made
DiffusionServerBase's autouse fixture requestperf_results, which is declared inpython/sglang/multimodal_gen/test/server/conftest.py. pytest loads conftest.py by the collected file's directory, so the AMD tests intest/registered/amd/never see it and error at setup.test_wan22_fp8_mla.pyfails the same way. (The twotest/registered/xpu/diffusion tests share the cause; left to the XPU owners.)Modifications
Test only, AMD only.
test/registered/amd/conftest.pyre-exportingperf_results, the same way these tests already re-exportdiffusion_server.teardown_classoverrides: [diffusion] test: validate every repeated server request #38185 removedDiffusionServerBase.teardown_class, sosuper().teardown_class()only ever raises into a bareexcept AttributeError: pass.Verification
MI300X, ROCm 7.2:
Modifications
Accuracy Tests
Speed Tests and Profiling
Checklist
Review and Merge Process
/tag-and-rerun-ci,/tag-run-ci-label,/rerun-failed-ciCI States
Latest PR Test (Base): ❌ Run #34354307521
Latest PR Test (Extra): ❌ Run #34354307312
Latest PR Test (AMD ROCm 10): ❌ Run #34354307491