Skip to content

perf(rccl): tune gfx950 2-node AllReduce, AllGather and ReduceScatter - #14722

Open
aduforest wants to merge 2 commits into
developfrom
users/aduforest/intellitune-gfx950-2n-allreduce-row
Open

aduforest wants to merge 2 commits into
developfrom
users/aduforest/intellitune-gfx950-2n-allreduce-row

Conversation

@aduforest

@aduforest aduforest commented Oct 30, 2026 •

Copy link
Copy Markdown
Member

Motivation

Improve AllReduce, AllGather and ReduceScatter performance on MI350X (gfx950), 2 nodes × 8 GPUs (16 ranks), for these message-size ranges:

  • AllReduce: 16–144 MiB.
  • AllGather: 144–224 MiB.
  • ReduceScatter: 136–168 MiB.

Lower limits are included; upper limits are excluded.

Technical Details

Updates projects/rccl/tuner/rccl_tuner_gfx950.csv for MI350X, 2 nodes × 8 GPUs (16 ranks):

Collective Message-size range Before After
AllReduce 16 MiB < size < 52 MiB Ring/LL128, 64 channels Tree/LL128, 64 channels
AllReduce 52 MiB ≤ size < 112 MiB Tree/Simple, 64 channels Tree/LL128, 64 channels
AllReduce 112 MiB ≤ size < 144 MiB Ring/Simple, 48 channels Tree/LL128, 64 channels
AllGather 144 MiB ≤ size < 224 MiB Ring/Simple, 64 channels Ring/Simple, 48 channels
ReduceScatter 136 MiB ≤ size < 168 MiB Ring/Simple, 64 channels Ring/Simple, 32 channels

Exactly 16 MiB AllReduce stays on Tree/LL128 with 64 channels. Other sizes and topologies keep their settings. Existing AllReduce rows remain as fallbacks when the preferred algorithm/protocol is unavailable.

Results below use float, out-of-place, DEFAULT CTA policy, -R 0, no graphs; median of six runs per configuration. Reduction operation: sum for AllReduce/ReduceScatter, none for AllGather. AllGather sizes are total receive-buffer bytes; ReduceScatter sizes are total send-buffer bytes.

Before:

Collective size (B) time (us) algbw (GB/s) busbw (GB/s) algo proto nchannels
AllReduce 16777216 185.88 90.26 169.24 TREE LL128 64
AllReduce 20971504 371.53 56.45 105.84 RING LL128 64
AllReduce 25165792 370.47 67.93 127.37 RING LL128 64
AllReduce 29360080 375.56 78.18 146.58 RING LL128 64
AllReduce 33554368 382.03 87.83 164.68 RING LL128 64
AllReduce 33554432 380.65 88.15 165.28 RING LL128 64
AllReduce 48234480 396.46 121.66 228.12 RING LL128 64
AllReduce 62914528 595.44 105.66 198.12 TREE SIMPLE 64
AllReduce 77594576 687.65 112.84 211.57 TREE SIMPLE 64
AllReduce 92274624 764.99 120.62 226.17 TREE SIMPLE 64
AllReduce 106954672 861.02 124.22 232.91 TREE SIMPLE 64
AllReduce 121634720 1089.91 111.60 209.25 RING SIMPLE 48
AllReduce 136314768 1104.94 123.37 231.32 RING SIMPLE 48
AllReduce 150994816 1133.41 133.22 249.79 RING SIMPLE 48
AllGather 150994944 679.27 222.29 208.40 RING SIMPLE 64
AllGather 171966208 699.23 245.94 230.57 RING SIMPLE 64
AllGather 192937728 715.27 269.74 252.88 RING SIMPLE 64
AllGather 213909248 728.73 293.54 275.19 RING SIMPLE 64
AllGather 234880768 744.50 315.49 295.77 RING SIMPLE 64
ReduceScatter 142606336 680.09 209.69 196.58 RING SIMPLE 64
ReduceScatter 150994688 682.06 221.38 207.54 RING SIMPLE 64
ReduceScatter 159383296 693.05 229.97 215.60 RING SIMPLE 64
ReduceScatter 167771904 692.92 242.13 226.99 RING SIMPLE 64
ReduceScatter 176160512 706.43 249.37 233.78 RING SIMPLE 64

After:

Collective size (B) time (us) algbw (GB/s) busbw (GB/s) algo proto nchannels Improvement
AllReduce 16777216 185.13 90.62 169.92 TREE LL128 64 —
AllReduce 20971504 184.58 113.62 213.03 TREE LL128 64 2.01x
AllReduce 25165792 213.14 118.07 221.38 TREE LL128 64 1.74x
AllReduce 29360080 242.75 120.95 226.77 TREE LL128 64 1.55x
AllReduce 33554368 270.30 124.14 232.75 TREE LL128 64 1.41x
AllReduce 33554432 270.91 123.86 232.23 TREE LL128 64 1.41x
AllReduce 48234480 372.98 129.32 242.48 TREE LL128 64 1.06x
AllReduce 62914528 465.49 135.16 253.42 TREE LL128 64 1.28x
AllReduce 77594576 562.27 138.00 258.75 TREE LL128 64 1.22x
AllReduce 92274624 652.38 141.44 265.21 TREE LL128 64 1.17x
AllReduce 106954672 743.91 143.77 269.57 TREE LL128 64 1.16x
AllReduce 121634720 833.45 145.94 273.64 TREE LL128 64 1.31x
AllReduce 136314768 921.53 147.92 277.36 TREE LL128 64 1.20x
AllReduce 150994816 1011.18 149.33 279.98 TREE LL128 64 1.12x
AllGather 150994944 587.32 257.09 241.02 RING SIMPLE 48 1.16x
AllGather 171966208 610.53 281.67 264.06 RING SIMPLE 48 1.15x
AllGather 192937728 638.61 302.12 283.24 RING SIMPLE 48 1.12x
AllGather 213909248 663.01 322.63 302.47 RING SIMPLE 48 1.10x
AllGather 234880768 693.66 338.61 317.45 RING SIMPLE 48 1.07x
ReduceScatter 142606336 572.44 249.12 233.55 RING SIMPLE 32 1.19x
ReduceScatter 150994688 595.20 253.69 237.83 RING SIMPLE 32 1.15x
ReduceScatter 159383296 618.04 257.89 241.77 RING SIMPLE 32 1.12x
ReduceScatter 167771904 637.45 263.19 246.74 RING SIMPLE 32 1.09x
ReduceScatter 176160512 658.65 267.46 250.74 RING SIMPLE 32 1.07x

The small difference at 16 MiB AllReduce is run-to-run variation.

Issue Tracking

JIRA ID: AICOMRCCL-3447

Keep open for further tuning improvements.

Test Plan

Two-node rccl-tests runs with repeated before/after measurements and baseline controls, range-boundary checks, 1–512 MiB sweeps and correctness checking (-c 1). Tested in-place/out-of-place operations, CTA policies, registration modes and graphs; not every combination.

Host tests check CSV loading, message-size boundaries, node/rank matching and fallbacks.

Test Result

The results above show performance improvements of up to 2.01x for AllReduce, 1.16x for AllGather and 1.19x for ReduceScatter.

  • Combined GPU validation: 1,137 successful runs; 17,590 result rows with #wrong=0, testing all three tuning rows together.
  • Host tests: 21 CSV tests across 20 shuffled runs, plus 68 CSV/tuning tests passed.
  • All 662 changed-setting cases in the main matrix had lower candidate median latency. All 144 boundary result rows and initial/final hardware checks passed.
  • Half/bfloat16 results were verified with DEFAULT CTA policy, registration mode 0 and no graph; this is not every datatype/mode combination.

Follow-up checks completed: with the combined rule, the previously flagged 18 MiB AllReduce case was 48.7% faster. Longer-warmup checks at 2 MiB ReduceScatter were within 0.91% of baseline. Additional outside-range 8–9% differences did not persist in focused reruns: the original-sweep follow-ups still showed differences up to 3.46%, while longer-warmup probes were within 0.7%. These results do not establish that every timing difference is noise or guarantee regression-free performance in every environment.

