Skip to content

test(rccl): add LL/LL128 vector ops coverage and op128 refactor - #10674

Closed
alex-breslow-amd wants to merge 4 commits into
developfrom
users/abreslow/ll128_vector_tests
Closed

alex-breslow-amd wants to merge 4 commits into
developfrom
users/abreslow/ll128_vector_tests

Conversation

@alex-breslow-amd

@alex-breslow-amd alex-breslow-amd commented Aug 24, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Files changed

Area Files
Production op128.h, prims_ll.h, prims_ll128.h
Unit tests test/device/TestLLFifo.cpp, test/device/TestLL128Vector.cpp
MPI tests test/LL128VectorMPITests.cpp, test/CMakeLists.txt

Test plan

  • ./test/rccl-UnitTestsFixtures --gtest_filter='LLFifoVectorTest.*:LL128VectorTest.*'
  • mpirun -np 2 ./test/rccl-UnitTestsMPI --gtest_filter=LL128VectorMPITest.*
  • On gfx1250: confirm Load128Store128Gfx1250CooperativePath and RegisteredAllReduce_LL128_Gfx1250Only pass

alex-breslow-amd and others added 3 commits August 24, 2026 15:11
Replace paired 64-bit nontemporal loads and plain stores in LL FIFO access
with single v4u vector operations, matching the LL128 load128NT/store128Plain
approach. Preserves the gfx1200/gfx1201 dual atomic-store fallback when b128
builtins are unavailable.

Co-authored-by: Cursor <cursoragent@cursor.com>
Add device fixture tests that mirror loadLLLine/storeLLLine and LL128
vector helpers, plus MPI AllReduce tests that force LL and registered
LL128 paths (including gfx1250 cooperative atomics).

Co-authored-by: Cursor <cursoragent@cursor.com>
Move load128NT, store128Plain, and store128LLFifo into op128.h so unit
and MPI tests exercise production code instead of duplicated helpers.
Thin wrappers remain in prims_ll.h; prims_ll128.h uses op128 via common.h.
MPI tests now assert NCCL_TUNING logs show the forced LL/LL128 protocol.

Co-authored-by: Cursor <cursoragent@cursor.com>
@alex-breslow-amd alex-breslow-amd changed the title test(rccl): add LL/LL128 vector load/store coverage test(rccl): add LL/LL128 vector ops coverage and op128 refactor Aug 24, 2026
Comment on lines +83 to +84
__hip_atomic_store((u64_gptr)v, v0, __ATOMIC_RELAXED, __HIP_MEMORY_SCOPE_SYSTEM);
__hip_atomic_store((u64_gptr)v + 1, v1, __ATOMIC_RELEASE, __HIP_MEMORY_SCOPE_SYSTEM);

@alex-breslow-amd alex-breslow-amd Sep 11, 2026 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

TODO: scoped clang atomic instead

@alex-breslow-amd
alex-breslow-amd force-pushed the users/abreslow/ll_cleanup branch from d4b8ddd to 808dc4f Compare September 24, 2026 18:50
@alex-breslow-amd
alex-breslow-amd changed the base branch from users/abreslow/ll_cleanup to develop September 24, 2026 18:55
@therock-pr-bot

Copy link
Copy Markdown

✅ All Policy Checks Passed

Check Status Details
📝 PR Description ✅ Pass —
⛔ Forbidden Files ✅ Pass —
🧪 Unit Test ✅ Pass —
🚫 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?

@github-actions

Copy link
Copy Markdown
Contributor

This pull request has been inactive for 25 days and will be marked as stale.

If you would like to keep this PR open, please:

  • Add new commits
  • Add a comment explaining why it should remain open

This PR will be automatically closed in 5 days if no further activity occurs.

@github-actions github-actions Bot added the Stale PR has no activity for 25+ days label Oct 20, 2026
@github-actions

Copy link
Copy Markdown
Contributor

This pull request has been automatically closed due to inactivity (30 days with no updates).

If you'd like to continue working on this, feel free to reopen the PR or create a new one.

@github-actions github-actions Bot closed this Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

organization: ROCm project: rccl Stale PR has no activity for 25+ days

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant