76333 Commits

Autor SHA1 Mensagem Data
Kamil Iskra 59f0bf79c5 NCCL 2.26.2-1
Profiler improvements
 * Add events for CUDA kernel start and end.
 * Allow network plugins to generate profiling events
 * Enable profiling on a per-operation basis, rather than per-communicator.
 * Add support for graph capturing.

Add implicit launch order
 * Allow to prevent deadlocks when using multiple NCCL communicators per
   device by implicitly ordering NCCL operations using the host program
   order. Disabled by default, set NCCL_LAUNCH_ORDER_IMPLICIT=1 to enable.
 * Add a complementary mechanism to detect host threads racing to launch
   to the same device. Enabled by default, set NCCL_LAUNCH_RACE_FATAL=0 to
   disable.

Optimize the PAT algorithm
 * Separate the computation and execution of PAT steps on different warps,
   allowing to run up to 16 PAT steps in parallel to significantly
   accelerate PAT and reduce its linear part.

Add support for setting QoS per communicator
 * Add a new trafficClass field to the communicator configuration, to
   allow the application to select a particular traffic class for a
   given communicator. The meaning of the traffic class is
   network-specific and should be set in accordance with the network
   configuration.
 * For the IB/RoCE plugin, existing config variables such as NCCL_IB_SL
   and NCCL_IB_TC take precedence.

Allow to enable GPU Direct RDMA specifically on C2C platforms
 * Disabled by default, set NCCL_NET_GDR_C2C=1 to enable.

Do not disable user buffer registration unless PXN is really used
 * Only disable UB when a communicator has more than one rank per
   node on any node.

RAS subsystem improvements
 * Report operation counts separately for each collective operation type.
 * Provide details about missing communicator ranks and reliably
   distinguish ranks that are no longer a given communicator's members
   (now reported as NOCOMM) from those that failed to respond.

Add support for timestamps to NCCL diagnostic messages
 * On by default for WARN messages; NCCL_DEBUG_TIMESTAMP_LEVELS can be
   used to enable them for other debug levels as well.
 * The format can be changed using the NCCL_DEBUG_TIMESTAMP_FORMAT config
   variable.

Reduce the memory usage with NVLink SHARP (NVLS)
 * Potentially save hundreds of MBs of device memory, considering the
   multicast buffer size granularity separately from the address alignment.

Update performance tuning for recent Intel CPUs
 * Improve algorithm/protocol selection on recent CPUs such as Emerald
   Rapids and Sapphire Rapids.

Improve channel scheduling when mixing LL and Simple operations.
 * Make LL operations account for 4x more traffic to ensure LL and simple
   operations complete at the same time.

Refactor the plugin code
 * Clean up and harmonize the support code across the network, tuner,
   and profiler plugins.

