Repository navigation
[AMD] Restore AMD CI registrations dropped by #37436 - #38581
Merged
Merged
Conversation
Re-add register_amd_ci on tool-calling, reasoning, tensor-dump, and tracing tests so they run on the AMD PR 1-GPU-small lane again and close the coverage gaps #37436 opened on the AMD dashboard. Co-authored-by: Michael <michaelzhang-ai@users.noreply.github.com>
michaelzhang-ai
marked this pull request as ready for review
September 9, 2026 07:20
test/README.md requires a file registered on CUDA plus another accelerator to carry a nearby backend-specific: comment naming the path or failure mode only that backend can catch. Name the ROCm path for each restored registration. Co-authored-by: Michael <michaelzhang-ai@users.noreply.github.com>
HaiShaw
approved these changes
Sep 10, 2026
5 tasks done
1 of 2 tasks
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.
Motivation
#37436 stripped
register_amd_cifrom API/control-plane tests that NVIDIA still gates every PR. Those files accounted for most of the 2026-09-07 coverage drop (94.9% → 92.8%).This restores AMD on the four high-signal files from that drop, plus the tensor-dump hook that #37436 re-enabled on CUDA only. HTTP/2, request-length/stop validation, engine child PIDs, request-queue validation, and priority metrics stay CUDA/CPU-only — those are backend-agnostic control-plane checks.
Modifications
Re-add enabled
register_amd_ci(..., suite="stage-b-test-1-gpu-small-amd")on:est_timeopenai_server/function_call/test_openai_function_calling.pyllama3andpythonicparsers run on real decoded text, so ROCm decode divergence surfaces as tool calls that no longer parse; NPU nightly registration was kept in #37436openai_server/function_call/test_anthropic_tool_use.pyreasoning/test_reasoning.pyQwen3-30B-A3B), so a ROCm fused-MoE or sampling regression shows up as malformedreasoning_contentdebug_utils/test_tensor_dump_forward_hook.pyget_device()and the matching distributed backend, so only AMD exercises the HIP device and dump path; CUDA was re-enabled in #37436observability/test_tracing.pyPREFILL_FORWARD/DECODE_FORWARDto be emitted from the scheduler forward path, which ROCm reaches through its own attention backend and graph replay; CUDA staysextra-aPer the admission ratchet that #37436 added to
test/README.md— a file registered on CUDA plus another accelerator must carry a nearbybackend-specific:comment naming the path or failure mode only that backend can catch — each restored registration now has that rationale in source. All five are far under the 1,200 weighted accelerator-second default-lane cap, so noci-cost-override:is needed.scripts/lint/check_registered_tests.pypasses.Not restored (intentionally CUDA/CPU-only): HTTP/2 server, large-max-new-tokens / matched-stop / request-length validation, engine child PIDs, request-queue validation, priority metrics. The grok aggregate stub deleted in #37436 is also left out — MI30x grok evals already live in the split nightly files.
Coverage effect
Against the AMD coverage dashboard snapshot of 2026-09-10 06:35 UTC, where all five files appear on the
NVIDIA Tests Not Run on AMDlist with one registration each (fourcore, oneextra, all per-commit):coretier coverageextratier coveragePR % is the number worth reading here. The dashboard notes that the headline is carried up by AMD's much larger nightly surface (Nightly % is 142/40, over 100%), while PR % is what a pull request actually gates on. These five restorations land entirely in the per-commit lane, so they move both.
Runner cost is about 9 min added to
stage-b-test-1-gpu-small-amd(serialest_time; the suite is partitioned 14 ways, so wall-clock impact is roughly one partition-slot).For context on why this is worth doing now rather than later: the gap has grown from 222 files on 2026-09-06 to 247 on 2026-09-10 because NVIDIA registrations are being added at roughly two per day while
amd_enabledhas been flat (645 → 639). Headline coverage slid 94.9% → 91.3% over those four days without a single AMD registration being removed after #37436.Accuracy Tests
N/A — CI registration only; no model/kernel code changes.
Speed Tests and Profiling
N/A
Manual AMD CI
Dispatched
pr-test-amd-rocm720.ymlon8295c54because the PR was draft when first opened (pull_request AMD gate skipped). All five restored files passed on ROCm 10 and ROCm 7.2. Workflow-levelfailureis from pre-existing suite tests (test_deterministic.py, LoRA ROUGE, HIPBLAS MoE, DSV4/MI35x/8-gpu), not this PR.test_anthropic_tool_use.pytest_reasoning.pytest_tensor_dump_forward_hook.pytest_tracing.pytest_openai_function_calling.pyRuns:
stage-b-test-1-gpu-small-amd+continue_on_error(needed so part 11 did not fail-fast ontest_deterministic.pybefore the OpenAI function-calling file): ROCm 10, ROCm 7.2e7d4073only adds thebackend-specific:comments above the registrations, so the AMD results above still apply.Checklist
Review and Merge Process
/tag-and-rerun-ci,/tag-run-ci-label,/rerun-failed-ciCI States
Latest PR Test (Base): ❌ Run #34421363232
Latest PR Test (Extra): ❌ Run #34421363043
Latest PR Test (AMD ROCm 10): ❌ Run #34421363223