Test details
Campaign Successful runs Result rows Incorrect rows
Combined tuning matrix, datatypes, boundaries and initial controls 881 14,774 0
Additional focused outside-range controls 256 2,816 0

The combined matrix covers float in 12 CTA/registration/graph combinations, both in-place and out-of-place, with three balanced baseline/repeated-baseline/candidate rounds. Focused controls use eight four-arm rounds, including an identical baseline and an equal-length placebo, followed by eight longer-warmup rounds.

These comparisons used the same RCCL 2.32.3 build (091930df78f8d9402e53034fda2adbd53e3e3aec), ROCm 10.1.0 and Open MPI 5.0.10, changing only the CSV—not separate PR/base builds. The rccl-tests monorepo revision was 7ee494a5d42c370916257b469584933c1a72716a.

Full per-round results, commands, input/binary hashes and independent checkers are retained. See the combined validation update for the results and CI coverage limitations. The before/after tables above are from the earlier individual-rule campaigns; the combined validation is additional evidence.

Submission Checklist

One row for 2 nodes x 16 ranks, AllReduce [16M, 32M): Tree/LL128 with 64 channels. Without it the choice switches to Ring/LL128 just above 16M and the time doubles; Tree/LL128 runs 1.4x to 2.2x faster from 20M to 32M. All other rows are unchanged.

Co-Authored-By: Claude <noreply@anthropic.com>
@therock-pr-bot

therock-pr-bot Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

✅ All Policy Checks Passed

Check Status Details
📝 PR Description ✅ Pass —
⛔ Forbidden Files ✅ Pass —
🧪 Unit Test ⚠️ Warning Error: Source/code files changed without an accompanying unit test.
Expected: add at least one test file named like test_<name>.py / test_<name>.cpp (or <name>_test.*).
Current: code file(s) changed: projects/rccl/test/host/csv-tuner-test.cc; no test file found
🚫 Draft PR 🔜 To Be Enabled —
🚩 Feature Flag 🔜 To Be Enabled —
📊 Code Coverage 🔜 To Be Enabled —

🎉 All policy checks passed!

📖 Need help? See the Policy FAQ for details on every check and how to fix failures.

🙋 Wish to Override Policy?

@aduforest
aduforest marked this pull request as ready for review November 2, 2026 19:07
@aduforest
aduforest requested review from a team and PedramAlizadeh November 2, 2026 19:07
@aduforest

Copy link
Copy Markdown
Member Author

@argus review

@amd-argus amd-argus Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ARGUS

No findings. The panel reviewed the changed files it was given and flagged nothing above Nit
level.

Bottom line: LGTM.

Comment @argus review to re-run, or @argus re-review after pushing.

@github-actions

github-actions Bot commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

pr-rocm-systems-14722-oci-rccl-pr-smoke

View this job on CoCo

Builds

Stack Component Version Commit Status Build time
pr-14722_rccl-perf_rocm-10.1-ga gcc-13.2 13.2.0 13.2.0 cached
pr-14722_rccl-perf_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-perf_rocm-10.1-ga openmpi-5.0.8 5.0.8 5.0.8 cached
pr-14722_rccl-perf_rocm-10.1-ga rccl-pr-14722 eea1c4c eea1c4c cached
pr-14722_rccl-perf_rocm-10.1-ga rccl-tests-develop-perf develop 89282a6 cached
pr-14722_rccl-perf_rocm-10.2-latest gcc-13.2 13.2.0 13.2.0 cached
pr-14722_rccl-perf_rocm-10.2-latest rocm-10.2-latest 10.2.0rc1 10.2.0rc1 cached
pr-14722_rccl-perf_rocm-10.2-latest openmpi-5.0.8 5.0.8 5.0.8 cached
pr-14722_rccl-perf_rocm-10.2-latest rccl-pr-14722 eea1c4c eea1c4c cached
pr-14722_rccl-perf_rocm-10.2-latest rccl-tests-develop-perf develop 89282a6 cached
pr-14722_rccl-smoke_rocm-10.1-ga gcc-13.2 13.2.0 13.2.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga openmpi-5.0.8 5.0.8 5.0.8 cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl-pr-14722-smoke eea1c4c eea1c4c cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl_gtest-pr-14722 eea1c4c eea1c4c cached
rocm-10.1-ga_rccl-develop-perf gcc-13.2 13.2.0 13.2.0 cached
rocm-10.1-ga_rccl-develop-perf rocm-10.1-ga 10.1.0 10.1.0 cached
rocm-10.1-ga_rccl-develop-perf openmpi-5.0.8 5.0.8 5.0.8 cached
rocm-10.1-ga_rccl-develop-perf rccl-develop-63a5598dd175 63a5598 63a5598 cached
rocm-10.1-ga_rccl-develop-perf rccl-tests-develop-perf develop 89282a6 cached