Add support for comment lines (starting with #) in the nccl.conf file
* Issue #1540.

Make user buffer registration problems print an INFO instead of a WARN.

Drop support for network plugin interface version 5.

Fix a race condition with split-shared communicators
 * NCCL could hang during connection setup if multiple communicators
   were grouped together that share resources.

Fix a performance regression when using NCCL_CROSS_NIC=1
 * NCCL would unnecessarily alternate rings, breaking the GPU-NIC
   associations.

Make GID index detection code more resilient
 * Dynamic GID detection code was giving up too soon if the
   detected index was not available (e.g., wasn't mapped to the
   container's sysfs).
 * Issues #1538, #1573.

Fix a race condition with non-blocking operation
 * Fix issue when creating a non-blocking communicator after a non-
   blocking collective operation on another communicator.

Fix shared memory usage on recent Blackwell GPUs.
 * Issues NVIDIA/nccl-tests#287, NVIDIA/nccl-tests#291, #1637.

Fix an error with NIC fusion and IB SHARP when recreating communicators
 * Disable the unloading of network plugins

Make the auto-merge failures in the NIC fusion non-fatal
 * This could happen when trying to merge IB and RoCE devices.

Fixes to ncclCommAbort
 * Fix hangs due to the progress thread spinning indefinitely on the
   network progress.
 * Reduce the abort time by up to two orders of magnitude.

Fix a crash when libnccl.so was dynamically unloaded
 * The RAS subsystem was missing a clean-up handler.

Fix a hang if the network plugin's test() call returns an error.

Fix a hang on heterogeneous architectures
 * Ensure we harmonize the tuning to avoid different tuning choices,
   causing a hang.

Fix double-free on failed ncclCommInitRank and ncclCommFinalize.

Fix a potential list traversal bug during a group launch of multiple
communicators
 * Issue #1599.

Unify the handling of NCCL configuration variables
 * Under rare circumstances, some variables specified in the config file
   could be ignored.


[ROCm/rccl commit: f44ac759fe]
2025-03-12 13:46:21 -07:00
Kamil Iskra f44ac759fe NCCL 2.26.2-1
Profiler improvements
 * Add events for CUDA kernel start and end.
 * Allow network plugins to generate profiling events
 * Enable profiling on a per-operation basis, rather than per-communicator.
 * Add support for graph capturing.

Add implicit launch order
 * Allow to prevent deadlocks when using multiple NCCL communicators per
   device by implicitly ordering NCCL operations using the host program
   order. Disabled by default, set NCCL_LAUNCH_ORDER_IMPLICIT=1 to enable.
 * Add a complementary mechanism to detect host threads racing to launch
   to the same device. Enabled by default, set NCCL_LAUNCH_RACE_FATAL=0 to
   disable.

Optimize the PAT algorithm
 * Separate the computation and execution of PAT steps on different warps,
   allowing to run up to 16 PAT steps in parallel to significantly
   accelerate PAT and reduce its linear part.

Add support for setting QoS per communicator
 * Add a new trafficClass field to the communicator configuration, to
   allow the application to select a particular traffic class for a
   given communicator. The meaning of the traffic class is
   network-specific and should be set in accordance with the network
   configuration.
 * For the IB/RoCE plugin, existing config variables such as NCCL_IB_SL
   and NCCL_IB_TC take precedence.

Allow to enable GPU Direct RDMA specifically on C2C platforms
 * Disabled by default, set NCCL_NET_GDR_C2C=1 to enable.

Do not disable user buffer registration unless PXN is really used
 * Only disable UB when a communicator has more than one rank per
   node on any node.

RAS subsystem improvements
 * Report operation counts separately for each collective operation type.
 * Provide details about missing communicator ranks and reliably
   distinguish ranks that are no longer a given communicator's members
   (now reported as NOCOMM) from those that failed to respond.

Add support for timestamps to NCCL diagnostic messages
 * On by default for WARN messages; NCCL_DEBUG_TIMESTAMP_LEVELS can be
   used to enable them for other debug levels as well.
 * The format can be changed using the NCCL_DEBUG_TIMESTAMP_FORMAT config
   variable.

Reduce the memory usage with NVLink SHARP (NVLS)
 * Potentially save hundreds of MBs of device memory, considering the
   multicast buffer size granularity separately from the address alignment.

Update performance tuning for recent Intel CPUs
 * Improve algorithm/protocol selection on recent CPUs such as Emerald
   Rapids and Sapphire Rapids.

Improve channel scheduling when mixing LL and Simple operations.
 * Make LL operations account for 4x more traffic to ensure LL and simple
   operations complete at the same time.

Refactor the plugin code
 * Clean up and harmonize the support code across the network, tuner,
   and profiler plugins.

Add support for comment lines (starting with #) in the nccl.conf file
* Issue #1540.

Make user buffer registration problems print an INFO instead of a WARN.

Drop support for network plugin interface version 5.

Fix a race condition with split-shared communicators
 * NCCL could hang during connection setup if multiple communicators
   were grouped together that share resources.

Fix a performance regression when using NCCL_CROSS_NIC=1
 * NCCL would unnecessarily alternate rings, breaking the GPU-NIC
   associations.

Make GID index detection code more resilient
 * Dynamic GID detection code was giving up too soon if the
   detected index was not available (e.g., wasn't mapped to the
   container's sysfs).
 * Issues #1538, #1573.

Fix a race condition with non-blocking operation
 * Fix issue when creating a non-blocking communicator after a non-
   blocking collective operation on another communicator.

Fix shared memory usage on recent Blackwell GPUs.
 * Issues NVIDIA/nccl-tests#287, NVIDIA/nccl-tests#291, #1637.

Fix an error with NIC fusion and IB SHARP when recreating communicators
 * Disable the unloading of network plugins

Make the auto-merge failures in the NIC fusion non-fatal
 * This could happen when trying to merge IB and RoCE devices.

Fixes to ncclCommAbort
 * Fix hangs due to the progress thread spinning indefinitely on the
   network progress.
 * Reduce the abort time by up to two orders of magnitude.

Fix a crash when libnccl.so was dynamically unloaded
 * The RAS subsystem was missing a clean-up handler.

Fix a hang if the network plugin's test() call returns an error.

Fix a hang on heterogeneous architectures
 * Ensure we harmonize the tuning to avoid different tuning choices,
   causing a hang.

Fix double-free on failed ncclCommInitRank and ncclCommFinalize.

Fix a potential list traversal bug during a group launch of multiple
communicators
 * Issue #1599.

Unify the handling of NCCL configuration variables
 * Under rare circumstances, some variables specified in the config file
   could be ignored.
2025-03-12 13:46:21 -07:00
Apurv Mishra 85c4b0020a kfdtest: limit GFX VRAM allocation to 1/4 sys mem
reduce the allocated memory for GFX VRAM as
KFD Evict test faced intermittent page faults,
which can be due to larger GFX CS BO size
2025-03-12 13:54:04 -04:00
Apurv Mishra 1e279a19c3 kfdtest: limit GFX VRAM allocation to 1/4 sys mem
reduce the allocated memory for GFX VRAM as
KFD Evict test faced intermittent page faults,
which can be due to larger GFX CS BO size


[ROCm/ROCR-Runtime commit: 85c4b0020a]
2025-03-12 13:54:04 -04:00
Mallya, Ameya Keshava 61a6b9bf60 Added KWS check
[ROCm/clr commit: cde722ad71]
2025-03-12 10:12:06 -07:00
Mallya, Ameya Keshava cde722ad71 Added KWS check 2025-03-12 10:12:06 -07:00
Mallya, Ameya Keshava f5131f3cc1 Added KWS check
[ROCm/hipother commit: a9b7bc22a8]
2025-03-12 10:11:31 -07:00
Mallya, Ameya Keshava a9b7bc22a8 Added KWS check 2025-03-12 10:11:31 -07:00
Mallya, Ameya Keshava ca5da681e4 Added KWS check
[ROCm/hip commit: a2490f4c31]
2025-03-12 10:10:40 -07:00
Mallya, Ameya Keshava a2490f4c31 Added KWS check 2025-03-12 10:10:40 -07:00
Mallya, Ameya Keshava 5c27fe7c8e Added rocm-ci-caller
[ROCm/clr commit: 35dcd43c59]
2025-03-12 10:05:57 -07:00
Mallya, Ameya Keshava 35dcd43c59 Added rocm-ci-caller 2025-03-12 10:05:57 -07:00
Mallya, Ameya Keshava 5c955f0bfd Added rocm-ci-caller
[ROCm/hipother commit: 95ee23540d]
2025-03-12 10:03:47 -07:00
Mallya, Ameya Keshava 95ee23540d Added rocm-ci-caller 2025-03-12 10:03:47 -07:00
Mallya, Ameya Keshava 735a5196e4 Adding rocm-ci-caller
[ROCm/hip commit: b4ac1d6c02]
2025-03-12 09:59:08 -07:00
Mallya, Ameya Keshava b4ac1d6c02 Adding rocm-ci-caller 2025-03-12 09:59:08 -07:00
Gerardo Hernandez 8c9aa07b3a SWDEV-420237 - Add __reduce_add_sync()
Change-Id: Ic8e4fab6b7aeb879d40b2c1419b30d1355a2bbdc


[ROCm/clr commit: 340d6bb69f]
2025-03-12 03:20:49 -04:00
Gerardo Hernandez 340d6bb69f SWDEV-420237 - Add __reduce_add_sync()
Change-Id: Ic8e4fab6b7aeb879d40b2c1419b30d1355a2bbdc
2025-03-12 03:20:49 -04:00
Galantsev, Dmitrii e8ae64260f [SWDEV-509342] Fix uninstall script on older RPM based systems (#181)
Change-Id: Ic85cd27e4460fbcdefab6fdd7e813a579c539525
2025-03-11 20:12:59 -05:00
Galantsev, Dmitrii 603f3665c5 [SWDEV-509342] Fix uninstall script on older RPM based systems (#181)
Change-Id: Ic85cd27e4460fbcdefab6fdd7e813a579c539525

[ROCm/amdsmi commit: e8ae64260f]
2025-03-11 20:12:59 -05:00
Galantsev, Dmitrii 14e81725f6 [SWDEV-509342] Fix uninstall script on older RPM based systems
Change-Id: Ic85cd27e4460fbcdefab6fdd7e813a579c539525
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2025-03-12 01:05:30 +00:00
Galantsev, Dmitrii 60704c3e36 [SWDEV-509342] Fix uninstall script on older RPM based systems
Change-Id: Ic85cd27e4460fbcdefab6fdd7e813a579c539525
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 14e81725f6]
2025-03-12 01:05:30 +00:00
Yiannis Papadopoulos c7936334cf rocr/aie: Changing variable names 2025-03-11 19:35:21 -04:00
Yiannis Papadopoulos 566269e8b7 rocr/aie: Changing variable names
[ROCm/ROCR-Runtime commit: c7936334cf]
2025-03-11 19:35:21 -04:00
Yiannis Papadopoulos fb33e2e724 rocr/aie: Handle non-HSA_STATUS_SUCCESS during VisitRegion 2025-03-11 19:35:21 -04:00
Yiannis Papadopoulos 8e111ff2f0 rocr/aie: Handle non-HSA_STATUS_SUCCESS during VisitRegion
[ROCm/ROCR-Runtime commit: fb33e2e724]
2025-03-11 19:35:21 -04:00
Poag, Charis 48cb5529d2 [SWDEV-493274/SWDEV-514998] Add AMD SMI partition tests + Add Guest amd-smi static --partition (#127)
* [SWDEV-493274/SWDEV-514998] Add AMD SMI partition tests + Add Guest amd-smi static --partition

Changes:
    - Added amd-smi static --partition for guest systems
    - Added C++ tests for memory and compute (accelerator) partitions
    - Added Python tests for amdsmi_get_gpu_vram_info(),
       amdsmi_get_gpu_accelerator_partition_profile_config()
    - Updated Python tests for
      amdsmi_get_gpu_accelerator_partition_profile()
      Now includes more profile and resource detail
    - Added amdsmi_get_gpu_xcd_counter();
      Tests provided for both C++/Python APIs
    - Added AmdSmiVramType & AmdSmiVramVendor: they were missing
      python testing required adding.

Change-Id: Ib6549d8ccc5fb68726f38745b87c78f890186022
Signed-off-by: Charis Poag <Charis.Poag@amd.com>
2025-03-11 16:38:46 -05:00
Poag, Charis 267fa91e8a [SWDEV-493274/SWDEV-514998] Add AMD SMI partition tests + Add Guest amd-smi static --partition (#127)
* [SWDEV-493274/SWDEV-514998] Add AMD SMI partition tests + Add Guest amd-smi static --partition

Changes:
    - Added amd-smi static --partition for guest systems
    - Added C++ tests for memory and compute (accelerator) partitions
    - Added Python tests for amdsmi_get_gpu_vram_info(),
       amdsmi_get_gpu_accelerator_partition_profile_config()
    - Updated Python tests for
      amdsmi_get_gpu_accelerator_partition_profile()
      Now includes more profile and resource detail
    - Added amdsmi_get_gpu_xcd_counter();
      Tests provided for both C++/Python APIs
    - Added AmdSmiVramType & AmdSmiVramVendor: they were missing
      python testing required adding.

Change-Id: Ib6549d8ccc5fb68726f38745b87c78f890186022
Signed-off-by: Charis Poag <Charis.Poag@amd.com>

[ROCm/amdsmi commit: 48cb5529d2]
2025-03-11 16:38:46 -05:00
Apurv Mishra de8f8f076d kfdtest: add blacklist for RHEL9 system
add tests for exclusion when running kfdtest
on RHEL9 system, tested with Navi 31

Signed-off-by: Apurv Mishra <apurv.mishra@amd.com>
2025-03-11 16:40:25 -04:00
Apurv Mishra 77f4bbfdf1 kfdtest: add blacklist for RHEL9 system
add tests for exclusion when running kfdtest
on RHEL9 system, tested with Navi 31

Signed-off-by: Apurv Mishra <apurv.mishra@amd.com>


[ROCm/ROCR-Runtime commit: de8f8f076d]
2025-03-11 16:40:25 -04:00
Galantsev, Dmitrii f5a4402ce5 RVS - Use config files and make GPU aware
Change-Id: I7a5c80ed4e6122d102e494d1ae38b4b7d40c42cd
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2025-03-11 15:39:16 -05:00
Galantsev, Dmitrii 68c02bda78 RVS - Use config files and make GPU aware
Change-Id: I7a5c80ed4e6122d102e494d1ae38b4b7d40c42cd
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: f5a4402ce5]
2025-03-11 15:39:16 -05:00
Kandula, Venkateshwar reddy 2a33544c0e SWDEV-518356: added check to avoid out of range hip host to device. (#267)
added check to avoid out of range.

Co-authored-by: Venkateshwar Reddy Kandula <vkandula@amd.com>

[ROCm/rocprofiler-sdk commit: 8735ae4eb0]
2025-03-11 15:37:59 -05:00
Kandula, Venkateshwar reddy 8735ae4eb0 SWDEV-518356: added check to avoid out of range hip host to device. (#267)
added check to avoid out of range.

Co-authored-by: Venkateshwar Reddy Kandula <vkandula@amd.com>
2025-03-11 15:37:59 -05:00
Lakshmi Kumar 083ef24843 Warning fixes (#528)
* rocm version check for targets

* check rocm targets for gfx

* fix warnings

* review comments

[ROCm/rocdecode commit: 2b4228a824]
2025-03-11 16:28:46 -04:00
Lakshmi Kumar 2b4228a824 Warning fixes (#528)
* rocm version check for targets

* check rocm targets for gfx

* fix warnings

* review comments
2025-03-11 16:28:46 -04:00
Bhardwaj, Gopesh b7dc66ad8b Updated changelog for 6.4 (#21) 2025-03-11 11:31:08 -07:00
Bhardwaj, Gopesh 978fbca608 Updated changelog for 6.4 (#21)
[ROCm/rocprofiler commit: b7dc66ad8b]
2025-03-11 11:31:08 -07:00
Sajina PK 3ca3d63d5c Fix for excluding JPEG and VCN activity test. (#135)
JPEG activity recording is currently only supported on MI300 serries.
VCN activity is supported in MI100 also but there is a bug currently being fixed by FW.

- Currently only testing the Activity verification tests for MI300
- Also moves the Jpeg image copying code to after the package is found.

[ROCm/rocprofiler-systems commit: e605e5d33f]
2025-03-11 14:12:28 -04:00
Sajina PK e605e5d33f Fix for excluding JPEG and VCN activity test. (#135)
JPEG activity recording is currently only supported on MI300 serries.
VCN activity is supported in MI100 also but there is a bug currently being fixed by FW.

- Currently only testing the Activity verification tests for MI300
- Also moves the Jpeg image copying code to after the package is found.
2025-03-11 14:12:28 -04:00
vedithal-amd e4fce70067 selective counter bugfix (#602)
Allow block filter of the form xx.x

[ROCm/rocprofiler-compute commit: 30752d1547]
2025-03-11 13:34:48 -04:00
vedithal-amd 30752d1547 selective counter bugfix (#602)
Allow block filter of the form xx.x
2025-03-11 13:34:48 -04:00
vedithal-amd 0f4b5e91bd Standalone binary no self execute fix (#603)
* Fix nuitka command

[ROCm/rocprofiler-compute commit: 15edbf475e]
2025-03-11 13:34:37 -04:00
vedithal-amd 15edbf475e Standalone binary no self execute fix (#603)
* Fix nuitka command
2025-03-11 13:34:37 -04:00
cfallows-amd 1eb6fef1b3 Add fp8 graph to standalone gui in analysis mode (#600)
Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

[ROCm/rocprofiler-compute commit: 097d30dc5c]
2025-03-11 13:32:37 -04:00
cfallows-amd 097d30dc5c Add fp8 graph to standalone gui in analysis mode (#600)
Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
2025-03-11 13:32:37 -04:00
Wenkai Du afd04a5117 Limit P2P channels per peer to not exceeding max channels (#1594)
* Limit P2P channels per peer to not exceeding max channels

* [UT] test single GPU cases for all collectives

* [UT] fix out of range root value

[ROCm/rccl commit: 4237caad69]
2025-03-11 09:32:09 -07:00
Wenkai Du 4237caad69 Limit P2P channels per peer to not exceeding max channels (#1594)
* Limit P2P channels per peer to not exceeding max channels

* [UT] test single GPU cases for all collectives

* [UT] fix out of range root value
2025-03-11 09:32:09 -07:00
Kiriti Gowda 1229372a2a CMake Modules - Config Files and version (#128)
* Setup - remove pkg-config install

* CMake Modules

* Version - note

* Package - updates

* Version - file updates

* Version File - remove static version file

* GitIgnore - version file

* Version File - Updates

* CMake Config - Targets updates

[ROCm/rocjpeg commit: 2020d2cf8f]
2025-03-11 11:41:09 -04:00
Kiriti Gowda 2020d2cf8f CMake Modules - Config Files and version (#128)
* Setup - remove pkg-config install

* CMake Modules

* Version - note

* Package - updates

* Version - file updates

* Version File - remove static version file

* GitIgnore - version file

* Version File - Updates

* CMake Config - Targets updates
2025-03-11 11:41:09 -04:00