Sarat Kamisetty
1719aa67be
passing down NET_OPTIONAL_RECV_COMPLETION hint to n/w plugin to enable optimizations ( #1752 )
...
Co-authored-by: Sarat Kamisetty <sakamiset@amd.com >
[ROCm/rccl commit: 783c073a03 ]
2025-07-25 10:26:58 -05:00
Mustafa Abduljabbar
b3a0cc5e96
Add optional bf16 software-triggered pipelining for reduceCopyPacks ( #1758 )
...
- Introduced double-buffering to reduce copy overhead and overlap BF16 arithmetic with data prefetching.
- Aimed to improve performance of reduction-based collectives by up to 10%.
- Implemented based on recommendations from Guennadi Riguer (AMD)
- Added --force-reduce-pipeline option to install.sh to activate this optimization for BF16 reductions.
- Feature is disabled by default to prevent regressions with large messages until auto-tuning logic is upstreamed.
---------
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com >
Co-authored-by: Pedram Alizadeh <pmohamma@amd.com >
[ROCm/rccl commit: 0ce20e7e07 ]
2025-07-25 10:57:05 -04:00
Atul Kulkarni
bd53bdf447
Added new unit tests for src/transport/shm.cc ( #1689 )
...
[ROCm/rccl commit: 1c3d1b3842 ]
2025-07-25 05:54:42 -05:00
Arm Patinyasakdikul
866058c6d9
Fix segfault when libibverbs returns 0 device. ( #1820 )
...
Fix: SWDEV-543816
[ROCm/rccl commit: 3c9c22bb52 ]
2025-07-23 15:18:52 -05:00
Wenkai Du
caff9764d3
Support fused all reduce and elementwise operations ( #1729 )
...
* Support fused all reduce and elementwise operations
Add additional "acc" parameter to RCCL Replayer logs
Add flag which indicates availability of new API
* Fix Recorder json parsing
* Remove unreachable code
* Remove extra acc pointer check
* .
* Revert "[DEVICE] Adding ability to choose unroll factor at runtime (#1734 )"
This reverts commit 4cadf3597c .
* Use noinline to reduce kernels linking time
* Don't use noinline for gfx942 and gfx950 to avoid perf regression
---------
Co-authored-by: AtlantaPepsi <timhu102@amd.com >
Co-authored-by: BertanDogancay <bertan.dogancay@gmail.com >
[ROCm/rccl commit: 9a4213356d ]
2025-07-23 09:04:17 -07:00
alex-breslow-amd
cbb648505a
Cheaper threadfence for gfx942 in postPeer [1/N]: enable for single node allreduce ( #1766 )
...
Boosts single node bfloat16 allreduce performance by up to 20% for some data sizes and provides gating with the RCCL_GFX942_CHEAP_FENCE_OFF environment variable
[ROCm/rccl commit: 11fabf1de1 ]
2025-07-22 07:15:15 -07:00
Rahul Vaidya
bd63518944
Add datatype validation for MSCCLPP AllGather ( #1816 )
...
Signed-off-by: rahulvaidya20 <ravaidya@amd.com >
[ROCm/rccl commit: c28d3d26a3 ]
2025-07-21 11:50:45 -05:00
Atul Kulkarni
c94fb7c58e
Code coverage improvements ( #1665 )
...
* Increased max stack size to 640
* Added new binary for executing unit tests
Added new unit tests for argcheck.cc and alt_rsmi.cc files
Modified the method to execute unit tests to cover static methods
by using a bash script to convert static to non-static functions
and variables on the fly restricted to debug build type.
[ROCm/rccl commit: 275fdd43c1 ]
2025-07-17 11:20:49 -05:00
Nilesh M Negi
2c0c02b211
[GRAPH] Match maxChannels for gfx942 CUs ( #1302 )
...
[ROCm/rccl commit: 6632183efe ]
2025-07-16 09:07:02 -05:00
Wenkai Du
670966f86b
Fix inline compilation issue with LL ( #1806 )
...
[ROCm/rccl commit: 106024b0db ]
2025-07-15 08:39:18 -07:00
isaki001
a20e65cfc0
gfx950 updated on LL thresholds for allreduce/allgather, update treeCorrection ( #1803 )
...
* change LL thresholds for allreduce/allgather and update treeCorrectionFactor
* update allGather LL cutoff
* adjust allgather LL/LL128 thresholds
[ROCm/rccl commit: 8d0f1a1cef ]
2025-07-15 09:10:19 -05:00
Wenkai Du
e2ad96bb96
Disable P2P net option by default ( #1793 )
...
[ROCm/rccl commit: 708ad75f7a ]
2025-07-14 08:55:39 -07:00
Bertan Dogancay
d4aafe31fa
[GEN] Fix typo in IFC code gen ( #1796 )
...
[ROCm/rccl commit: 7158adb57f ]
2025-07-11 09:19:39 -04:00
Nilesh M Negi
41c985462c
[BUILD] Use fmt-header instead of libfmt ( #1791 )
...
[ROCm/rccl commit: 6b4ad0fd74 ]
2025-07-10 17:19:53 -05:00
Nilesh M Negi
ba31e4e846
[INIT] Fix fallback for unsupported user-specified runtime unroll factor ( #1780 )
...
* [INIT] Fix fallback for unsupported user-specified runtime unroll factor
* Add CollTrace guard
* Move `commSetUnrollFactor()` to rccl_wrap.cc
* Modify comments in the device-code generator script
[ROCm/rccl commit: 2c099fe29a ]
2025-07-10 10:56:18 -05:00
Nilesh M Negi
1050eb13ac
[DEVICE] Fix validation errors for multi-node LL with gfx950 non-coherent system memory ( #1795 )
...
[ROCm/rccl commit: 68d6f99e0f ]
2025-07-10 09:05:46 -05:00
Mustafa Abduljabbar
caeaaa284c
Fix AllReduce regression due to previous max range increase for LL64/LL128 ( #1787 )
...
* Adjust tuning factor impacting more than 2 nodes
* Scale max LL128 size for > 2 nodes
* Retune max LL128 range for N > 2
[ROCm/rccl commit: 058264b3f3 ]
2025-07-09 19:17:10 -05:00
mberenjk
1623fcc7a1
Improving build time by removing the gfx11xx and host code from rccl_float8.h ( #1789 )
...
* removing extra build time by removing the gfx11xx arch from using hip_fp8
---------
Co-authored-by: Marzieh Berenjkoub <mberenjk@amd.com >
[ROCm/rccl commit: 697bee4ee8 ]
2025-07-09 14:03:47 -05:00
Bertan Dogancay
b1470b4e50
[GRAPH] Pass rank instead of busId due to a change in an internal function signature ( #1792 )
...
[ROCm/rccl commit: 9c89573580 ]
2025-07-08 08:45:54 -04:00
Bertan Dogancay
471fc6bff2
[DEVICE] Enable PAT algo for RCCL 1ppn ( #1756 )
...
* Enable PAT algo for RCCL 1ppn
[ROCm/rccl commit: e96c8473a1 ]
2025-07-04 13:45:18 -04:00
Wenkai Du
e031a4a2f4
msccl: use special send for LL on gfx950 ( #1788 )
...
[ROCm/rccl commit: ae9642d4bc ]
2025-07-03 04:16:18 -05:00
ryanhankins
f910d25563
Adding #include <dlfcn.h> in nccl_net.h to pass build ( #1786 )
...
[ROCm/rccl commit: 9d35581d5e ]
2025-07-02 19:21:53 -05:00
Wenkai Du
6db3b4cd4f
Add support for extended fine grained system memory pool ( #1770 )
...
* Add support for extended fine-grained system memory pool
* Use hipHostRegisterUncached
* Add "sc0 sc1" flags for LL store on gfx950
* Update after HIP flag is changed to hipExtHostRegisterUncached
[ROCm/rccl commit: 4640ab19b3 ]
2025-07-01 16:38:49 -05:00
Nilesh M Negi
d88d033aba
[RAS] Add support for RAS client ( #1748 )
...
Enable RAS client binary `rcclras`
[ROCm/rccl commit: 8d3a5542fb ]
2025-06-29 18:53:16 -05:00
isaki001
79473681e5
added tuning table for gfx950 ( #1779 )
...
* added tuning table for mi350
* remove erroneous string
[ROCm/rccl commit: 75d22b47cb ]
2025-06-29 15:45:39 -05:00
Bertan Dogancay
ac5dad287a
Switch to linear channel mapping for 2 nodes ( #1777 )
...
[ROCm/rccl commit: 358dc1bc84 ]
2025-06-28 09:10:18 -05:00
Arm Patinyasakdikul
c3b110f9e9
add warning if workFIFO is not available after multiple retries. ( #1772 )
...
* add warning if workFIFO is not available after multiple retries.
* Update src/enqueue.cc
Co-authored-by: corey-derochie-amd <161367113+corey-derochie-amd@users.noreply.github.com >
---------
Co-authored-by: corey-derochie-amd <161367113+corey-derochie-amd@users.noreply.github.com >
[ROCm/rccl commit: 265b1b3775 ]
2025-06-26 19:49:52 -05:00
Arm Patinyasakdikul
32e80aedc0
Update plugin to look for librccl-net.so. ( #1768 )
...
[ROCm/rccl commit: 71c788d4d7 ]
2025-06-26 16:59:38 -05:00
mberenjk
2c02ee0a99
changing the HIP-VERSION to 6.3 to avoid using hip_fp8 for older ROCm versions ( #1764 )
...
Co-authored-by: Marzieh Berenjkoub <mberenjk@.amd.com>
[ROCm/rccl commit: 5fb9d8f828 ]
2025-06-26 11:15:01 -05:00
Mustafa Abduljabbar
ffb17bd9d7
Revert LL64 cutoff points based on internal tuning ( #1771 )
...
[ROCm/rccl commit: 7e2ac00980 ]
2025-06-26 11:59:42 -04:00
Dingming Wu
d34a38ccfc
Add proxyTrace ( #1732 )
...
This feature tracks the proxy events and status of each send/recv op. ProxyTrace keeps a fixed number of active ops in host mem and dumps the status of each op when the program crashes or hangs.
[ROCm/rccl commit: 020dcf0a7c ]
2025-06-25 23:01:34 -05:00
Bertan Dogancay
eaa770a017
[NPKit] Create dump dir regardless of default or user provided path ( #1757 )
...
[ROCm/rccl commit: 675b495a00 ]
2025-06-21 21:18:20 -05:00
BertanDogancay
c0c9312e38
Merge remote-tracking branch 'nccl/master' into develop
...
[ROCm/rccl commit: aaf023976a ]
2025-06-20 07:54:49 -05:00
Sarat Kamisetty
e359e834f5
generic net plugin ctxt that is extensible for use in multiple APIs ( #1735 )
...
Co-authored-by: Sarat Kamisetty <sakamiset@amd.com >
[ROCm/rccl commit: fa0422f174 ]
2025-06-16 14:48:08 -07:00
Bertan Dogancay
9fa53cc454
[NPKit] Use default output directory when env var is not set ( #1747 )
...
[ROCm/rccl commit: 39211c6b41 ]
2025-06-16 15:26:53 -04:00
Tim
7051f217a7
replayer update v0 ( #1733 )
...
* First version of new replayer, with comments on future TODOs
* plus minor fixes for UT
* Updated format of recorder, especially in binary department, according to replayer's need
[ROCm/rccl commit: ba97c9c18b ]
2025-06-13 15:05:34 -04:00
Richard Barnes
2c0cc20a76
Enable -Wdeprecated-copy-with-user-provided-copy ( #1643 )
...
[ROCm/rccl commit: 4486d091b8 ]
2025-06-13 08:23:31 -07:00
Arm Patinyasakdikul
7f7f1cede3
Added missing copyright message. ( #1742 )
...
* Added missing copyright message.
* addressed comments.
[ROCm/rccl commit: 6c37ae9470 ]
2025-06-12 09:58:01 -05:00
corey-derochie-amd
2e7aa3556e
Deprecated MSCCL API functions ( #1740 )
...
[ROCm/rccl commit: 03fba66e71 ]
2025-06-11 17:52:09 -06:00
Nusrat Islam
99813a3288
msccl: adjust msccl threshold for bf16 ( #1736 )
...
* msccl: adjust msccl threshold for bf16
* Update src/collectives.cc
Co-authored-by: corey-derochie-amd <161367113+corey-derochie-amd@users.noreply.github.com >
---------
Co-authored-by: corey-derochie-amd <161367113+corey-derochie-amd@users.noreply.github.com >
[ROCm/rccl commit: 75c3c8215c ]
2025-06-11 09:09:57 -05:00
Arm Patinyasakdikul
69f7167b74
Fixed errorneous parenthesis. ( #1739 )
...
[ROCm/rccl commit: 600ace7f19 ]
2025-06-11 09:08:00 -05:00
Nilesh M Negi
4cadf3597c
[DEVICE] Adding ability to choose unroll factor at runtime ( #1734 )
...
* Adding runtime unroll factor selection via RCCL_UNROLL_FACTOR
* [BUILD] Add support for user-defined UNROLL for debugging
* Update CHANGELOG.md
* Fix COLLTRACE errors in CI
* Add debug statements for unroll and resolve warnings
* Incorporate UNROLL into ONLY_FUNCS for debugging
---------
Signed-off-by: nileshnegi <Nilesh.Negi@amd.com >
Co-authored-by: gilbertlee-amd <44450918+gilbertlee-amd@users.noreply.github.com >
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com >
[ROCm/rccl commit: 9d72be7b2f ]
2025-06-11 00:07:59 -05:00
Nilesh M Negi
b797b62f6b
[DEVICE] Use threadfence on gfx950 for LL protocol ( #1686 )
...
Signed-off-by: nileshnegi <Nilesh.Negi@amd.com >
[ROCm/rccl commit: b926203c05 ]
2025-06-09 01:26:07 -05:00
Nilesh M Negi
7abc3160e7
[BUILD] Enable LL128 on gfx950 ( #1731 )
...
* [BUILD] Enable LL128 on gfx950
* Modify comment in src/rccl_wrap.cc
* Update CHANGELOG
Signed-off-by: nileshnegi <Nilesh.Negi@amd.com >
Co-authored-by: corey-derochie-amd <161367113+corey-derochie-amd@users.noreply.github.com >
[ROCm/rccl commit: ef5b4ff630 ]
2025-06-09 00:25:54 -05:00
Arm Patinyasakdikul
f65777536f
Remove 'warpSize' compiler constant as it is deprecated in ROCm 7.0. ( #1720 )
...
* Remove 'warpSize' compiler constant as it is deprecated in ROCm 7.0.
* Create ncclShmemScratchWarpSize on host side for enqueue.cc.
* Update src/enqueue.cc
Co-authored-by: corey-derochie-amd <161367113+corey-derochie-amd@users.noreply.github.com >
* address comments
* fix number of threads
---------
Co-authored-by: corey-derochie-amd <161367113+corey-derochie-amd@users.noreply.github.com >
[ROCm/rccl commit: ec6efa9b26 ]
2025-06-06 07:34:43 -05:00
Arm Patinyasakdikul
8dd9747504
Increase default WORK_FIFO size to accommodate larger alltoall. ( #1722 )
...
[ROCm/rccl commit: d5b5f6b159 ]
2025-06-05 09:02:45 -05:00
Pedram Alizadeh
1ace5d05ed
Reapplying PR #1641 [AG and RS channel tuning] Add thread work threshold to tuning models and precompute reg index in LL128 ( #1713 )
...
* Reapply "[AG and RS channel tuning] Add thread work threshold to tuning models and precompute reg index in LL128 (#1641 )"
This reverts commit 943ad6f7820739385a0b54e81f823d0df1dbf71c.
* Decreasing NCCL_LL128_SHMEM_ELEMS_PER_THREAD from 16 to 8
[ROCm/rccl commit: 3f7c08648f ]
2025-06-04 13:22:11 -04:00
Avinash
a50ff2c3d3
SPLITCOMM design fix in src/misc/msccl ( #1715 )
...
* Fix TOC-TOU in mcclInit
* Improving vector resize thread safety
* Initial commit rank to comm change
* Removing unwanted include header changes
* Updated CHANGELOG.md
* Update CHANGELOG.md
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com >
---------
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com >
[ROCm/rccl commit: e94b360246 ]
2025-06-01 21:00:38 -05:00
alex-breslow-amd
4277b5aa88
Use One Slice per Basic Primitive for AllReduce, ReduceScatter, AllGather ( #1681 ) for Single Node on Some GFX9 Systems
...
Using a single slice rather than the typical two provides about 5% speedup (sometimes more or less) on some GFX9 systems for single node.
[ROCm/rccl commit: 2f6b20c00a ]
2025-05-29 16:17:35 -07:00
Nilesh M Negi
19ed482121
Re-apply unroll=1 and 112 channels for gfx950 ( #1706 )
...
* Reapply "[SRC] Enable unroll=1 for gfx950 (#1602 )" (#1667 )
This reverts commit a6972c0d09 .
* Reapply "[GRAPH] Increase default nChannels to 112 for gfx950 (#1596 )" (#1620 )
This reverts commit 1a2eca1756 .
[ROCm/rccl commit: 12517a957e ]
2025-05-28 14:58:10 -05:00