Failures

No failing tests in this run.

15 tests skipped.

@github-actions

github-actions Bot commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

pr-rocm-systems-14722-ruby64-rccl-pr-smoke

View this job on CoCo

Builds

Stack Component Version Commit Status Build time
pr-14722_rccl-perf_rocm-10.1-ga gcc-11.5 11.5.0 11.5.0 cached
pr-14722_rccl-perf_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-perf_rocm-10.1-ga openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
pr-14722_rccl-perf_rocm-10.1-ga rccl-pr-14722 eea1c4c eea1c4c cached
pr-14722_rccl-perf_rocm-10.1-ga rcclt-develop-perf develop e85f435 cached
pr-14722_rccl-perf_rocm-10.2-latest gcc-11.5 11.5.0 11.5.0 cached
pr-14722_rccl-perf_rocm-10.2-latest rocm-10.2-latest 10.2.0rc1 10.2.0rc1 cached
pr-14722_rccl-perf_rocm-10.2-latest openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
pr-14722_rccl-perf_rocm-10.2-latest rccl-pr-14722 eea1c4c eea1c4c cached
pr-14722_rccl-perf_rocm-10.2-latest rcclt-develop-perf develop e85f435 cached
pr-14722_rccl-smoke_rocm-10.1-ga gcc-11.5 11.5.0 11.5.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl-pr-14722-smoke eea1c4c eea1c4c cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl_gtest-pr-14722 eea1c4c eea1c4c cached
rocm-10.1-ga_rccl-develop-perf gcc-11.5 11.5.0 11.5.0 cached
rocm-10.1-ga_rccl-develop-perf rocm-10.1-ga 10.1.0 10.1.0 cached
rocm-10.1-ga_rccl-develop-perf openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
rocm-10.1-ga_rccl-develop-perf rccl-develop-63a5598dd175 63a5598 63a5598 cached
rocm-10.1-ga_rccl-develop-perf rcclt-develop-perf develop e85f435 cached

Failures

No failing tests in this run.

15 tests skipped.

Fold #14969, #14858 and #14898 into #14722. Coalesce the adjacent AllReduce ranges while preserving unavailable-protocol fallbacks, and cover embedded row counts, size boundaries and topology selection.
@aduforest aduforest changed the title perf(rccl): gfx950 tuner row for 2-node AllReduce 16M-32M perf(rccl): consolidate gfx950 2-node collective tuning Nov 3, 2026
@aduforest

Copy link
Copy Markdown
Member Author

Consolidated the related two-node work here: #14969, #14858 and #14898. AllReduce is now one 16–144 MiB row; AllGather and ReduceScatter keep their original ranges. Added embedded-row, boundary, topology and unavailable-protocol fallback tests. The original benchmark limitations remain documented. Please review the expanded change at 18a3ef1; #14484 remains separate with its existing approvals. Nothing was merged into develop.

@aduforest aduforest changed the title perf(rccl): consolidate gfx950 2-node collective tuning perf(rccl): tune gfx950 2-node AllReduce, AllGather and ReduceScatter Nov 3, 2026
@aduforest

Copy link
Copy Markdown
Member Author

