Commit Graph

239 Commits

Author SHA1 Message Date
Pedram Alizadeh 73acf3eeec modifying the tuning table to improve the performance of broadcast for 1MB to 64MB for single-node MI300X (#1172) 2024-05-08 15:49:33 -04:00
mberenjk 408278209d Adding ASAN changes to address memory leak issue" (#1170)
Co-authored-by: akolliasAMD <akollias@amd.com>
2024-05-08 09:16:00 -05:00
Wenkai Du b18784d8b8 Add compiler warning for uninitialized variable and fix (#1163)
* Add compiler warning for uninitialized variable and fix

* Add -Wsometimes-uninitialized

* Convert warning to error
2024-05-08 07:00:25 -07:00
Wenkai Du f679db6ff6 Use normal permute path when one NIC per GPU (#1171) 2024-05-08 06:59:57 -07:00
Wenkai Du b513c3970a Bypass NVIDIA Ampere related tuning (#1165) 2024-05-03 17:57:16 -07:00
Wenkai Du bb58b1c258 Fix ignore NUMA not being observed for NICs during model matching (#1164) 2024-05-03 16:42:07 -07:00
Wenkai Du 9e0c9b4ed8 Replace __HIP_PLATFORM_HCC__ with __HIP_PLATFORM_AMD__ (#1154) 2024-04-25 07:19:18 -07:00
BertanDogancay e1a835910e Merge remote-tracking branch 'nccl/master' into develop 2024-04-23 13:34:00 -07:00
Wenkai Du 220066197a Use hipExtMallocWithFlags to allocate host memory on APU (#1149)
Also use SM60 as CUDA compatibility level.
2024-04-17 16:56:38 -07:00
gilbertlee-amd 4cb62f999a Rail optimization for rings (#1140)
- Modifies the ring creation algorithm to be friendlier to rail-optimized topologies (should not affect classic fabric topologies)
2024-04-15 12:03:57 -06:00
Wenkai Du df98a6957d Add another Rome model (#1095) 2024-02-28 10:46:05 -08:00
Sylvain Jeaugey 48bb7fec79 2.20.5-1
Fix UDS connection failure when using ncclCommSplit. Issue #1185
2024-02-26 02:52:39 -08:00
Wenkai Du 74f9e5db64 Add new GPU model (#1080) 2024-02-23 12:19:42 -08:00
Bertan Dogancay 2fb12a9358 Merge pull request #1079 from BertanDogancay/2.19.4-sync
2.19.4 Sync
2024-02-16 09:50:11 -07:00
akolliasAMD bac57421c7 Allow bus id to be null (#1085)
* Allow bus id to be null
2024-02-15 16:36:51 -07:00
Sylvain Jeaugey b6475625fb 2.20.3-1
Add support for alternating rings, allow for cross-nic rings without
cross-rail communication.
Add support for user buffer registration for network send/recv.
Optimize aggregated operations to better utilize all channels.
Add flattening for BCM PCI gen5 switches.
Add support for inter-node NVLink communication
Add support for port fusion in NET/IB.
Add support for ReduceScatter and AllGather using Collnet.
Update net API to v8.
Fix hang during A2A connection.
2024-02-13 04:22:38 -08:00
Wenkai Du d999d9ad21 Merge remote-tracking branch 'rccl/develop' into 2.19.4 2024-02-09 11:31:03 -06:00
Wenkai Du 5669b0d7b6 2.18.5 fix (#1077)
* Revert "Revert "2.18.5-1""

This reverts commit 767fde8210.

* Fix initial net device value
2024-02-09 09:18:38 -08:00
Wenkai Du 704c9ef0d1 Doubling P2P channels per peer on single node gfx94x only (#1074) 2024-02-07 14:05:57 -08:00
Wenkai Du 1d989f6524 Doubling P2P channels per peer on single node only (#1069) 2024-02-02 12:41:00 -08:00
Wenkai Du 1a134b283b Merge remote-tracking branch 'rccl/develop' into 2.19.4 2024-01-31 11:53:10 -06:00
BertanDogancay 9ff53eeeae Merge remote-tracking branch 'nccl/master' into develop 2024-01-30 14:43:43 -08:00
Pedram Alizadeh ccfb35fa6d modifying the tuning table to improve the performance of allreduce for 8MB and 16MB for single-node MI300X (#1063) 2024-01-26 09:05:53 -05:00
Wenkai Du ffde530af5 Increase P2P channels per peer (#1060) 2024-01-25 11:21:58 -08:00
BertanDogancay 81ddf9de89 Merge remote-tracking branch 'nccl/v2.19' into develop 2024-01-24 15:25:33 -08:00
Wenkai Du 3325f96c56 Only use full MAXCHANNELS for gfx94x (#1050) 2024-01-17 09:00:49 -08:00
Pedram Alizadeh b08124c85d adding rccl tuning parameters for MI300X gfx942 with 8 GPUs single and multi-node (#1047) 2024-01-16 13:44:32 -05:00
Wenkai Du 261707d90a Add option to force enable network transport on single node (#1046) 2024-01-16 07:54:18 -08:00
PedramAlizadeh 767fde8210 Revert "2.18.5-1"
This reverts commit 559b70f86c.
2024-01-12 16:54:19 +00:00
Hossein Pourreza 735178c1fe cover more gpu/nic mapping cases (#1037) 2024-01-10 08:01:37 -08:00
PedramAlizadeh 0d515f9388 resolved conflicts, fixed the localNetCount/0 bug 2023-12-18 08:11:34 +00:00
Ziyue Yang 655742a3a6 Fully disable MSCCL when machine is not matched (#1017)
* Disable MSCCL algorithm meta loading when machine is not matched

* fully disable init

* fix potential segfault
2023-12-13 08:36:21 -08:00
Wenkai Du 53d807a5b9 msccl: disable on multi-node (#1018) 2023-12-13 07:41:40 -08:00
Wenkai Du 4ba65d1d6a Increase max channles to 64 (#993) 2023-12-01 16:01:11 -08:00
pradeep-ramanna 0b53f79196 Fix GPU to NIC mapping for peertopeer (#994) 2023-12-01 08:00:17 -08:00
Ziyue Yang 4bb0b4a380 Move MSCCL algorithm loading to initialization to workaround HIP graph conflict (#982)
* MSCCL: pre-specify channels and pre-load algorithms

* add mutex

* fix bug

* clean include

* disable all-gathers temporarily
2023-11-30 09:47:20 -08:00
Wenkai Du 50b2dd9fd7 Add special handling of gfx940 (#976)
* Add special handling of gfx940

* Update ring base
2023-11-22 15:07:36 -08:00
Sylvain Jeaugey b6d7438d31 Merge remote-tracking branch 'origin/master' 2023-11-20 05:07:23 -08:00
Alexander Grund cece6415b0 Fix use of CPUID overwriting registers in use.
CPUID writes to EAX, EBX, ECX, and EDX so the inline-asm must state that.
Otherwise currently in-use register might get overwritten which may
cause all kinds of failures like segfaults or wrong results.

Alternatively `__cpuid` can be used which avoids this and related issues.
So do that as suggested in the GCC issue https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112513
2023-11-14 12:38:02 +01:00
Sylvain Jeaugey 88d44d777f 2.19.4-1
Split transport connect phase into multiple steps to avoid port
exhaustion when connecting alltoall at large scale. Defaults to 128
peers per round.
Fix memory leaks on CUDA graph capture.
Fix alltoallv crash on self-sendrecv.
Make topology detection more deterministic when PCI speeds are not
available (fix issue #1020).
Properly close shared memory in NVLS resources.
Revert proxy detach after 5 seconds.
Add option to print progress during transport connect.
Add option to set NCCL_DEBUG to INFO on first WARN.
2023-11-13 10:36:12 -08:00
Wenkai Du dbcba2923b Use parallel init of LDS and adjust P2P channels for gfx94x (#943)
* Use parallel init of LDS and adjust P2P channels for gfx94x

* Move another init to parallel

* Fix NCCL_NCHANNELS_PER_PEER setting
2023-11-03 16:06:49 -07:00
Nilesh M Negi 1e5ca6820b Fix gcnArchName bug in topology dump (#937)
Signed-off-by: nileshnegi <Nilesh.Negi@amd.com>
2023-10-28 12:30:36 -05:00
Nilesh M Negi f22df90e5c remove gcnArch support (#920)
Signed-off-by: nileshnegi <Nilesh.Negi@amd.com>
2023-10-26 12:09:15 -05:00
Wenkai Du c4e65fd382 Add missing gfx942 support (#927) 2023-10-23 12:04:37 -07:00
Wenkai Du 4278a9918b Update rome models (#922) 2023-10-18 17:28:01 -07:00
Bertan Dogancay a6ff4618c7 Revert "Remove 2H4P condition from P2P channels adjustment (#890)" (#904)
This reverts commit 16dd05a58a.
2023-10-04 09:46:11 -06:00
Sylvain Jeaugey 8c6c595185 2.19.3-1
H800/H100 fixes and tuning.
Re-enable intra-process direct pointer buffer access when CUMEM is
enabled.
2023-09-26 05:57:15 -07:00
Sylvain Jeaugey f9c3dc251e 2.19.1-1
Add local user buffer registration for NVLink SHARP.
Add tuning plugin support.
Increase net API to v7 to allow for device-side packet reordering;
remove support for v4 plugins.
Add support for RoCE ECE.
Add support for C2C links.
Better detect SHM allocation failures to avoid crash with Bus Error.
Fix missing thread unlocks in bootstrap (Fixes #936).
Disable network flush by default on H100.
Move device code from src/collectives/device to src/device.
2023-09-26 05:50:33 -07:00
akolliasAMD b85d73c02e changed the form that RCCL_TREE uses (#888)
* changed the form that RCCL_TREE uses
2023-09-15 15:01:33 -06:00
Wenkai Du 16dd05a58a Remove 2H4P condition from P2P channels adjustment (#890) 2023-09-13 12:54:21 -07:00