@argus re-review

@amd-argus amd-argus Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ARGUS

Bottom line: LGTM.

Comment @argus review to re-run, or @argus re-review after pushing.

@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

pr-rocm-systems-14722-oci-rccl-pr-smoke

View this job on CoCo

Builds

Stack Component Version Commit Status Build time
pr-14722_rccl-perf_rocm-10.1-ga gcc-13.2 13.2.0 13.2.0 cached
pr-14722_rccl-perf_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-perf_rocm-10.1-ga openmpi-5.0.8 5.0.8 5.0.8 cached
pr-14722_rccl-perf_rocm-10.1-ga rccl-pr-14722 18a3ef1 18a3ef1 cached
pr-14722_rccl-perf_rocm-10.1-ga rccl-tests-develop-perf develop 2313d8d cached
pr-14722_rccl-perf_rocm-10.2-latest gcc-13.2 13.2.0 13.2.0 cached
pr-14722_rccl-perf_rocm-10.2-latest rocm-10.2-latest 10.2.0rc1 10.2.0rc1 cached
pr-14722_rccl-perf_rocm-10.2-latest openmpi-5.0.8 5.0.8 5.0.8 cached
pr-14722_rccl-perf_rocm-10.2-latest rccl-pr-14722 18a3ef1 18a3ef1 cached
pr-14722_rccl-perf_rocm-10.2-latest rccl-tests-develop-perf develop 2313d8d cached
pr-14722_rccl-smoke_rocm-10.1-ga gcc-13.2 13.2.0 13.2.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga openmpi-5.0.8 5.0.8 5.0.8 cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl-pr-14722-smoke 18a3ef1 18a3ef1 cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl_gtest-pr-14722 18a3ef1 18a3ef1 cached
rocm-10.1-ga_rccl-develop-perf gcc-13.2 13.2.0 13.2.0 cached
rocm-10.1-ga_rccl-develop-perf rocm-10.1-ga 10.1.0 10.1.0 cached
rocm-10.1-ga_rccl-develop-perf openmpi-5.0.8 5.0.8 5.0.8 cached
rocm-10.1-ga_rccl-develop-perf rccl-develop-63a5598dd175 63a5598 63a5598 cached
rocm-10.1-ga_rccl-develop-perf rccl-tests-develop-perf develop 2313d8d cached

Failures

No failing tests in this run.

15 tests skipped.

@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

pr-rocm-systems-14722-ruby64-rccl-pr-smoke

View this job on CoCo

Builds

Stack Component Version Commit Status Build time
pr-14722_rccl-perf_rocm-10.1-ga gcc-11.5 11.5.0 11.5.0 cached
pr-14722_rccl-perf_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-perf_rocm-10.1-ga openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
pr-14722_rccl-perf_rocm-10.1-ga rccl-pr-14722 18a3ef1 18a3ef1 cached
pr-14722_rccl-perf_rocm-10.1-ga rcclt-develop-perf develop 2313d8d cached
pr-14722_rccl-perf_rocm-10.2-latest gcc-11.5 11.5.0 11.5.0 cached
pr-14722_rccl-perf_rocm-10.2-latest rocm-10.2-latest 10.2.0rc1 10.2.0rc1 cached
pr-14722_rccl-perf_rocm-10.2-latest openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
pr-14722_rccl-perf_rocm-10.2-latest rccl-pr-14722 18a3ef1 18a3ef1 cached
pr-14722_rccl-perf_rocm-10.2-latest rcclt-develop-perf develop 2313d8d cached
pr-14722_rccl-smoke_rocm-10.1-ga gcc-11.5 11.5.0 11.5.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga rocm-10.1-ga 10.1.0 10.1.0 cached
pr-14722_rccl-smoke_rocm-10.1-ga openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl-pr-14722-smoke 18a3ef1 18a3ef1 cached
pr-14722_rccl-smoke_rocm-10.1-ga rccl_gtest-pr-14722 18a3ef1 18a3ef1 cached
rocm-10.1-ga_rccl-develop-perf gcc-11.5 11.5.0 11.5.0 cached
rocm-10.1-ga_rccl-develop-perf rocm-10.1-ga 10.1.0 10.1.0 cached
rocm-10.1-ga_rccl-develop-perf openmpi-4.0.2 4.0.2rc3 4.0.2rc3 cached
rocm-10.1-ga_rccl-develop-perf rccl-develop-63a5598dd175 63a5598 63a5598 cached
rocm-10.1-ga_rccl-develop-perf rcclt-develop-perf develop 2313d8d cached

Failures

No failing tests in this run.

15 tests skipped.

@aduforest

Copy link
Copy Markdown
Member Author

Validation update for 18a3ef1cff75

Tested the three tuning rows together on 2 nodes × 8 MI350X GPUs, 16 ranks.

  • 1,137 benchmark launches; 17,590 result rows; zero numerical errors or failed launches. This includes the 881-launch matrix and 256 additional control launches.
  • Float coverage: 12 CTA/registration/graph combinations, both in-place and out-of-place, dense and 1–512 MiB sweeps. bfloat16/half: DEFAULT/R0/no graph. All 144 boundary result rows and initial/final hardware checks passed.
  • All 662 changed-setting cases in the main matrix had lower candidate median latency. Float reductions: AllReduce 6.2–50.3%, AllGather 1.6–15.8%, ReduceScatter 5.0–17.5%. The smallest bfloat16 AllReduce change was only 0.3%, not a statistically established win.

Slowdown follow-up: the three-round sweep showed outside-range differences up to 8.94% (AllGather) and 8.42% (ReduceScatter). Eight-round comparisons against an identical baseline and an equal-length placebo did not retain those large slowdowns. Original-sweep differences still reached 3.46%; longer-warmup probes of the newly flagged modes were within 0.7% of baseline. All outside-range selections matched. This supports the improvement without claiming every timing difference is noise or proving universal regression freedom.

Reproducibility: candidate CSV 18a3ef1cff751088a95b6fe7a443af409591a1af, baseline CSV 58b6920807b270708790c415fc17731474ce22aa; same RCCL 2.32.3 build from 091930df78f8d9402e53034fda2adbd53e3e3aec, ROCm 10.1.0, Open MPI 5.0.10; rccl-tests monorepo revision 7ee494a5d42c370916257b469584933c1a72716a. Full per-round results, commands, input/binary hashes and independent checkers are retained. These are CSV comparisons, not separately built PR/base libraries.

CI scope: current-head host tests and Ruby/OCI smoke tests passed; Argus returned LGTM. Smoke CI is not a substitute for the dense checks: powers-of-two sweeps miss the AllGather/ReduceScatter edited intervals, and Ruby ROCm 10.1 still reports the old AllReduce selections. Ruby ROCm 10.2 exercises the new AllReduce selection. Existing on-disk tuning files take precedence over embedded defaults; mixed installations must use the intended CSV explicitly or remove obsolete overrides.

The PR description is unchanged. Required multi-arch CI and human approvals remain outstanding at the time of this update.

@aduforest

Copy link
Copy Markdown
Member Author

Final cross-check with the companion one-node tuning PR #14484:

  • Checked the current heads: this PR 18a3ef1cff75, perf(rccl): gfx950 tuner rows for 1-node Broadcast and Reduce #14484 dd1f320ea069.
  • Combining their seven added rules passed 1,139,712 CSV selection-model comparisons across boundaries, eight topologies, pipeline/registration settings and unavailable-protocol combinations. The new rules do not overlap; each PR's selections and existing fallbacks are preserved. This is a selection-model check, not an additional GPU benchmark.
  • The gfx950 CSV on current develop 8243449ba5be still matches the tested baseline. No further tuning changes or broad benchmark campaign are indicated by the existing GPU results.

The remaining merge requirements are external to that validation: the required multi-arch GPU test is queued without an assigned runner, and required human approvals are outstanding. Host tests and Ruby/OCI smoke CI passed; Argus gave LGTM. No CI gate or approval has been bypassed.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant