mirror of
https://github.com/ROCm/ROCm.git
synced 2026-01-10 23:28:03 -05:00
Compare commits
23 Commits
docs/5.3.2
...
docs/5.2.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
89e60882ac | ||
|
|
b73ffa066c | ||
|
|
ca409fd1aa | ||
|
|
b4249d1e6a | ||
|
|
12dea8da01 | ||
|
|
29003a5250 | ||
|
|
dca03a3067 | ||
|
|
4498f57226 | ||
|
|
65180d309c | ||
|
|
07901f4a38 | ||
|
|
a6e350fbe1 | ||
|
|
e7c7e1ea3b | ||
|
|
6c541a111a | ||
|
|
9841218253 | ||
|
|
2915e7a484 | ||
|
|
0795eadc2d | ||
|
|
92c0940012 | ||
|
|
4a069ba039 | ||
|
|
6da407a83c | ||
|
|
27fb7070fd | ||
|
|
1f58c354e5 | ||
|
|
a9cda12159 | ||
|
|
de5e5c2b84 |
@@ -3,12 +3,19 @@
|
||||
|
||||
version: 2
|
||||
|
||||
build:
|
||||
os: ubuntu-22.04
|
||||
tools:
|
||||
python: "3.10"
|
||||
apt_packages:
|
||||
- "doxygen"
|
||||
- "graphviz" # For dot graphs in doxygen
|
||||
|
||||
python:
|
||||
install:
|
||||
- requirements: docs/sphinx/requirements.txt
|
||||
|
||||
sphinx:
|
||||
configuration: docs/conf.py
|
||||
|
||||
formats: [htmlzip, pdf, epub]
|
||||
|
||||
python:
|
||||
version: "3.8"
|
||||
install:
|
||||
- requirements: docs/sphinx/requirements.txt
|
||||
formats: []
|
||||
|
||||
672
CHANGELOG.md
672
CHANGELOG.md
@@ -15,678 +15,6 @@ The release notes for the ROCm platform.
|
||||
|
||||
-------------------
|
||||
|
||||
## ROCm 5.3.2
|
||||
<!-- markdownlint-disable first-line-h1 -->
|
||||
### Fixed Defects
|
||||
|
||||
The following known issues in ROCm v5.3.2 are fixed in this release.
|
||||
|
||||
#### Peer-to-Peer DMA Mapping Errors with SLES and RHEL
|
||||
|
||||
Peer-to-Peer Direct Memory Access (DMA) mapping errors on Dell systems (R7525 and R750XA) with SLES 15 SP3/SP4 and RHEL 9.0 are fixed in this release.
|
||||
|
||||
Previously, running rocminfo resulted in Peer-to-Peer DMA mapping errors.
|
||||
|
||||
#### RCCL Tuning Table
|
||||
|
||||
The RCCL tuning table is updated for supported platforms.
|
||||
|
||||
#### SGEMM (F32 GEMM) Routines in rocBLAS
|
||||
|
||||
Functional correctness failures in SGEMM (F32 GEMM) routines in rocBLAS for certain problem sizes and ranges are fixed in this release.
|
||||
|
||||
### Known Issues
|
||||
|
||||
This section consists of known issues in this release.
|
||||
|
||||
#### AMD Instinct™ MI200 SRIOV Virtualization Issue
|
||||
|
||||
There is a known issue in this ROCm v5.3 release with all AMD Instinct™ MI200 devices running within a virtual function (VF) under SRIOV virtualization. This issue will likely impact the functionality of SRIOV-based workloads but does not impact Discrete Device Assignment (DDA) or bare metal.
|
||||
|
||||
Until a fix is provided, users should rely on ROCm v5.2.3 to support their SRIOV workloads.
|
||||
|
||||
#### AMD Instinct™ MI200 Firmware Updates
|
||||
|
||||
Customers cannot update the Integrated Firmware Image (IFWI) for AMD Instinct™ MI200 accelerators.
|
||||
|
||||
An updated firmware maintenance bundle consisting of an installation tool and images specific to AMD Instinct™ MI200 accelerators is under planning and will be available soon.
|
||||
|
||||
#### Known Issue with rocThrust and rocPRIM Libraries
|
||||
|
||||
There is a known known issue with rocThrust and rocPRIM libraries supporting iterator and types in ROCm v5.3.x releases.
|
||||
|
||||
- thrust::merge no longer correctly supports different iterator types for `keys_input1` and `keys_input2`.
|
||||
|
||||
- rocprim::device_merge no longer correctly supports using different types for `keys_input1` and `keys_input2`.
|
||||
|
||||
This issue is currently under investigation and will be resolved in a future release.
|
||||
|
||||
### Library Changes in ROCM 5.3.2
|
||||
|
||||
| Library | Version |
|
||||
|---------|---------|
|
||||
| hipBLAS | [0.52.0](https://github.com/ROCmSoftwarePlatform/hipBLAS/releases/tag/rocm-5.3.2) |
|
||||
| hipCUB | [2.12.0](https://github.com/ROCmSoftwarePlatform/hipCUB/releases/tag/rocm-5.3.2) |
|
||||
| hipFFT | [1.0.9](https://github.com/ROCmSoftwarePlatform/hipFFT/releases/tag/rocm-5.3.2) |
|
||||
| hipSOLVER | [1.5.0](https://github.com/ROCmSoftwarePlatform/hipSOLVER/releases/tag/rocm-5.3.2) |
|
||||
| hipSPARSE | [2.3.1](https://github.com/ROCmSoftwarePlatform/hipSPARSE/releases/tag/rocm-5.3.2) |
|
||||
| rccl | [2.12.10](https://github.com/ROCmSoftwarePlatform/rccl/releases/tag/rocm-5.3.2) |
|
||||
| rocALUTION | [2.1.0](https://github.com/ROCmSoftwarePlatform/rocALUTION/releases/tag/rocm-5.3.2) |
|
||||
| rocBLAS | [2.45.0](https://github.com/ROCmSoftwarePlatform/rocBLAS/releases/tag/rocm-5.3.2) |
|
||||
| rocFFT | [1.0.18](https://github.com/ROCmSoftwarePlatform/rocFFT/releases/tag/rocm-5.3.2) |
|
||||
| rocPRIM | [2.11.0](https://github.com/ROCmSoftwarePlatform/rocPRIM/releases/tag/rocm-5.3.2) |
|
||||
| rocRAND | [2.10.15](https://github.com/ROCmSoftwarePlatform/rocRAND/releases/tag/rocm-5.3.2) |
|
||||
| rocSOLVER | [3.19.0](https://github.com/ROCmSoftwarePlatform/rocSOLVER/releases/tag/rocm-5.3.2) |
|
||||
| rocSPARSE | [2.2.0](https://github.com/ROCmSoftwarePlatform/rocSPARSE/releases/tag/rocm-5.3.2) |
|
||||
| rocThrust | [2.16.0](https://github.com/ROCmSoftwarePlatform/rocThrust/releases/tag/rocm-5.3.2) |
|
||||
| rocWMMA | [0.8](https://github.com/ROCmSoftwarePlatform/rocWMMA/releases/tag/rocm-5.3.2) |
|
||||
| Tensile | [4.34.0](https://github.com/ROCmSoftwarePlatform/Tensile/releases/tag/rocm-5.3.2) |
|
||||
|
||||
-------------------
|
||||
|
||||
## ROCm 5.3.0
|
||||
<!-- markdownlint-disable first-line-h1 -->
|
||||
### Deprecations and Warnings
|
||||
|
||||
#### HIP Perl Scripts Deprecation
|
||||
|
||||
The `hipcc` and `hipconfig` Perl scripts are deprecated. In a future release, compiled binaries will be available as `hipcc.bin` and `hipconfig.bin` as replacements for the Perl scripts.
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> There will be a transition period where the Perl scripts and compiled binaries are available before the scripts are removed. There will be no functional difference between the Perl scripts and their compiled binary counterpart. No user action is required. Once these are available, users can optionally switch to `hipcc.bin` and `hipconfig.bin`. The `hipcc`/`hipconfig` soft link will be assimilated to point from `hipcc`/`hipconfig` to the respective compiled binaries as the default option.
|
||||
|
||||
#### Linux Filesystem Hierarchy Standard for ROCm
|
||||
|
||||
ROCm packages have adopted the Linux foundation filesystem hierarchy standard in this release to ensure ROCm components follow open source conventions for Linux-based distributions. While moving to a new filesystem hierarchy, ROCm ensures backward compatibility with its 5.1 version or older filesystem hierarchy. See below for a detailed explanation of the new filesystem hierarchy and backward compatibility.
|
||||
|
||||
##### New Filesystem Hierarchy
|
||||
|
||||
The following is the new filesystem hierarchy:
|
||||
|
||||
```text
|
||||
/opt/rocm-<ver>
|
||||
| --bin
|
||||
| --All externally exposed Binaries
|
||||
| --libexec
|
||||
| --<component>
|
||||
| -- Component specific private non-ISA executables (architecture independent)
|
||||
| --include
|
||||
| -- <component>
|
||||
| --<header files>
|
||||
| --lib
|
||||
| --lib<soname>.so -> lib<soname>.so.major -> lib<soname>.so.major.minor.patch
|
||||
(public libraries linked with application)
|
||||
| --<component> (component specific private library, executable data)
|
||||
| --<cmake>
|
||||
| --components
|
||||
| --<component>.config.cmake
|
||||
| --share
|
||||
| --html/<component>/*.html
|
||||
| --info/<component>/*.[pdf, md, txt]
|
||||
| --man
|
||||
| --doc
|
||||
| --<component>
|
||||
| --<licenses>
|
||||
| --<component>
|
||||
| --<misc files> (arch independent non-executable)
|
||||
| --samples
|
||||
|
||||
```
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> ROCm will not support backward compatibility with the v5.1(old) file system hierarchy in its next major release.
|
||||
|
||||
For more information, refer to <https://refspecs.linuxfoundation.org/fhs.shtml>.
|
||||
|
||||
##### Backward Compatibility with Older Filesystems
|
||||
|
||||
ROCm has moved header files and libraries to its new location as indicated in the above structure and included symbolic-link and wrapper header files in its old location for backward compatibility.
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> ROCm will continue supporting backward compatibility until the next major release.
|
||||
|
||||
##### Wrapper header files
|
||||
|
||||
Wrapper header files are placed in the old location (`/opt/rocm-xxx/<component>/include`) with a warning message to include files from the new location (`/opt/rocm-xxx/include`) as shown in the example below:
|
||||
|
||||
```h
|
||||
// Code snippet from hip_runtime.h
|
||||
#pragma message “This file is deprecated. Use file from include path /opt/rocm-ver/include/ and prefix with hip”.
|
||||
#include "hip/hip_runtime.h"
|
||||
```
|
||||
|
||||
The wrapper header files’ backward compatibility deprecation is as follows:
|
||||
|
||||
- `#pragma` message announcing deprecation -- ROCm v5.2 release
|
||||
- `#pragma` message changed to `#warning` -- Future release
|
||||
- `#warning` changed to `#error` -- Future release
|
||||
- Backward compatibility wrappers removed -- Future release
|
||||
|
||||
##### Library files
|
||||
|
||||
Library files are available in the `/opt/rocm-xxx/lib` folder. For backward compatibility, the old library location (`/opt/rocm-xxx/<component>/lib`) has a soft link to the library at the new location.
|
||||
|
||||
Example:
|
||||
|
||||
```log
|
||||
$ ls -l /opt/rocm/hip/lib/
|
||||
total 4
|
||||
drwxr-xr-x 4 root root 4096 May 12 10:45 cmake
|
||||
lrwxrwxrwx 1 root root 24 May 10 23:32 libamdhip64.so -> ../../lib/libamdhip64.so
|
||||
```
|
||||
|
||||
##### CMake Config files
|
||||
|
||||
All CMake configuration files are available in the `/opt/rocm-xxx/lib/cmake/<component>` folder. For backward compatibility, the old CMake locations (`/opt/rocm-xxx/<component>/lib/cmake`) consist of a soft link to the new CMake config.
|
||||
|
||||
Example:
|
||||
|
||||
```log
|
||||
$ ls -l /opt/rocm/hip/lib/cmake/hip/
|
||||
total 0
|
||||
lrwxrwxrwx 1 root root 42 May 10 23:32 hip-config.cmake -> ../../../../lib/cmake/hip/hip-config.cmake
|
||||
```
|
||||
|
||||
### Fixed Defects
|
||||
|
||||
The following defects are fixed in this release.
|
||||
|
||||
These defects were identified and documented as known issues in previous ROCm releases and are fixed in the ROCm v5.3 release.
|
||||
|
||||
#### Kernel produces incorrect results with ROCm 5.2
|
||||
|
||||
User code did not initialize certain data constructs, leading to a correctness issue. A strict reading of the C++ standard suggests that failing to initialize these data constructs is undefined behavior. However, a special case was added for a specific compiler builtin to handle the uninitialized data in a defined manner.
|
||||
|
||||
The compiler fix consists of the following patches:
|
||||
|
||||
- A new `noundef` attribute is added. This attribute denotes when a function call argument or return val may never contain uninitialized bits.
|
||||
For more information, see <https://reviews.llvm.org/D81678>
|
||||
- The application of this attribute was refined such that it was not added to a specific compiler builtin where the compiler knows that inactive lanes do not impact program execution.
|
||||
|
||||
For more information, see <https://github.com/RadeonOpenCompute/llvm-project/commit/accf36c58409268ca1f216cdf5ad812ba97ceccd>.
|
||||
|
||||
### Known Issues
|
||||
|
||||
This section consists of known issues in this release.
|
||||
|
||||
#### Issue with OpenMP-Extras Package Upgrade
|
||||
|
||||
The `openmp-extras` package has been split into runtime (`openmp-extras-runtime`) and dev (`openmp-extras-devel`) packages. This change has broken the upgrade support for the `openmp-extras` package in RHEL/SLES.
|
||||
An available workaround in RHEL is to use the following command for upgrades:
|
||||
|
||||
```sh
|
||||
sudo yum upgrade rocm-language-runtime --allowerasing
|
||||
|
||||
```
|
||||
|
||||
An available workaround in SLES is to use the following command for upgrades:
|
||||
|
||||
```sh
|
||||
zypper update --force-resolution <meta-package>
|
||||
```
|
||||
|
||||
#### AMD Instinct™ MI200 SRIOV Virtualization Issue
|
||||
|
||||
There is a known issue in this ROCm v5.3 release with all AMD Instinct™ MI200 devices running within a virtual function (VF) under SRIOV virtualization. This issue will likely impact the functionality of SRIOV-based workloads, but does not impact Discrete Device Assignment (DDA) or Bare Metal.
|
||||
|
||||
Until a fix is provided, users should rely on ROCm v5.2.3 to support their SRIOV workloads.
|
||||
|
||||
#### System Crash when IMMOU is Enabled
|
||||
|
||||
If IOMMU is enabled in SBIOS and ROCm is installed, the system may report the following failure or errors when running workloads such as bandwidth test, clinfo, and HelloWord.cl and cause a system crash.
|
||||
|
||||
- IO PAGE FAULT
|
||||
- IRQ remapping does not support X2APIC mode
|
||||
- NMI error
|
||||
|
||||
Workaround: To avoid the system crash, add `amd_iommu=on iommu=pt` as the kernel bootparam, as indicated in the warning message.
|
||||
|
||||
### Library Changes in ROCM 5.3.0
|
||||
|
||||
| Library | Version |
|
||||
|---------|---------|
|
||||
| hipBLAS | 0.51.0 ⇒ [0.52.0](https://github.com/ROCmSoftwarePlatform/hipBLAS/releases/tag/rocm-5.3.0) |
|
||||
| hipCUB | 2.11.1 ⇒ [2.12.0](https://github.com/ROCmSoftwarePlatform/hipCUB/releases/tag/rocm-5.3.0) |
|
||||
| hipFFT | 1.0.8 ⇒ [1.0.9](https://github.com/ROCmSoftwarePlatform/hipFFT/releases/tag/rocm-5.3.0) |
|
||||
| hipSOLVER | 1.4.0 ⇒ [1.5.0](https://github.com/ROCmSoftwarePlatform/hipSOLVER/releases/tag/rocm-5.3.0) |
|
||||
| hipSPARSE | 2.2.0 ⇒ [2.3.1](https://github.com/ROCmSoftwarePlatform/hipSPARSE/releases/tag/rocm-5.3.0) |
|
||||
| rccl | [2.12.10](https://github.com/ROCmSoftwarePlatform/rccl/releases/tag/rocm-5.3.0) |
|
||||
| rocALUTION | 2.0.3 ⇒ [2.1.0](https://github.com/ROCmSoftwarePlatform/rocALUTION/releases/tag/rocm-5.3.0) |
|
||||
| rocBLAS | 2.44.0 ⇒ [2.45.0](https://github.com/ROCmSoftwarePlatform/rocBLAS/releases/tag/rocm-5.3.0) |
|
||||
| rocFFT | 1.0.17 ⇒ [1.0.18](https://github.com/ROCmSoftwarePlatform/rocFFT/releases/tag/rocm-5.3.0) |
|
||||
| rocPRIM | 2.10.14 ⇒ [2.11.0](https://github.com/ROCmSoftwarePlatform/rocPRIM/releases/tag/rocm-5.3.0) |
|
||||
| rocRAND | 2.10.14 ⇒ [2.10.15](https://github.com/ROCmSoftwarePlatform/rocRAND/releases/tag/rocm-5.3.0) |
|
||||
| rocSOLVER | 3.18.0 ⇒ [3.19.0](https://github.com/ROCmSoftwarePlatform/rocSOLVER/releases/tag/rocm-5.3.0) |
|
||||
| rocSPARSE | [2.2.0](https://github.com/ROCmSoftwarePlatform/rocSPARSE/releases/tag/rocm-5.3.0) |
|
||||
| rocThrust | 2.15.0 ⇒ [2.16.0](https://github.com/ROCmSoftwarePlatform/rocThrust/releases/tag/rocm-5.3.0) |
|
||||
| rocWMMA | 0.7 ⇒ [0.8](https://github.com/ROCmSoftwarePlatform/rocWMMA/releases/tag/rocm-5.3.0) |
|
||||
| Tensile | 4.33.0 ⇒ [4.34.0](https://github.com/ROCmSoftwarePlatform/Tensile/releases/tag/rocm-5.3.0) |
|
||||
|
||||
#### hipBLAS 0.52.0
|
||||
|
||||
hipBLAS 0.52.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- Added --cudapath option to install.sh to allow user to specify which cuda build they would like to use.
|
||||
- Added --installcuda option to install.sh to install cuda via a package manager. Can be used with new --installcudaversion
|
||||
option to specify which version of cuda to install.
|
||||
|
||||
##### Fixed
|
||||
|
||||
- Fixed #includes to support a compiler version.
|
||||
- Fixed client dependency support in install.sh
|
||||
|
||||
#### hipCUB 2.12.0
|
||||
|
||||
hipCUB 2.12.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- UniqueByKey device algorithm
|
||||
- SubtractLeft, SubtractLeftPartialTile, SubtractRight, SubtractRightPartialTile overloads in BlockAdjacentDifference.
|
||||
- The old overloads (FlagHeads, FlagTails, FlagHeadsAndTails) are deprecated.
|
||||
- DeviceAdjacentDifference algorithm.
|
||||
- Extended benchmark suite of `DeviceHistogram`, `DeviceScan`, `DevicePartition`, `DeviceReduce`,
|
||||
`DeviceSegmentedReduce`, `DeviceSegmentedRadixSort`, `DeviceRadixSort`, `DeviceSpmv`, `DeviceMergeSort`,
|
||||
`DeviceSegmentedSort`
|
||||
|
||||
##### Changed
|
||||
|
||||
- Obsolated type traits defined in util_type.hpp. Use the standard library equivalents instead.
|
||||
- CUB backend references CUB and thrust version 1.16.0.
|
||||
- DeviceRadixSort's num_items parameter's type is now templated instead of being an int.
|
||||
- If an integral type with a size at most 4 bytes is passed (i.e. an int), the former logic applies.
|
||||
- Otherwise the algorithm uses a larger indexing type that makes it possible to sort input data over 2**32 elements.
|
||||
- Improved build parallelism of the test suite by splitting up large compilation units
|
||||
|
||||
#### hipFFT 1.0.9
|
||||
|
||||
hipFFT 1.0.9 for ROCm 5.3.0
|
||||
|
||||
##### Changed
|
||||
|
||||
- Clean up build warnings.
|
||||
- GNUInstall Dir enhancements.
|
||||
- Requires gtest 1.11.
|
||||
|
||||
#### hipSOLVER 1.5.0
|
||||
|
||||
hipSOLVER 1.5.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- Added functions
|
||||
- syevj
|
||||
- hipsolverSsyevj_bufferSize, hipsolverDsyevj_bufferSize, hipsolverCheevj_bufferSize, hipsolverZheevj_bufferSize
|
||||
- hipsolverSsyevj, hipsolverDsyevj, hipsolverCheevj, hipsolverZheevj
|
||||
- syevjBatched
|
||||
- hipsolverSsyevjBatched_bufferSize, hipsolverDsyevjBatched_bufferSize, hipsolverCheevjBatched_bufferSize, hipsolverZheevjBatched_bufferSize
|
||||
- hipsolverSsyevjBatched, hipsolverDsyevjBatched, hipsolverCheevjBatched, hipsolverZheevjBatched
|
||||
- sygvj
|
||||
- hipsolverSsygvj_bufferSize, hipsolverDsygvj_bufferSize, hipsolverChegvj_bufferSize, hipsolverZhegvj_bufferSize
|
||||
- hipsolverSsygvj, hipsolverDsygvj, hipsolverChegvj, hipsolverZhegvj
|
||||
- Added compatibility-only functions
|
||||
- syevdx/heevdx
|
||||
- hipsolverDnSsyevdx_bufferSize, hipsolverDnDsyevdx_bufferSize, hipsolverDnCheevdx_bufferSize, hipsolverDnZheevdx_bufferSize
|
||||
- hipsolverDnSsyevdx, hipsolverDnDsyevdx, hipsolverDnCheevdx, hipsolverDnZheevdx
|
||||
- sygvdx/hegvdx
|
||||
- hipsolverDnSsygvdx_bufferSize, hipsolverDnDsygvdx_bufferSize, hipsolverDnChegvdx_bufferSize, hipsolverDnZhegvdx_bufferSize
|
||||
- hipsolverDnSsygvdx, hipsolverDnDsygvdx, hipsolverDnChegvdx, hipsolverDnZhegvdx
|
||||
- Added --mem_query option to hipsolver-bench, which will print the amount of device memory workspace required by the function.
|
||||
|
||||
##### Changed
|
||||
|
||||
- The rocSOLVER backend will now set `info` to zero if rocSOLVER does not reference `info`. (Applies to orgbr/ungbr, orgqr/ungqr, orgtr/ungtr, ormqr/unmqr, ormtr/unmtr, gebrd, geqrf, getrs, potrs, and sytrd/hetrd).
|
||||
- gesvdj will no longer require extra workspace to transpose `V` when `jobz` is `HIPSOLVER_EIG_MODE_VECTOR` and `econ` is 1.
|
||||
|
||||
##### Fixed
|
||||
|
||||
- Fixed Fortran return value declarations within hipsolver_module.f90
|
||||
- Fixed gesvdj_bufferSize returning `HIPSOLVER_STATUS_INVALID_VALUE` when `jobz` is `HIPSOLVER_EIG_MODE_NOVECTOR` and 1 <= `ldv` < `n`
|
||||
- Fixed gesvdj returning `HIPSOLVER_STATUS_INVALID_VALUE` when `jobz` is `HIPSOLVER_EIG_MODE_VECTOR`, `econ` is 1, and `m` < `n`
|
||||
|
||||
#### hipSPARSE 2.3.1
|
||||
|
||||
hipSPARSE 2.3.1 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- Add SpMM and SpMM batched for CSC format
|
||||
|
||||
#### rocALUTION 2.1.0
|
||||
|
||||
rocALUTION 2.1.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- Benchmarking tool
|
||||
- Ext+I Interpolation with sparsify strategies added for RS-AMG
|
||||
|
||||
##### Improved
|
||||
|
||||
- ParallelManager
|
||||
|
||||
#### rocBLAS 2.45.0
|
||||
|
||||
rocBLAS 2.45.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- install.sh option --upgrade_tensile_venv_pip to upgrade Pip in Tensile Virtual Environment. The corresponding CMake option is TENSILE_VENV_UPGRADE_PIP.
|
||||
- install.sh option --relocatable or -r adds rpath and removes ldconf entry on rocBLAS build.
|
||||
- install.sh option --lazy-library-loading to enable on-demand loading of tensile library files at runtime to speedup rocBLAS initialization.
|
||||
- Support for RHEL9 and CS9.
|
||||
- Added Numerical checking routine for symmetric, Hermitian, and triangular matrices, so that they could be checked for any numerical abnormalities such as NaN, Zero, infinity and denormal value.
|
||||
|
||||
##### Optimizations
|
||||
|
||||
- trmm_outofplace performance improvements for all sizes and data types using block-recursive algorithm.
|
||||
- herkx performance improvements for all sizes and data types using block-recursive algorithm.
|
||||
- syrk/herk performance improvements by utilising optimised syrkx/herkx code.
|
||||
- symm/hemm performance improvements for all sizes and datatypes using block-recursive algorithm.
|
||||
|
||||
##### Changed
|
||||
|
||||
- Unifying library logic file names: affects HBH (->HHS_BH), BBH (->BBS_BH), 4xi8BH (->4xi8II_BH). All HPA types are using the new naming convention now.
|
||||
- Level 3 function argument checking when the handle is set to rocblas_pointer_mode_host now returns the status of rocblas_status_invalid_pointer only for pointers that must be dereferenced based on the alpha and beta argument values. With handle mode rocblas_pointer_mode_device only pointers that are always dereferenced regardless of alpha and beta values are checked and so may lead to a return status of rocblas_status_invalid_pointer. This improves consistency with legacy BLAS behaviour.
|
||||
- Level 1, 2, and 3 function argument checking for enums is now more rigorously matching legacy BLAS so returns rocblas_status_invalid_value if arguments do not match the accepted subset.
|
||||
- Add quick-return for internal trmm and gemm template functions.
|
||||
- Moved function block sizes to a shared header file.
|
||||
- Level 1, 2, and 3 functions use rocblas_stride datatype for offset.
|
||||
- Modified the matrix and vector memory allocation in our test infrastructure for all Level 1, 2, 3 and BLAS_EX functions.
|
||||
- Added specific initialization for symmetric, Hermitian, and triangular matrix types in our test infrastructure.
|
||||
- Added NaN tests to the test infrastructure for the rest of Level 3, BLAS_EX functions.
|
||||
|
||||
##### Fixed
|
||||
|
||||
- Improved logic to #include <filesystem> vs <experimental/filesystem>.
|
||||
- install.sh -s option to build rocblas as a static library.
|
||||
- dot function now sets the device results asynchronously for N <= 0
|
||||
|
||||
##### Deprecated
|
||||
|
||||
- is_complex helper is now deprecated. Use rocblas_is_complex instead.
|
||||
- The enum truncate_t and the value truncate is now deprecated and will removed from the ROCm release 6.0. It is replaced by rocblas_truncate_t and rocblas_truncate, respectively. The new enum rocblas_truncate_t and the value rocblas_truncate could be used from this ROCm release for an easy transition.
|
||||
|
||||
##### Removed
|
||||
|
||||
- install.sh options --hip-clang , --no-hip-clang, --merge-files, --no-merge-files are removed.
|
||||
|
||||
#### rocFFT 1.0.18
|
||||
|
||||
rocFFT 1.0.18 for ROCm 5.3.0
|
||||
|
||||
##### Changed
|
||||
|
||||
- Runtime compilation cache now looks for environment variables XDG_CACHE_HOME (on Linux) and LOCALAPPDATA (on
|
||||
Windows) before falling back to HOME.
|
||||
|
||||
##### Optimizations
|
||||
|
||||
- Optimized 2D R2C/C2R to use 2-kernel plans where possible.
|
||||
- Improved performance of the Bluestein algorithm.
|
||||
- Optimized sbcc-168 and 100 by using half-lds.
|
||||
|
||||
##### Fixed
|
||||
|
||||
- Fixed occasional failures to parallelize runtime compilation of kernels.
|
||||
Failures would be retried serially and ultimately succeed, but this would take extra time.
|
||||
- Fixed failures of some R2C 3D transforms that use the unsupported TILE_UNALGNED SBRC kernels.
|
||||
An example is 98^3 R2C out-of-place.
|
||||
- Fixed bugs in SBRC_ERC type.
|
||||
|
||||
#### rocPRIM 2.11.0
|
||||
|
||||
rocPRIM 2.11.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- New functions `subtract_left` and `subtract_right` in `block_adjacent_difference` to apply functions
|
||||
on pairs of adjacent items distributed between threads in a block.
|
||||
- New device level `adjacent_difference` primitives.
|
||||
- Added experimental tooling for automatic kernel configuration tuning for various architectures
|
||||
- Benchmarks collect and output more detailed system information
|
||||
- CMake functionality to improve build parallelism of the test suite that splits compilation units by
|
||||
function or by parameters.
|
||||
- Reverse iterator.
|
||||
|
||||
#### rocRAND 2.10.15
|
||||
|
||||
rocRAND 2.10.15 for ROCm 5.3.0
|
||||
|
||||
##### Changed
|
||||
|
||||
- Increased number of warmup iterations for rocrand_benchmark_generate from 5 to 15 to eliminate corner cases that would generate artificially high benchmark scores.
|
||||
|
||||
#### rocSOLVER 3.19.0
|
||||
|
||||
rocSOLVER 3.19.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- Partial eigensolver routines for symmetric/hermitian matrices:
|
||||
- SYEVX (with batched and strided\_batched versions)
|
||||
- HEEVX (with batched and strided\_batched versions)
|
||||
- Generalized symmetric- and hermitian-definite partial eigensolvers:
|
||||
- SYGVX (with batched and strided\_batched versions)
|
||||
- HEGVX (with batched and strided\_batched versions)
|
||||
- Eigensolver routines for symmetric/hermitian matrices using Jacobi algorithm:
|
||||
- SYEVJ (with batched and strided\_batched versions)
|
||||
- HEEVJ (with batched and strided\_batched versions)
|
||||
- Generalized symmetric- and hermitian-definite eigensolvers using Jacobi algorithm:
|
||||
- SYGVJ (with batched and strided\_batched versions)
|
||||
- HEGVJ (with batched and strided\_batched versions)
|
||||
- Added --profile_kernels option to rocsolver-bench, which will include kernel calls in the
|
||||
profile log (if profile logging is enabled with --profile).
|
||||
|
||||
##### Changed
|
||||
|
||||
- Changed rocsolver-bench result labels `cpu_time` and `gpu_time` to
|
||||
`cpu_time_us` and `gpu_time_us`, respectively.
|
||||
|
||||
##### Removed
|
||||
|
||||
- Removed dependency on cblas from the rocsolver test and benchmark clients.
|
||||
|
||||
##### Fixed
|
||||
|
||||
- Fixed incorrect SYGS2/HEGS2, SYGST/HEGST, SYGV/HEGV, and SYGVD/HEGVD results for batch counts
|
||||
larger than 32.
|
||||
- Fixed STEIN memory access fault when nev is 0.
|
||||
- Fixed incorrect STEBZ results for close eigenvalues when range = index.
|
||||
- Fixed git unsafe repository error when building with `./install.sh -cd` as a non-root user.
|
||||
|
||||
#### rocThrust 2.16.0
|
||||
|
||||
rocThrust 2.16.0 for ROCm 5.3.0
|
||||
|
||||
##### Changed
|
||||
|
||||
- rocThrust functionality dependent on device malloc works is functional as ROCm 5.2 reneabled device malloc. Device launched `thrust::sort` and `thrust::sort_by_key` are available for use.
|
||||
|
||||
#### rocWMMA 0.8
|
||||
|
||||
rocWMMA 0.8 for ROCm 5.3.0
|
||||
|
||||
#### Tensile 4.34.0
|
||||
|
||||
Tensile 4.34.0 for ROCm 5.3.0
|
||||
|
||||
##### Added
|
||||
|
||||
- Lazy loading of solution libraries and code object files
|
||||
- Support for dictionary style logic files
|
||||
- Support for decision tree based logic files using dictionary format
|
||||
- DecisionTreeLibrary for solution selection
|
||||
- DirectToLDS support for HGEMM
|
||||
- DirectToVgpr support for SGEMM
|
||||
- Grid based distance metric for solution selection
|
||||
- Support for gfx11xx
|
||||
- Support for DirectToVgprA/B + TLU=False
|
||||
- ForkParameters Groups as a way of specifying solution parameters
|
||||
- Support for a new Tensile yaml config format
|
||||
- TensileClientConfig for generating Tensile client config files
|
||||
- Options for TensileCreateLibrary to build client and create client config file
|
||||
|
||||
##### Optimizations
|
||||
|
||||
- Solution generation is now cached and is not repeated if solution parameters are unchanged
|
||||
|
||||
##### Changed
|
||||
|
||||
- Default MACInstruction to FMA
|
||||
|
||||
##### Fixed
|
||||
|
||||
- Accept StaggerUStride=0 as valid
|
||||
- Reject invalid data types for UnrollLoopEfficiencyEnable
|
||||
- Fix invalid code generation issues related to DirectToVgpr
|
||||
- Return hipErrorNotFound if no modules are loaded
|
||||
- Fix performance drop for NN ZGEMM with 96x64 macro tile
|
||||
- Fix memory violation for general batched kernels when alpha/beta/K = 0
|
||||
|
||||
-------------------
|
||||
|
||||
## ROCm 5.2.3
|
||||
<!-- markdownlint-disable first-line-h1 -->
|
||||
### Changes in This Release
|
||||
|
||||
#### Ubuntu 18.04 End of Life Announcement
|
||||
|
||||
Support for Ubuntu 18.04 ends in this release. Future releases of ROCm will not provide prebuilt packages for Ubuntu 18.04.
|
||||
HIP and Other Runtimes
|
||||
|
||||
#### HIP Runtime
|
||||
|
||||
##### Fixes
|
||||
|
||||
- A bug was discovered in the HIP graph capture implementation in the ROCm v5.2.0 release. If the same kernel is called twice (with different argument values) in a graph capture, the implementation only kept the argument values for the second kernel call.
|
||||
|
||||
- A bug was introduced in the hiprtc implementation in the ROCm v5.2.0 release. This bug caused the `hiprtcGetLoweredName` call to fail for named expressions with whitespace in it.
|
||||
|
||||
Example:
|
||||
|
||||
The named expression `my_sqrt<complex<double>>` passed but `my_sqrt<complex<double >>` failed.
|
||||
ROCm Libraries
|
||||
|
||||
#### RCCL
|
||||
|
||||
##### Added
|
||||
|
||||
Compatibility with NCCL 2.12.10
|
||||
|
||||
- Packages for test and benchmark executables on all supported OSes using CPack
|
||||
|
||||
- Added custom signal handler - opt-in with RCCL_ENABLE_SIGNALHANDLER=1
|
||||
|
||||
- Additional details provided if Binary File Descriptor library (BFD) is pre-installed.
|
||||
|
||||
- Added experimental support for using multiple ranks per device
|
||||
|
||||
- Requires using a new interface to create communicator (ncclCommInitRankMulti), refer to the interface documentation for details.
|
||||
|
||||
- To avoid potential deadlocks, user might have to set an environment variables increasing the number of hardware queues. For example,
|
||||
|
||||
```sh
|
||||
export GPU_MAX_HW_QUEUES=16
|
||||
```
|
||||
|
||||
- Added support for reusing ports in NET/IB channels
|
||||
|
||||
- Opt-in with NCCL_IB_SOCK_CLIENT_PORT_REUSE=1 and NCCL_IB_SOCK_SERVER_PORT_REUSE=1
|
||||
|
||||
- When "Call to bind failed: Address already in use" error happens in large-scale AlltoAll(for example, >=64 MI200 nodes), users are suggested to opt-in either one or both of the options to resolve the massive port usage issue
|
||||
|
||||
- Avoid using NCCL_IB_SOCK_SERVER_PORT_REUSE when NCCL_NCHANNELS_PER_NET_PEER is tuned >1
|
||||
|
||||
##### Removed
|
||||
|
||||
- Removed experimental clique-based kernels
|
||||
|
||||
#### Development Tools
|
||||
|
||||
No notable changes in this release for development tools, including the compiler, profiler, and debugger
|
||||
Deployment and Management Tools
|
||||
|
||||
No notable changes in this release for deployment and management tools.
|
||||
Older ROCm Releases
|
||||
|
||||
For release information for older ROCm releases, refer to <https://github.com/RadeonOpenCompute/ROCm/blob/master/CHANGELOG.md>
|
||||
|
||||
### Library Changes in ROCM 5.2.3
|
||||
|
||||
| Library | Version |
|
||||
|---------|---------|
|
||||
| hipBLAS | [0.51.0](https://github.com/ROCmSoftwarePlatform/hipBLAS/releases/tag/rocm-5.2.3) |
|
||||
| hipCUB | [2.11.1](https://github.com/ROCmSoftwarePlatform/hipCUB/releases/tag/rocm-5.2.3) |
|
||||
| hipFFT | [1.0.8](https://github.com/ROCmSoftwarePlatform/hipFFT/releases/tag/rocm-5.2.3) |
|
||||
| hipSOLVER | [1.4.0](https://github.com/ROCmSoftwarePlatform/hipSOLVER/releases/tag/rocm-5.2.3) |
|
||||
| hipSPARSE | [2.2.0](https://github.com/ROCmSoftwarePlatform/hipSPARSE/releases/tag/rocm-5.2.3) |
|
||||
| rccl | 2.11.4 ⇒ [2.12.10](https://github.com/ROCmSoftwarePlatform/rccl/releases/tag/rocm-5.2.3) |
|
||||
| rocALUTION | [2.0.3](https://github.com/ROCmSoftwarePlatform/rocALUTION/releases/tag/rocm-5.2.3) |
|
||||
| rocBLAS | [2.44.0](https://github.com/ROCmSoftwarePlatform/rocBLAS/releases/tag/rocm-5.2.3) |
|
||||
| rocFFT | [1.0.17](https://github.com/ROCmSoftwarePlatform/rocFFT/releases/tag/rocm-5.2.3) |
|
||||
| rocPRIM | [2.10.14](https://github.com/ROCmSoftwarePlatform/rocPRIM/releases/tag/rocm-5.2.3) |
|
||||
| rocRAND | [2.10.14](https://github.com/ROCmSoftwarePlatform/rocRAND/releases/tag/rocm-5.2.3) |
|
||||
| rocSOLVER | [3.18.0](https://github.com/ROCmSoftwarePlatform/rocSOLVER/releases/tag/rocm-5.2.3) |
|
||||
| rocSPARSE | [2.2.0](https://github.com/ROCmSoftwarePlatform/rocSPARSE/releases/tag/rocm-5.2.3) |
|
||||
| rocThrust | [2.15.0](https://github.com/ROCmSoftwarePlatform/rocThrust/releases/tag/rocm-5.2.3) |
|
||||
| rocWMMA | [0.7](https://github.com/ROCmSoftwarePlatform/rocWMMA/releases/tag/rocm-5.2.3) |
|
||||
| Tensile | [4.33.0](https://github.com/ROCmSoftwarePlatform/Tensile/releases/tag/rocm-5.2.3) |
|
||||
|
||||
#### rccl 2.12.10
|
||||
|
||||
RCCL 2.12.10 for ROCm 5.2.3
|
||||
|
||||
##### Added
|
||||
|
||||
- Compatibility with NCCL 2.12.10
|
||||
- Packages for test and benchmark executables on all supported OSes using CPack.
|
||||
- Adding custom signal handler - opt-in with RCCL_ENABLE_SIGNALHANDLER=1
|
||||
- Additional details provided if Binary File Descriptor library (BFD) is pre-installed
|
||||
- Adding support for reusing ports in NET/IB channels
|
||||
- Opt-in with NCCL_IB_SOCK_CLIENT_PORT_REUSE=1 and NCCL_IB_SOCK_SERVER_PORT_REUSE=1
|
||||
- When "Call to bind failed : Address already in use" error happens in large-scale AlltoAll
|
||||
(e.g., >=64 MI200 nodes), users are suggested to opt-in either one or both of the options
|
||||
to resolve the massive port usage issue
|
||||
- Avoid using NCCL_IB_SOCK_SERVER_PORT_REUSE when NCCL_NCHANNELS_PER_NET_PEER is tuned >1
|
||||
|
||||
##### Removed
|
||||
|
||||
- Removed experimental clique-based kernels
|
||||
|
||||
-------------------
|
||||
|
||||
## ROCm 5.2.1
|
||||
|
||||
|
||||
### Library Changes in ROCM 5.2.1
|
||||
|
||||
| Library | Version |
|
||||
|---------|---------|
|
||||
| hipBLAS | [0.51.0](https://github.com/ROCmSoftwarePlatform/hipBLAS/releases/tag/rocm-5.2.1) |
|
||||
| hipCUB | [2.11.1](https://github.com/ROCmSoftwarePlatform/hipCUB/releases/tag/rocm-5.2.1) |
|
||||
| hipFFT | [1.0.8](https://github.com/ROCmSoftwarePlatform/hipFFT/releases/tag/rocm-5.2.1) |
|
||||
| hipSOLVER | [1.4.0](https://github.com/ROCmSoftwarePlatform/hipSOLVER/releases/tag/rocm-5.2.1) |
|
||||
| hipSPARSE | [2.2.0](https://github.com/ROCmSoftwarePlatform/hipSPARSE/releases/tag/rocm-5.2.1) |
|
||||
| rccl | [2.11.4](https://github.com/ROCmSoftwarePlatform/rccl/releases/tag/rocm-5.2.1) |
|
||||
| rocALUTION | [2.0.3](https://github.com/ROCmSoftwarePlatform/rocALUTION/releases/tag/rocm-5.2.1) |
|
||||
| rocBLAS | [2.44.0](https://github.com/ROCmSoftwarePlatform/rocBLAS/releases/tag/rocm-5.2.1) |
|
||||
| rocFFT | [1.0.17](https://github.com/ROCmSoftwarePlatform/rocFFT/releases/tag/rocm-5.2.1) |
|
||||
| rocPRIM | [2.10.14](https://github.com/ROCmSoftwarePlatform/rocPRIM/releases/tag/rocm-5.2.1) |
|
||||
| rocRAND | [2.10.14](https://github.com/ROCmSoftwarePlatform/rocRAND/releases/tag/rocm-5.2.1) |
|
||||
| rocSOLVER | [3.18.0](https://github.com/ROCmSoftwarePlatform/rocSOLVER/releases/tag/rocm-5.2.1) |
|
||||
| rocSPARSE | [2.2.0](https://github.com/ROCmSoftwarePlatform/rocSPARSE/releases/tag/rocm-5.2.1) |
|
||||
| rocThrust | [2.15.0](https://github.com/ROCmSoftwarePlatform/rocThrust/releases/tag/rocm-5.2.1) |
|
||||
| rocWMMA | [0.7](https://github.com/ROCmSoftwarePlatform/rocWMMA/releases/tag/rocm-5.2.1) |
|
||||
| Tensile | [4.33.0](https://github.com/ROCmSoftwarePlatform/Tensile/releases/tag/rocm-5.2.1) |
|
||||
|
||||
-------------------
|
||||
|
||||
## ROCm 5.2.0
|
||||
<!-- markdownlint-disable first-line-h1 -->
|
||||
<!-- markdownlint-disable no-duplicate-header -->
|
||||
|
||||
503
RELEASE.md
503
RELEASE.md
@@ -15,49 +15,498 @@ The release notes for the ROCm platform.
|
||||
|
||||
-------------------
|
||||
|
||||
## ROCm 5.3.2
|
||||
## ROCm 5.2.0
|
||||
<!-- markdownlint-disable first-line-h1 -->
|
||||
<!-- markdownlint-disable no-duplicate-header -->
|
||||
### What's New in This Release
|
||||
|
||||
#### HIP Enhancements
|
||||
|
||||
The ROCm v5.2 release consists of the following HIP enhancements:
|
||||
|
||||
##### HIP Installation Guide Updates
|
||||
|
||||
The HIP Installation Guide is updated to include building HIP tests from source on the AMD and NVIDIA platforms.
|
||||
|
||||
For more details, refer to the HIP Installation Guide v5.2.
|
||||
|
||||
##### Support for device-side malloc on HIP-Clang
|
||||
|
||||
HIP-Clang now supports device-side malloc. This implementation does not require the use of `hipDeviceSetLimit(hipLimitMallocHeapSize,value)` nor respect any setting. The heap is fully dynamic and can grow until the available free memory on the device is consumed.
|
||||
|
||||
The test codes at the following link show how to implement applications using malloc and free functions in device kernels:
|
||||
|
||||
<https://github.com/ROCm-Developer-Tools/HIP/blob/develop/tests/src/deviceLib/hipDeviceMalloc.cpp>
|
||||
|
||||
##### New HIP APIs in This Release
|
||||
|
||||
The following new HIP APIs are available in the ROCm v5.2 release. Note that this is a pre-official version (beta) release of the new APIs:
|
||||
|
||||
###### Device management HIP APIs
|
||||
|
||||
The new device management HIP APIs are as follows:
|
||||
|
||||
- Gets a UUID for the device. This API returns a UUID for the device.
|
||||
|
||||
```h
|
||||
hipError_t hipDeviceGetUuid(hipUUID* uuid, hipDevice_t device);
|
||||
```
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> This new API corresponds to the following CUDA API:
|
||||
>
|
||||
> ```h
|
||||
> CUresult cuDeviceGetUuid(CUuuid* uuid, CUdevice dev);
|
||||
> ```
|
||||
|
||||
- Gets default memory pool of the specified device
|
||||
|
||||
```h
|
||||
hipError_t hipDeviceGetDefaultMemPool(hipMemPool_t* mem_pool, int device);
|
||||
```
|
||||
|
||||
- Sets the current memory pool of a device
|
||||
|
||||
```h
|
||||
hipError_t hipDeviceSetMemPool(int device, hipMemPool_t mem_pool);
|
||||
```
|
||||
|
||||
- Gets the current memory pool for the specified device
|
||||
|
||||
```h
|
||||
hipError_t hipDeviceGetMemPool(hipMemPool_t* mem_pool, int device);
|
||||
```
|
||||
|
||||
###### New HIP Runtime APIs in Memory Management
|
||||
|
||||
The new Stream Ordered Memory Allocator functions of HIP runtime APIs in memory management are as follows:
|
||||
|
||||
- Allocates memory with stream ordered semantics
|
||||
|
||||
```h
|
||||
hipError_t hipMallocAsync(void** dev_ptr, size_t size, hipStream_t stream);
|
||||
```
|
||||
|
||||
- Frees memory with stream ordered semantics
|
||||
|
||||
```h
|
||||
hipError_t hipFreeAsync(void* dev_ptr, hipStream_t stream);
|
||||
```
|
||||
|
||||
- Releases freed memory back to the OS
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold);
|
||||
```
|
||||
|
||||
- Sets attributes of a memory pool
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolSetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void* value);
|
||||
```
|
||||
|
||||
- Gets attributes of a memory pool
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolGetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void* value);
|
||||
```
|
||||
|
||||
- Controls visibility of the specified pool between devices
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolSetAccess(hipMemPool_t mem_pool, const hipMemAccessDesc* desc_list, size_t count);
|
||||
```
|
||||
|
||||
- Returns the accessibility of a pool from a device
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolGetAccess(hipMemAccessFlags* flags, hipMemPool_t mem_pool, hipMemLocation* location);
|
||||
```
|
||||
|
||||
- Creates a memory pool
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolCreate(hipMemPool_t* mem_pool, const hipMemPoolProps* pool_props);
|
||||
```
|
||||
|
||||
- Destroys the specified memory pool
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolDestroy(hipMemPool_t mem_pool);
|
||||
```
|
||||
|
||||
- Allocates memory from a specified pool with stream ordered semantics
|
||||
|
||||
```h
|
||||
hipError_t hipMallocFromPoolAsync(void** dev_ptr, size_t size, hipMemPool_t mem_pool, hipStream_t stream);
|
||||
```
|
||||
|
||||
- Exports a memory pool to the requested handle type
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolExportToShareableHandle(
|
||||
void* shared_handle,
|
||||
hipMemPool_t mem_pool,
|
||||
hipMemAllocationHandleType handle_type,
|
||||
unsigned int flags);
|
||||
```
|
||||
|
||||
- Imports a memory pool from a shared handle
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolImportFromShareableHandle(
|
||||
hipMemPool_t* mem_pool,
|
||||
void* shared_handle,
|
||||
hipMemAllocationHandleType handle_type,
|
||||
unsigned int flags);
|
||||
```
|
||||
|
||||
- Exports data to share a memory pool allocation between processes
|
||||
|
||||
```h
|
||||
hipError_t hipMemPoolExportPointer(hipMemPoolPtrExportData* export_data, void* dev_ptr);
|
||||
Import a memory pool allocation from another process.t
|
||||
hipError_t hipMemPoolImportPointer(
|
||||
void** dev_ptr,
|
||||
hipMemPool_t mem_pool,
|
||||
hipMemPoolPtrExportData* export_data);
|
||||
```
|
||||
|
||||
###### HIP Graph Management APIs
|
||||
|
||||
The new HIP Graph Management APIs are as follows:
|
||||
|
||||
- Enqueues a host function call in a stream
|
||||
|
||||
```h
|
||||
hipError_t hipLaunchHostFunc(hipStream_t stream, hipHostFn_t fn, void* userData);
|
||||
```
|
||||
|
||||
- Swaps the stream capture mode of a thread
|
||||
|
||||
```h
|
||||
hipError_t hipThreadExchangeStreamCaptureMode(hipStreamCaptureMode* mode);
|
||||
```
|
||||
|
||||
- Sets a node attribute
|
||||
|
||||
```h
|
||||
hipError_t hipGraphKernelNodeSetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, const hipKernelNodeAttrValue* value);
|
||||
```
|
||||
|
||||
- Gets a node attribute
|
||||
|
||||
```h
|
||||
hipError_t hipGraphKernelNodeGetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, hipKernelNodeAttrValue* value);
|
||||
```
|
||||
|
||||
###### Support for Virtual Memory Management APIs
|
||||
|
||||
The new APIs for virtual memory management are as follows:
|
||||
|
||||
- Frees an address range reservation made via hipMemAddressReserve
|
||||
|
||||
```h
|
||||
hipError_t hipMemAddressFree(void* devPtr, size_t size);
|
||||
```
|
||||
|
||||
- Reserves an address range
|
||||
|
||||
```h
|
||||
hipError_t hipMemAddressReserve(void** ptr, size_t size, size_t alignment, void* addr, unsigned long long flags);
|
||||
```
|
||||
|
||||
- Creates a memory allocation described by the properties and size
|
||||
|
||||
```h
|
||||
hipError_t hipMemCreate(hipMemGenericAllocationHandle_t* handle, size_t size, const hipMemAllocationProp* prop, unsigned long long flags);
|
||||
```
|
||||
|
||||
- Exports an allocation to a requested shareable handle type
|
||||
|
||||
```h
|
||||
hipError_t hipMemExportToShareableHandle(void* shareableHandle, hipMemGenericAllocationHandle_t handle, hipMemAllocationHandleType handleType, unsigned long long flags);
|
||||
```
|
||||
|
||||
- Gets the access flags set for the given location and ptr
|
||||
|
||||
```h
|
||||
hipError_t hipMemGetAccess(unsigned long long* flags, const hipMemLocation* location, void* ptr);
|
||||
```
|
||||
|
||||
- Calculates either the minimal or recommended granularity
|
||||
|
||||
```h
|
||||
hipError_t hipMemGetAllocationGranularity(size_t* granularity, const hipMemAllocationProp* prop, hipMemAllocationGranularity_flags option);
|
||||
```
|
||||
|
||||
- Retrieves the property structure of the given handle
|
||||
|
||||
```h
|
||||
hipError_t hipMemGetAllocationPropertiesFromHandle(hipMemAllocationProp* prop, hipMemGenericAllocationHandle_t handle);
|
||||
```
|
||||
|
||||
- Imports an allocation from a requested shareable handle type
|
||||
|
||||
```h
|
||||
hipError_t hipMemImportFromShareableHandle(hipMemGenericAllocationHandle_t* handle, void* osHandle, hipMemAllocationHandleType shHandleType);
|
||||
```
|
||||
|
||||
- Maps an allocation handle to a reserved virtual address range
|
||||
|
||||
```h
|
||||
hipError_t hipMemMap(void* ptr, size_t size, size_t offset, hipMemGenericAllocationHandle_t handle, unsigned long long flags);
|
||||
```
|
||||
|
||||
- Maps or unmaps subregions of sparse HIP arrays and sparse HIP mipmapped arrays
|
||||
|
||||
```h
|
||||
hipError_t hipMemMapArrayAsync(hipArrayMapInfo* mapInfoList, unsigned int count, hipStream_t stream);
|
||||
```
|
||||
|
||||
- Release a memory handle representing a memory allocation, that was previously allocated through hipMemCreate
|
||||
|
||||
```h
|
||||
hipError_t hipMemRelease(hipMemGenericAllocationHandle_t handle);
|
||||
```
|
||||
|
||||
- Returns the allocation handle of the backing memory allocation given the address
|
||||
|
||||
```h
|
||||
hipError_t hipMemRetainAllocationHandle(hipMemGenericAllocationHandle_t* handle, void* addr);
|
||||
```
|
||||
|
||||
- Sets the access flags for each location specified in desc for the given virtual address range
|
||||
|
||||
```h
|
||||
hipError_t hipMemSetAccess(void* ptr, size_t size, const hipMemAccessDesc* desc, size_t count);
|
||||
```
|
||||
|
||||
- Unmaps memory allocation of a given address range
|
||||
|
||||
```h
|
||||
hipError_t hipMemUnmap(void* ptr, size_t size);
|
||||
```
|
||||
|
||||
For more information, refer to the HIP API documentation at
|
||||
{doc}`hip:.doxygen/docBin/html/modules`.
|
||||
|
||||
##### Planned HIP Changes in Future Releases
|
||||
|
||||
Changes to `hipDeviceProp_t`, `HIPMEMCPY_3D`, and `hipArray` structures (and related HIP APIs) are planned in the next major release. These changes may impact backward compatibility.
|
||||
|
||||
Refer to the Release Notes document in subsequent releases for more information.
|
||||
ROCm Math and Communication Libraries
|
||||
|
||||
In this release, ROCm Math and Communication Libraries consist of the following enhancements and fixes:
|
||||
New rocWMMA for Matrix Multiplication and Accumulation Operations Acceleration
|
||||
|
||||
This release introduces a new ROCm C++ library for accelerating mixed precision matrix multiplication and accumulation (MFMA) operations leveraging specialized GPU matrix cores. rocWMMA provides a C++ API to facilitate breaking down matrix multiply accumulate problems into fragments and using them in block-wise operations that are distributed in parallel across GPU wavefronts. The API is a header library of GPU device code, meaning matrix core acceleration may be compiled directly into your kernel device code. This can benefit from compiler optimization in the generation of kernel assembly and does not incur additional overhead costs of linking to external runtime libraries or having to launch separate kernels.
|
||||
|
||||
rocWMMA is released as a header library and includes test and sample projects to validate and illustrate example usages of the C++ API. GEMM matrix multiplication is used as primary validation given the heavy precedent for the library. However, the usage portfolio is growing significantly and demonstrates different ways rocWMMA may be consumed.
|
||||
|
||||
For more information, refer to
|
||||
[Communication Libraries](../../../../docs/reference/gpu_libraries/communication.md).
|
||||
|
||||
#### OpenMP Enhancements in This Release
|
||||
|
||||
##### OMPT Target Support
|
||||
|
||||
The OpenMP runtime in ROCm implements a subset of the OMPT device APIs, as described in the OpenMP specification document. These are APIs that allow first-party tools to examine the profile and traces for kernels that execute on a device. A tool may register callbacks for data transfer and kernel dispatch entry points. A tool may use APIs to start and stop tracing for device-related activities such as data transfer and kernel dispatch timings and associated metadata. If device tracing is enabled, trace records for device activities are collected during program execution and returned to the tool using the APIs described in the specification.
|
||||
|
||||
Following is an example demonstrating how a tool would use the OMPT target APIs supported. The README in /opt/rocm/llvm/examples/tools/ompt outlines the steps to follow, and you can run the provided example as indicated below:
|
||||
|
||||
```sh
|
||||
cd /opt/rocm/llvm/examples/tools/ompt/veccopy-ompt-target-tracing
|
||||
make run
|
||||
```
|
||||
|
||||
The file `veccopy-ompt-target-tracing.c` simulates how a tool would initiate device activity tracing. The file `callbacks.h` shows the callbacks that may be registered and implemented by the tool.
|
||||
|
||||
### Deprecations and Warnings
|
||||
|
||||
#### Linux Filesystem Hierarchy Standard for ROCm
|
||||
|
||||
ROCm packages have adopted the Linux foundation filesystem hierarchy standard in this release to ensure ROCm components follow open source conventions for Linux-based distributions. While moving to a new filesystem hierarchy, ROCm ensures backward compatibility with its 5.1 version or older filesystem hierarchy. See below for a detailed explanation of the new filesystem hierarchy and backward compatibility.
|
||||
|
||||
##### New Filesystem Hierarchy
|
||||
|
||||
The following is the new filesystem hierarchy:
|
||||
|
||||
```text
|
||||
/opt/rocm-<ver>
|
||||
| --bin
|
||||
| --All externally exposed Binaries
|
||||
| --libexec
|
||||
| --<component>
|
||||
| -- Component specific private non-ISA executables (architecture independent)
|
||||
| --include
|
||||
| -- <component>
|
||||
| --<header files>
|
||||
| --lib
|
||||
| --lib<soname>.so -> lib<soname>.so.major -> lib<soname>.so.major.minor.patch
|
||||
(public libraries linked with application)
|
||||
| --<component> (component specific private library, executable data)
|
||||
| --<cmake>
|
||||
| --components
|
||||
| --<component>.config.cmake
|
||||
| --share
|
||||
| --html/<component>/*.html
|
||||
| --info/<component>/*.[pdf, md, txt]
|
||||
| --man
|
||||
| --doc
|
||||
| --<component>
|
||||
| --<licenses>
|
||||
| --<component>
|
||||
| --<misc files> (arch independent non-executable)
|
||||
| --samples
|
||||
|
||||
```
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> ROCm will not support backward compatibility with the v5.1(old) file system hierarchy in its next major release.
|
||||
|
||||
For more information, refer to <https://refspecs.linuxfoundation.org/fhs.shtml>.
|
||||
|
||||
##### Backward Compatibility with Older Filesystems
|
||||
|
||||
ROCm has moved header files and libraries to its new location as indicated in the above structure and included symbolic-link and wrapper header files in its old location for backward compatibility.
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> ROCm will continue supporting backward compatibility until the next major release.
|
||||
|
||||
##### Wrapper header files
|
||||
|
||||
Wrapper header files are placed in the old location (`/opt/rocm-xxx/<component>/include`) with a warning message to include files from the new location (`/opt/rocm-xxx/include`) as shown in the example below:
|
||||
|
||||
```h
|
||||
// Code snippet from hip_runtime.h
|
||||
#pragma message “This file is deprecated. Use file from include path /opt/rocm-ver/include/ and prefix with hip”.
|
||||
#include "hip/hip_runtime.h"
|
||||
```
|
||||
|
||||
The wrapper header files’ backward compatibility deprecation is as follows:
|
||||
|
||||
- `#pragma` message announcing deprecation -- ROCm v5.2 release
|
||||
- `#pragma` message changed to `#warning` -- Future release
|
||||
- `#warning` changed to `#error` -- Future release
|
||||
- Backward compatibility wrappers removed -- Future release
|
||||
|
||||
##### Library files
|
||||
|
||||
Library files are available in the `/opt/rocm-xxx/lib` folder. For backward compatibility, the old library location (`/opt/rocm-xxx/<component>/lib`) has a soft link to the library at the new location.
|
||||
|
||||
Example:
|
||||
|
||||
```log
|
||||
$ ls -l /opt/rocm/hip/lib/
|
||||
total 4
|
||||
drwxr-xr-x 4 root root 4096 May 12 10:45 cmake
|
||||
lrwxrwxrwx 1 root root 24 May 10 23:32 libamdhip64.so -> ../../lib/libamdhip64.so
|
||||
```
|
||||
|
||||
##### CMake Config files
|
||||
|
||||
All CMake configuration files are available in the `/opt/rocm-xxx/lib/cmake/<component>` folder. For backward compatibility, the old CMake locations (`/opt/rocm-xxx/<component>/lib/cmake`) consist of a soft link to the new CMake config.
|
||||
|
||||
Example:
|
||||
|
||||
```log
|
||||
$ ls -l /opt/rocm/hip/lib/cmake/hip/
|
||||
total 0
|
||||
lrwxrwxrwx 1 root root 42 May 10 23:32 hip-config.cmake -> ../../../../lib/cmake/hip/hip-config.cmake
|
||||
```
|
||||
|
||||
#### Planned deprecation of hip-rocclr and hip-base packages
|
||||
|
||||
In the ROCm v5.2 release, hip-rocclr and hip-base packages (Debian and RPM) are planned for deprecation and will be removed in a future release. hip-runtime-amd and hip-dev(el) will replace these packages respectively. Users of hip-rocclr must install two packages, hip-runtime-amd and hip-dev, to get the same set of packages installed by hip-rocclr previously.
|
||||
|
||||
Currently, both package names hip-rocclr (or) hip-runtime-amd and hip-base (or) hip-dev(el) are supported.
|
||||
Deprecation of Integrated HIP Directed Tests
|
||||
|
||||
The integrated HIP directed tests, which are currently built by default, are deprecated in this release. The default building and execution support through CMake will be removed in future release.
|
||||
|
||||
### Fixed Defects
|
||||
|
||||
The following known issues in ROCm v5.3.2 are fixed in this release.
|
||||
|
||||
#### Peer-to-Peer DMA Mapping Errors with SLES and RHEL
|
||||
|
||||
Peer-to-Peer Direct Memory Access (DMA) mapping errors on Dell systems (R7525 and R750XA) with SLES 15 SP3/SP4 and RHEL 9.0 are fixed in this release.
|
||||
|
||||
Previously, running rocminfo resulted in Peer-to-Peer DMA mapping errors.
|
||||
|
||||
#### RCCL Tuning Table
|
||||
|
||||
The RCCL tuning table is updated for supported platforms.
|
||||
|
||||
#### SGEMM (F32 GEMM) Routines in rocBLAS
|
||||
|
||||
Functional correctness failures in SGEMM (F32 GEMM) routines in rocBLAS for certain problem sizes and ranges are fixed in this release.
|
||||
| Fixed Defect | Fix |
|
||||
|------------------------------------------------------------------------------|----------|
|
||||
| ROCmInfo does not list gpus | Code fix |
|
||||
| Hang observed while restoring cooperative group samples | Code fix |
|
||||
| ROCM-SMI over SRIOV: Unsupported commands do not return proper error message | Code fix |
|
||||
|
||||
### Known Issues
|
||||
|
||||
This section consists of known issues in this release.
|
||||
|
||||
#### AMD Instinct™ MI200 SRIOV Virtualization Issue
|
||||
#### Compiler Error on gfx1030 When Compiling at -O0
|
||||
|
||||
There is a known issue in this ROCm v5.3 release with all AMD Instinct™ MI200 devices running within a virtual function (VF) under SRIOV virtualization. This issue will likely impact the functionality of SRIOV-based workloads but does not impact Discrete Device Assignment (DDA) or bare metal.
|
||||
##### Issue
|
||||
|
||||
Until a fix is provided, users should rely on ROCm v5.2.3 to support their SRIOV workloads.
|
||||
A compiler error occurs when using -O0 flag to compile code for gfx1030 that calls atomicAddNoRet, which is defined in amd_hip_atomic.h. The compiler generates an illegal instruction for gfx1030.
|
||||
|
||||
#### AMD Instinct™ MI200 Firmware Updates
|
||||
##### Workaround
|
||||
|
||||
Customers cannot update the Integrated Firmware Image (IFWI) for AMD Instinct™ MI200 accelerators.
|
||||
The workaround is not to use the -O0 flag for this case. For higher optimization levels, the compiler does not generate an invalid instruction.
|
||||
|
||||
An updated firmware maintenance bundle consisting of an installation tool and images specific to AMD Instinct™ MI200 accelerators is under planning and will be available soon.
|
||||
#### System Freeze Observed During CUDA Memtest Checkpoint
|
||||
|
||||
#### Known Issue with rocThrust and rocPRIM Libraries
|
||||
##### Issue
|
||||
|
||||
There is a known known issue with rocThrust and rocPRIM libraries supporting iterator and types in ROCm v5.3.x releases.
|
||||
Checkpoint/Restore in Userspace (CRIU) requires 20 MB of VRAM approximately to checkpoint and restore. The CRIU process may freeze if the maximum amount of available VRAM is allocated to checkpoint applications.
|
||||
|
||||
- thrust::merge no longer correctly supports different iterator types for `keys_input1` and `keys_input2`.
|
||||
##### Workaround
|
||||
|
||||
- rocprim::device_merge no longer correctly supports using different types for `keys_input1` and `keys_input2`.
|
||||
To use CRIU to checkpoint and restore your application, limit the amount of VRAM the application uses to ensure at least 20 MB is available.
|
||||
|
||||
This issue is currently under investigation and will be resolved in a future release.
|
||||
#### HPC test fails with the “HSA_STATUS_ERROR_MEMORY_FAULT” error
|
||||
|
||||
##### Issue
|
||||
|
||||
The compiler may incorrectly compile a program that uses the `__shfl_sync(mask, value, srcLane)` function when the "value" parameter to the function is undefined along some path to the function. For most functions, uninitialized inputs cause undefined behavior, but the definition for `__shfl_sync` should allow for undefined values.
|
||||
|
||||
##### Workaround
|
||||
|
||||
The workaround is to initialize the parameters to `__shfl_sync`.
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> When the `-Wall` compilation flag is used, the compiler generates a warning indicating the variable is initialized along some path.
|
||||
|
||||
Example:
|
||||
|
||||
```cpp
|
||||
double res = 0.0; // Initialize the input to __shfl_sync.
|
||||
if (lane == 0) {
|
||||
res = <some expression>
|
||||
}
|
||||
res = __shfl_sync(mask, res, 0);
|
||||
```
|
||||
|
||||
#### Kernel produces incorrect result
|
||||
|
||||
##### Issue
|
||||
|
||||
In recent changes to Clang, insertion of the noundef attribute to all the function arguments has been enabled by default.
|
||||
|
||||
In the HIP kernel, variable var in shfl_sync may not be initialized, so LLVM IR treats it as undef.
|
||||
|
||||
So, the function argument that is potentially undef (because it is not intialized) has always been assumed to be noundef by LLVM IR (since Clang has inserted noundef attribute). This leads to ambiguous kernel execution.
|
||||
|
||||
##### Workaround
|
||||
|
||||
- Skip adding `noundef` attribute to functions tagged with convergent attribute. Refer to <https://reviews.llvm.org/D124158> for more information.
|
||||
|
||||
- Introduce shuffle attribute and add it to `__shfl` like APIs at hip headers. Clang can skip adding noundef attribute, if it finds that argument is tagged with shuffle attribute. Refer to <https://reviews.llvm.org/D125378> for more information.
|
||||
|
||||
- Introduce clang builtin for `__shfl` to identify it and skip adding `noundef` attribute.
|
||||
|
||||
- Introduce `__builtin_freeze` to use on the relevant arguments in library wrappers. The library/header need to insert freezes on the relevant inputs.
|
||||
|
||||
#### Issue with Applications Triggering Oversubscription
|
||||
|
||||
There is a known issue with applications that trigger oversubscription. A hardware hang occurs when ROCgdb is used on AMD Instinct™ MI50 and MI100 systems.
|
||||
|
||||
This issue is under investigation and will be fixed in a future release.
|
||||
|
||||
@@ -14,6 +14,13 @@ shutil.copy2('../RELEASE.md','./release.md')
|
||||
# Keep capitalization due to similar linking on GitHub's markdown preview.
|
||||
shutil.copy2('../CHANGELOG.md','./CHANGELOG.md')
|
||||
|
||||
# configurations for PDF output by Read the Docs
|
||||
project = "ROCm Documentation"
|
||||
author = "Advanced Micro Devices, Inc."
|
||||
copyright = "Copyright (c) 2023 Advanced Micro Devices, Inc. All rights reserved."
|
||||
version = "5.2.0"
|
||||
release = "5.2.0"
|
||||
|
||||
setting_all_article_info = True
|
||||
all_article_info_os = ["linux"]
|
||||
all_article_info_author = ""
|
||||
@@ -57,7 +64,7 @@ article_pages = [
|
||||
|
||||
external_toc_path = "./sphinx/_toc.yml"
|
||||
|
||||
docs_core = ROCmDocs("ROCm Documentation Home")
|
||||
docs_core = ROCmDocs("ROCm 5.2.0 Documentation Home")
|
||||
docs_core.setup()
|
||||
|
||||
external_projects_current_project = "rocm"
|
||||
|
||||
@@ -13,23 +13,23 @@ following commands based on your distribution.
|
||||
:sync: ubuntu
|
||||
|
||||
::::{tab-set}
|
||||
:::{tab-item} Ubuntu 18.04
|
||||
:sync: ubuntu-18.04
|
||||
|
||||
```shell
|
||||
sudo apt update
|
||||
wget https://repo.radeon.com/amdgpu-install/22.20/ubuntu/bionic/amdgpu-install_22.20.50200-1_all.deb
|
||||
sudo apt install ./amdgpu-install_22.20.50200-1_all.deb
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
|
||||
```shell
|
||||
sudo apt update
|
||||
wget https://repo.radeon.com/amdgpu-install/5.3.2/ubuntu/focal/amdgpu-install_5.3.50302-1_all.deb
|
||||
sudo apt install ./amdgpu-install_5.3.50302-1_all.deb
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} Ubuntu 22.04
|
||||
:sync: ubuntu-22.04
|
||||
|
||||
```shell
|
||||
sudo apt update
|
||||
wget https://repo.radeon.com/amdgpu-install/5.3.2/ubuntu/jammy/amdgpu-install_5.3.50302-1_all.deb
|
||||
sudo apt install ./amdgpu-install_5.3.50302-1_all.deb
|
||||
wget https://repo.radeon.com/amdgpu-install/22.20/ubuntu/focal/amdgpu-install_22.20.50200-1_all.deb
|
||||
sudo apt install ./amdgpu-install_22.20.50200-1_all.deb
|
||||
```
|
||||
|
||||
:::
|
||||
@@ -44,7 +44,7 @@ sudo apt install ./amdgpu-install_5.3.50302-1_all.deb
|
||||
:sync: RHEL-7
|
||||
|
||||
```shell
|
||||
sudo yum install https://repo.radeon.com/amdgpu-install/5.3.2/rhel/7.9/amdgpu-install-5.3.50302-1.el7.noarch.rpm
|
||||
sudo yum install https://repo.radeon.com/amdgpu-install/22.20/rhel/7.9/amdgpu-install-22.20.50200-1.el7.noarch.rpm
|
||||
```
|
||||
|
||||
:::
|
||||
@@ -53,7 +53,7 @@ sudo yum install https://repo.radeon.com/amdgpu-install/5.3.2/rhel/7.9/amdgpu-in
|
||||
:sync: RHEL-8
|
||||
|
||||
```shell
|
||||
sudo yum install https://repo.radeon.com/amdgpu-install/5.3.2/rhel/8.5/amdgpu-install-5.3.50302-1.el8.noarch.rpm
|
||||
sudo yum install https://repo.radeon.com/amdgpu-install/22.20/rhel/8.5/amdgpu-install-22.20.50200-1.el8.noarch.rpm
|
||||
```
|
||||
|
||||
:::
|
||||
@@ -62,16 +62,7 @@ sudo yum install https://repo.radeon.com/amdgpu-install/5.3.2/rhel/8.5/amdgpu-in
|
||||
:sync: RHEL-8
|
||||
|
||||
```shell
|
||||
sudo yum install https://repo.radeon.com/amdgpu-install/5.3.2/rhel/8.6/amdgpu-install-5.3.50302-1.el8.noarch.rpm
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} RHEL 9.0
|
||||
:sync: RHEL-9.0
|
||||
:sync: RHEL-9
|
||||
|
||||
```shell
|
||||
sudo yum install https://repo.radeon.com/amdgpu-install/5.3.2/rhel/9.0/amdgpu-install-5.3.50303-1.el9.noarch.rpm
|
||||
sudo yum install https://repo.radeon.com/amdgpu-install/22.20/rhel/8.6/amdgpu-install-22.20.50200-1.el8.noarch.rpm
|
||||
```
|
||||
|
||||
:::
|
||||
@@ -85,7 +76,7 @@ sudo yum install https://repo.radeon.com/amdgpu-install/5.3.2/rhel/9.0/amdgpu-in
|
||||
:sync: SLES15-SP4
|
||||
|
||||
```shell
|
||||
sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/5.3.2/sle/15.4/amdgpu-install-5.3.50302-1.noarch.rpm
|
||||
sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/22.20/sle/15.4/amdgpu-install-22.20.50200-1.noarch.rpm
|
||||
```
|
||||
|
||||
:::
|
||||
@@ -93,7 +84,7 @@ sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/5.3.2
|
||||
:sync: SLES15-SP3
|
||||
|
||||
```shell
|
||||
sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/5.3.2/sle/15.3/amdgpu-install-5.3.50303-1.noarch.rpm
|
||||
sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/22.20/sle/15.3/amdgpu-install-22.20.50200-1.noarch.rpm
|
||||
```
|
||||
|
||||
:::
|
||||
@@ -172,9 +163,9 @@ the installer script will install packages in the single-version layout.
|
||||
For the multi-version ROCm installation you must use the installer script from
|
||||
the latest release of ROCm that you wish to install.
|
||||
|
||||
**Example:** If you want to install ROCm releases 5.2.1 and 5.3.2
|
||||
**Example:** If you want to install ROCm releases 5.1.3 and 5.2
|
||||
simultaneously, you are required to download the installer from the latest ROCm
|
||||
release v5.3.2.
|
||||
release v5.2.
|
||||
|
||||
### Add Required Repositories
|
||||
|
||||
@@ -189,24 +180,24 @@ Run the following commands based on your distribution to add the repositories:
|
||||
:sync: ubuntu
|
||||
|
||||
::::{tab-set}
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
:::{tab-item} Ubuntu 18.04
|
||||
:sync: ubuntu-18.04
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.1; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/rocm/apt/$ver focal main" | sudo tee /etc/apt/sources.list.d/rocm.list
|
||||
for ver in 5.1.3; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/rocm/apt/$ver bionic main" | sudo tee /etc/apt/sources.list.d/rocm.list
|
||||
done
|
||||
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
|
||||
sudo apt update
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} Ubuntu 22.04
|
||||
:sync: ubuntu-22.04
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.1; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/rocm/apt/$ver jammy main" | sudo tee /etc/apt/sources.list.d/rocm.list
|
||||
for ver in 5.1.3; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/rocm/apt/$ver focal main" | sudo tee /etc/apt/sources.list.d/rocm.list
|
||||
done
|
||||
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
|
||||
sudo apt update
|
||||
@@ -223,7 +214,7 @@ sudo apt update
|
||||
:sync: RHEL-7
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.1; do
|
||||
for ver in 5.1.3; do
|
||||
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-$ver]
|
||||
name=ROCm$ver
|
||||
@@ -242,7 +233,7 @@ sudo yum clean all
|
||||
:sync: RHEL-8
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.1; do
|
||||
for ver in 5.1.3; do
|
||||
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-$ver]
|
||||
name=ROCm$ver
|
||||
@@ -256,25 +247,6 @@ done
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} RHEL 9
|
||||
:sync: RHEL-9
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.1; do
|
||||
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-$ver]
|
||||
name=ROCm$ver
|
||||
baseurl=https://repo.radeon.com/rocm/rhel9/$ver/main
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
EOF
|
||||
done
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
::::
|
||||
:::::
|
||||
@@ -286,7 +258,7 @@ sudo yum clean all
|
||||
:sync: SLES15-SP3
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.1; do
|
||||
for ver in 5.1.3; do
|
||||
sudo tee --append /etc/zypp/repos.d/rocm.repo <<EOF
|
||||
name=rocm
|
||||
baseurl=https://repo.radeon.com/rocm/$ver/sle/15.3/main/x86_64
|
||||
@@ -303,7 +275,7 @@ sudo zypper ref
|
||||
:sync: SLES15-SP4
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.1; do
|
||||
for ver in 5.1.3; do
|
||||
sudo tee --append /etc/zypp/repos.d/rocm.repo <<EOF
|
||||
name=rocm
|
||||
baseurl=https://repo.radeon.com/rocm/$ver/sle/15.4/main/x86_64
|
||||
@@ -332,12 +304,12 @@ sudo amdgpu-install --usecase=rocm --rocmrelease=<release-number-3>
|
||||
```
|
||||
|
||||
Following are examples of ROCm multi-version installation. The kernel-mode
|
||||
driver, associated with the ROCm release v5.3.2, will be installed as its latest
|
||||
driver, associated with the ROCm release v5.3, will be installed as its latest
|
||||
release in the list.
|
||||
|
||||
```none
|
||||
sudo amdgpu-install --usecase=rocm --rocmrelease=5.2.1
|
||||
sudo amdgpu-install --usecase=rocm --rocmrelease=5.3.2
|
||||
sudo amdgpu-install --usecase=rocm --rocmrelease=5.1.3
|
||||
sudo amdgpu-install --usecase=rocm --rocmrelease=5.2.0
|
||||
```
|
||||
|
||||
## Additional options
|
||||
|
||||
@@ -48,23 +48,23 @@ section.
|
||||
To add the AMDGPU repository, follow these steps:
|
||||
|
||||
::::{tab-set}
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
:::{tab-item} Ubuntu 18.04
|
||||
:sync: ubuntu-18.04
|
||||
|
||||
```shell
|
||||
# amdgpu repository for focal
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.3.2/ubuntu focal main' \
|
||||
# amdgpu repository for bionic
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/22.20/ubuntu bionic main' \
|
||||
| sudo tee /etc/apt/sources.list.d/amdgpu.list
|
||||
sudo apt update
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} Ubuntu 22.04
|
||||
:sync: ubuntu-22.04
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
|
||||
```shell
|
||||
# amdgpu repository for jammy
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.3.2/ubuntu jammy main' \
|
||||
# amdgpu repository for focal
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/22.20/ubuntu focal main' \
|
||||
| sudo tee /etc/apt/sources.list.d/amdgpu.list
|
||||
sudo apt update
|
||||
```
|
||||
@@ -86,13 +86,13 @@ sudo reboot
|
||||
To add the ROCm repository, use the following steps:
|
||||
|
||||
::::{tab-set}
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
:::{tab-item} Ubuntu 18.04
|
||||
:sync: ubuntu-18.04
|
||||
|
||||
```shell
|
||||
# ROCm repositories for focal
|
||||
for ver in 5.2.1 5.3.2; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/$ver focal main" \
|
||||
# ROCm repositories for bionic
|
||||
for ver in 5.1.3 5.2; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/$ver bionic main" \
|
||||
| sudo tee --append /etc/apt/sources.list.d/rocm.list
|
||||
done
|
||||
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' \
|
||||
@@ -101,13 +101,13 @@ sudo apt update
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} Ubuntu 22.04
|
||||
:sync: ubuntu-22.04
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
|
||||
```shell
|
||||
# ROCm repositories for jammy
|
||||
for ver in 5.2.1 5.3.2; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/$ver jammy main" \
|
||||
# ROCm repositories for focal
|
||||
for ver in 5.1.3 5.2; do
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/$ver focal main" \
|
||||
| sudo tee --append /etc/apt/sources.list.d/rocm.list
|
||||
done
|
||||
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' \
|
||||
@@ -136,7 +136,7 @@ For a comprehensive list of meta-packages, refer to
|
||||
- Sample Multi-version installation
|
||||
|
||||
```shell
|
||||
sudo apt install rocm-hip-sdk5.3.2 rocm-hip-sdk5.2.1
|
||||
sudo apt install rocm-hip-sdk5.2.0 rocm-hip-sdk5.1.3
|
||||
```
|
||||
|
||||
:::::
|
||||
@@ -160,7 +160,7 @@ section.
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.3/rhel/7.9/main/x86_64/
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/7.9/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
@@ -179,7 +179,7 @@ sudo yum clean all
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/rhel/8.5/main/x86_64/
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/8.5/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
@@ -198,7 +198,7 @@ sudo yum clean all
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/rhel/8.6/main/x86_64/
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/8.6/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
@@ -209,24 +209,6 @@ sudo yum clean all
|
||||
|
||||
:::
|
||||
|
||||
:::{tab-item} RHEL 9.1
|
||||
:sync: RHEL-9.1
|
||||
:sync: RHEL-9
|
||||
|
||||
```shell
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/rhel/9.1/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
EOF
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
::::
|
||||
|
||||
Install the kernel mode driver and reboot the system using the following
|
||||
@@ -247,7 +229,7 @@ To add the ROCm repository, use the following steps, based on your distribution:
|
||||
:sync: RHEL-7
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.3; do
|
||||
for ver in 5.2.1 5.2; do
|
||||
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-$ver]
|
||||
name=ROCm$ver
|
||||
@@ -266,7 +248,7 @@ sudo yum clean all
|
||||
:sync: RHEL-8
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.2; do
|
||||
for ver in 5.1.3 5.2; do
|
||||
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-$ver]
|
||||
name=ROCm$ver
|
||||
@@ -280,25 +262,6 @@ done
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} RHEL 9
|
||||
:sync: RHEL-9
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.2; do
|
||||
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-$ver]
|
||||
name=ROCm$ver
|
||||
baseurl=https://repo.radeon.com/rocm/rhel9/$ver/main
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
EOF
|
||||
done
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
::::
|
||||
|
||||
@@ -320,7 +283,7 @@ For a comprehensive list of meta-packages, refer to
|
||||
- Sample Multi-version installation
|
||||
|
||||
```shell
|
||||
sudo yum install rocm-hip-sdk5.3.2 rocm-hip-sdk5.2.1
|
||||
sudo yum install rocm-hip-sdk5.2.0 rocm-hip-sdk5.1.3
|
||||
```
|
||||
|
||||
:::::
|
||||
@@ -343,7 +306,7 @@ section.
|
||||
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/sle/15.3/main/x86_64
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/sle/15.3/main/x86_64
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
@@ -359,7 +322,7 @@ sudo zypper ref
|
||||
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/sle/15.4/main/x86_64
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/sle/15.4/main/x86_64
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
@@ -384,7 +347,7 @@ sudo reboot
|
||||
To add the ROCm repository, use the following steps:
|
||||
|
||||
```shell
|
||||
for ver in 5.2.1 5.3.2; do
|
||||
for ver in 5.1.3 5.2; do
|
||||
sudo tee --append /etc/zypp/repos.d/rocm.repo <<EOF
|
||||
[ROCm-$ver]
|
||||
name=ROCm$ver
|
||||
@@ -416,7 +379,7 @@ For a comprehensive list of meta-packages, refer to
|
||||
- Sample Multi-version installation
|
||||
|
||||
```shell
|
||||
sudo zypper --gpg-auto-import-keys install rocm-hip-sdk5.3.2 rocm-hip-sdk5.2.1
|
||||
sudo zypper --gpg-auto-import-keys install rocm-hip-sdk5.2.0 rocm-hip-sdk5.1.3
|
||||
```
|
||||
|
||||
:::::
|
||||
@@ -453,7 +416,7 @@ but are generally useful. Verification of the install is advised.
|
||||
2. Add binary paths to the `PATH` environment variable.
|
||||
|
||||
```shell
|
||||
export PATH=$PATH:/opt/rocm-5.3.2/bin:/opt/rocm-5.2.1/opencl/bin
|
||||
export PATH=$PATH:/opt/rocm-5.2.0/bin:/opt/rocm-5.2.0/opencl/bin
|
||||
```
|
||||
|
||||
```{attention}
|
||||
|
||||
@@ -21,23 +21,23 @@ repository to the new release.
|
||||
:sync: ubuntu
|
||||
|
||||
::::{tab-set}
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
:::{tab-item} Ubuntu 18.04
|
||||
:sync: ubuntu-18.04
|
||||
|
||||
```shell
|
||||
# amdgpu repository for focal
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.3.2/ubuntu focal main' \
|
||||
# amdgpu repository for bionic
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/22.20.3/ubuntu bionic main' \
|
||||
| sudo tee /etc/apt/sources.list.d/amdgpu.list
|
||||
sudo apt update
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} Ubuntu 22.04
|
||||
:sync: ubuntu-22.04
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
|
||||
```shell
|
||||
# amdgpu repository for jammy
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.3.2/ubuntu jammy main' \
|
||||
# amdgpu repository for focal
|
||||
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/22.20/ubuntu focal main' \
|
||||
| sudo tee /etc/apt/sources.list.d/amdgpu.list
|
||||
sudo apt update
|
||||
```
|
||||
@@ -57,7 +57,25 @@ sudo apt update
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.3/rhel/7.9/main/x86_64/
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/7.9/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
EOF
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} RHEL 8.5
|
||||
:sync: RHEL-8.5
|
||||
:sync: RHEL-8
|
||||
|
||||
```shell
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/8.5/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
@@ -75,7 +93,7 @@ sudo yum clean all
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/rhel/8.6/main/x86_64/
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/8.6/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
@@ -84,43 +102,6 @@ EOF
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} RHEL 8.7
|
||||
:sync: RHEL-8.7
|
||||
:sync: RHEL-8
|
||||
|
||||
```shell
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/rhel/8.7/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
EOF
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} RHEL 9.1
|
||||
:sync: RHEL-9.1
|
||||
:sync: RHEL-9
|
||||
|
||||
```shell
|
||||
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/rhel/9.1/main/x86_64/
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
EOF
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
::::
|
||||
:::::
|
||||
:::::{tab-item} SUSE Linux Enterprise Server 15
|
||||
@@ -134,7 +115,7 @@ sudo yum clean all
|
||||
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.3/sle/15.3/main/x86_64
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/sle/15.3/main/x86_64
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
@@ -150,7 +131,7 @@ sudo zypper ref
|
||||
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
|
||||
[amdgpu]
|
||||
name=amdgpu
|
||||
baseurl=https://repo.radeon.com/amdgpu/5.3.2/sle/15.4/main/x86_64
|
||||
baseurl=https://repo.radeon.com/amdgpu/22.20/sle/15.4/main/x86_64
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
@@ -209,11 +190,11 @@ repository to the new release.
|
||||
:sync: ubuntu
|
||||
|
||||
::::{tab-set}
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
:::{tab-item} Ubuntu 18.04
|
||||
:sync: ubuntu-18.04
|
||||
|
||||
```shell
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.3.2 focal main" \
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.2.3 bionic main" \
|
||||
| sudo tee /etc/apt/sources.list.d/rocm.list
|
||||
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' \
|
||||
| sudo tee /etc/apt/preferences.d/rocm-pin-600
|
||||
@@ -221,11 +202,11 @@ sudo apt update
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} Ubuntu 22.04
|
||||
:sync: ubuntu-22.04
|
||||
:::{tab-item} Ubuntu 20.04
|
||||
:sync: ubuntu-20.04
|
||||
|
||||
```shell
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.3.2 jammy main" \
|
||||
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.2.3 focal main" \
|
||||
| sudo tee /etc/apt/sources.list.d/rocm.list
|
||||
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' \
|
||||
| sudo tee /etc/apt/preferences.d/rocm-pin-600
|
||||
@@ -244,9 +225,9 @@ sudo apt update
|
||||
|
||||
```shell
|
||||
sudo tee /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-5.3.3]
|
||||
name=ROCm5.3.3
|
||||
baseurl=https://repo.radeon.com/rocm/yum/5.3.2/main
|
||||
[ROCm-5.2]
|
||||
name=ROCm5.2
|
||||
baseurl=https://repo.radeon.com/rocm/yum/5.2/main
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
@@ -261,26 +242,9 @@ sudo yum clean all
|
||||
|
||||
```shell
|
||||
sudo tee /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-5.3.2]
|
||||
name=ROCm5.3.2
|
||||
baseurl=https://repo.radeon.com/rocm/rhel8/5.3.2/main
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
EOF
|
||||
sudo yum clean all
|
||||
```
|
||||
|
||||
:::
|
||||
:::{tab-item} RHEL 9
|
||||
:sync: RHEL-9
|
||||
|
||||
```shell
|
||||
sudo tee /etc/yum.repos.d/rocm.repo <<EOF
|
||||
[ROCm-5.3.2]
|
||||
name=ROCm5.3.2
|
||||
baseurl=https://repo.radeon.com/rocm/rhel9/5.3.2/main
|
||||
[ROCm-5.2]
|
||||
name=ROCm5.2
|
||||
baseurl=https://repo.radeon.com/rocm/rhel8/5.2/main
|
||||
enabled=1
|
||||
priority=50
|
||||
gpgcheck=1
|
||||
@@ -297,10 +261,10 @@ sudo yum clean all
|
||||
|
||||
```shell
|
||||
sudo tee /etc/zypp/repos.d/rocm.repo <<EOF
|
||||
[ROCm-5.3.2]
|
||||
name=ROCm5.3.2
|
||||
[ROCm-5.2]
|
||||
name=ROCm5.2
|
||||
name=rocm
|
||||
baseurl=https://repo.radeon.com/rocm/zyp/5.3.2/main
|
||||
baseurl=https://repo.radeon.com/rocm/zyp/5.2/main
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
|
||||
|
||||
@@ -10,17 +10,17 @@ AMD's library for high performance machine learning primitives.
|
||||
|
||||
:::
|
||||
|
||||
:::{grid-item-card} {doc}`Composable Kernel <composable-kernel:index>`
|
||||
:::{grid-item-card} {doc}`Composable Kernel <composable_kernel:index>`
|
||||
Composable Kernel: Performance Portable Programming Model for Machine Learning Tensor Operators
|
||||
|
||||
- {doc}`Documentation <composable-kernel:index>`
|
||||
- {doc}`Documentation <composable_kernel:index>`
|
||||
|
||||
:::
|
||||
|
||||
:::{grid-item-card} {doc}`MIGraphX <migraphx:index>`
|
||||
:::{grid-item-card} {doc}`MIGraphX <amdmigraphx:index>`
|
||||
AMD MIGraphX is AMD's graph inference engine that accelerates machine learning model inference.
|
||||
|
||||
- {doc}`Documentation <migraphx:index>`
|
||||
- {doc}`Documentation <amdmigraphx:index>`
|
||||
|
||||
:::
|
||||
|
||||
|
||||
@@ -42,8 +42,8 @@ Inter and intra-node communication is supported by the following projects:
|
||||
Libraries related to AI.
|
||||
|
||||
- {doc}`MIOpen <miopen:index>`
|
||||
- {doc}`Composable Kernel <composable-kernel:index>`
|
||||
- {doc}`MIGraphX <migraphx:index>`
|
||||
- {doc}`Composable Kernel <composable_kernel:index>`
|
||||
- {doc}`MIGraphX <amdmigraphx:index>`
|
||||
|
||||
:::
|
||||
|
||||
@@ -80,7 +80,7 @@ Computer vision related projects.
|
||||
|
||||
:::{grid-item-card} [Validation Tools](validation_tools)
|
||||
|
||||
- {doc}`ROCm Validation Suite <rocm-validation-suite:index>`
|
||||
- {doc}`ROCm Validation Suite <rocmvalidationsuite:index>`
|
||||
- {doc}`TransferBench <transferbench:index>`
|
||||
|
||||
:::
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
:::::{grid} 1 1 2 2
|
||||
:gutter: 1
|
||||
|
||||
:::{grid-item-card} {doc}`RVS <rocm-validation-suite:index>`
|
||||
:::{grid-item-card} {doc}`RVS <rocmvalidationsuite:index>`
|
||||
The ROCm Validation Suite is a system administrator’s and cluster manager's tool for detecting and troubleshooting common problems affecting AMD GPU(s) running in a high-performance computing environment, enabled using the ROCm software stack on a compatible platform.
|
||||
|
||||
- {doc}`Documentation <rocm-validation-suite:index>`
|
||||
- {doc}`Documentation <rocmvalidationsuite:index>`
|
||||
|
||||
:::
|
||||
|
||||
|
||||
@@ -43,7 +43,6 @@ contemporary CUDA / NVIDIA HPC SDK alternatives.
|
||||
| 5.0.2 | 1.14 | 21.9 |
|
||||
| 5.1.3 | 1.15 | 22.1 |
|
||||
| 5.2.x | 1.15 | 22.2, 22.3 |
|
||||
| 5.3.x | 1.16 | 22.7 |
|
||||
|
||||
For the latest documentation of these libraries, refer to the
|
||||
[associated documentation](../reference/gpu_libraries/c%2B%2B_primitives.md).
|
||||
|
||||
@@ -8,14 +8,14 @@ AMD ROCm™ Platform supports the following Linux distributions.
|
||||
|
||||
| Distribution |Processor Architectures| Validated Kernel |
|
||||
|--------------------|-----------------------|--------------------|
|
||||
| RHEL 9.0 | x86-64 | 5.14 |
|
||||
| CentOS 7.9 | x86-64 | 3.10 |
|
||||
| RHEL 8.6 to 8.5 | x86-64 | 4.18 |
|
||||
| RHEL 7.9 | x86-64 | 3.10 |
|
||||
| SLES 15 SP4 | x86-64 | 5.14.21 |
|
||||
| SLES 15 SP3 | x86-64 | 5.3.18 |
|
||||
| Ubuntu 20.04.5 LTS | x86-64 | 5.15 |
|
||||
| Ubuntu 20.04.4 LTS | x86-64 | 5.13 |
|
||||
| Ubuntu 22.04.1 LTS | x86-64 | 5.15, 5.17 OEM |
|
||||
| Ubuntu 20.04.3 LTS | x86-64 | 5.11 |
|
||||
| Ubuntu 18.04.5 LTS | x86-64 | 5.4.0 |
|
||||
|
||||
## Virtualization Support
|
||||
|
||||
|
||||
@@ -121,4 +121,4 @@ following location: `/opt/rocm/share/doc/<component-name>/`
|
||||
For example, you can fetch the licensing information of the `_amd_comgr_`
|
||||
component (Code Object Manager) from the `amd_comgr` folder. A file named
|
||||
`LICENSE.txt` contains the license details at:
|
||||
`/opt/rocm-5.3.2/share/doc/amd_comgr/LICENSE.txt`
|
||||
`/opt/rocm-5.2.0/share/doc/amd_comgr/LICENSE.txt`
|
||||
|
||||
@@ -10,5 +10,3 @@ the compatibility combinations that are currently supported.
|
||||
| 5.1.0 | 5.0.2 |
|
||||
| 5.1.3 | 5.2.0, 5.3.0 |
|
||||
| 5.2.0 | 5.0.2, 5.1.3 |
|
||||
| 5.2.3 | 5.3.0 |
|
||||
| 5.3.0 | 5.1.3, 5.2.3 |
|
||||
|
||||
@@ -146,9 +146,9 @@ subtrees:
|
||||
- title: MIOpen - Machine Intelligence
|
||||
url: ${project:miopen}
|
||||
- title: Composable Kernel
|
||||
url: ${project:composable-kernel}
|
||||
url: ${project:composable_kernel}
|
||||
- title: MIGraphX - Graph Optimization
|
||||
url: ${project:migraphx}
|
||||
url: ${project:amdmigraphx}
|
||||
- file: reference/computer_vision
|
||||
subtrees:
|
||||
- entries:
|
||||
@@ -171,7 +171,7 @@ subtrees:
|
||||
title: Validation Tools
|
||||
subtrees:
|
||||
- entries:
|
||||
- url: ${project:rocm-validation-suite}
|
||||
- url: ${project:rocmvalidationsuite}
|
||||
title: RVS
|
||||
- url: ${project:transferbench}
|
||||
title: TransferBench
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
rocm-docs-core==0.16.0
|
||||
rocm-docs-core==1.8.0
|
||||
sphinx-reredirects
|
||||
|
||||
@@ -1,114 +1,106 @@
|
||||
#
|
||||
# This file is autogenerated by pip-compile with Python 3.11
|
||||
# This file is autogenerated by pip-compile with Python 3.10
|
||||
# by the following command:
|
||||
#
|
||||
# pip-compile docs/sphinx/requirements.in
|
||||
# pip-compile requirements.in
|
||||
#
|
||||
accessible-pygments==0.0.3
|
||||
accessible-pygments==0.0.5
|
||||
# via pydata-sphinx-theme
|
||||
alabaster==0.7.13
|
||||
alabaster==1.0.0
|
||||
# via sphinx
|
||||
babel==2.11.0
|
||||
babel==2.16.0
|
||||
# via
|
||||
# pydata-sphinx-theme
|
||||
# sphinx
|
||||
beautifulsoup4==4.11.2
|
||||
beautifulsoup4==4.12.3
|
||||
# via pydata-sphinx-theme
|
||||
breathe==4.34.0
|
||||
breathe==4.35.0
|
||||
# via rocm-docs-core
|
||||
certifi==2022.12.7
|
||||
certifi==2024.8.30
|
||||
# via requests
|
||||
cffi==1.15.1
|
||||
cffi==1.17.1
|
||||
# via
|
||||
# cryptography
|
||||
# pynacl
|
||||
charset-normalizer==2.1.1
|
||||
charset-normalizer==3.3.2
|
||||
# via requests
|
||||
click==8.1.3
|
||||
click==8.1.7
|
||||
# via sphinx-external-toc
|
||||
colorama==0.4.6
|
||||
# via
|
||||
# click
|
||||
# sphinx
|
||||
cryptography==40.0.2
|
||||
cryptography==43.0.1
|
||||
# via pyjwt
|
||||
deprecated==1.2.13
|
||||
deprecated==1.2.14
|
||||
# via pygithub
|
||||
docutils==0.19
|
||||
docutils==0.21.2
|
||||
# via
|
||||
# breathe
|
||||
# myst-parser
|
||||
# pydata-sphinx-theme
|
||||
# sphinx
|
||||
fastjsonschema==2.16.3
|
||||
fastjsonschema==2.20.0
|
||||
# via rocm-docs-core
|
||||
gitdb==4.0.10
|
||||
gitdb==4.0.11
|
||||
# via gitpython
|
||||
gitpython==3.1.30
|
||||
gitpython==3.1.43
|
||||
# via rocm-docs-core
|
||||
idna==3.4
|
||||
idna==3.10
|
||||
# via requests
|
||||
imagesize==1.4.1
|
||||
# via sphinx
|
||||
jinja2==3.1.2
|
||||
jinja2==3.1.4
|
||||
# via
|
||||
# myst-parser
|
||||
# sphinx
|
||||
linkify-it-py==1.0.3
|
||||
# via myst-parser
|
||||
markdown-it-py==2.2.0
|
||||
markdown-it-py==3.0.0
|
||||
# via
|
||||
# mdit-py-plugins
|
||||
# myst-parser
|
||||
markupsafe==2.1.2
|
||||
markupsafe==2.1.5
|
||||
# via jinja2
|
||||
mdit-py-plugins==0.3.4
|
||||
mdit-py-plugins==0.4.2
|
||||
# via myst-parser
|
||||
mdurl==0.1.2
|
||||
# via markdown-it-py
|
||||
myst-parser[linkify]==1.0.0
|
||||
myst-parser==4.0.0
|
||||
# via rocm-docs-core
|
||||
packaging==23.0
|
||||
packaging==24.1
|
||||
# via
|
||||
# pydata-sphinx-theme
|
||||
# sphinx
|
||||
pycparser==2.21
|
||||
pycparser==2.22
|
||||
# via cffi
|
||||
pydata-sphinx-theme==0.13.3
|
||||
pydata-sphinx-theme==0.15.4
|
||||
# via
|
||||
# rocm-docs-core
|
||||
# sphinx-book-theme
|
||||
pygithub==1.58.1
|
||||
pygithub==2.4.0
|
||||
# via rocm-docs-core
|
||||
pygments==2.14.0
|
||||
pygments==2.18.0
|
||||
# via
|
||||
# accessible-pygments
|
||||
# pydata-sphinx-theme
|
||||
# sphinx
|
||||
pyjwt[crypto]==2.6.0
|
||||
pyjwt[crypto]==2.9.0
|
||||
# via pygithub
|
||||
pynacl==1.5.0
|
||||
# via pygithub
|
||||
pytz==2022.7.1
|
||||
# via babel
|
||||
pyyaml==6.0
|
||||
pyyaml==6.0.2
|
||||
# via
|
||||
# myst-parser
|
||||
# rocm-docs-core
|
||||
# sphinx-external-toc
|
||||
requests==2.28.1
|
||||
requests==2.32.3
|
||||
# via
|
||||
# pygithub
|
||||
# sphinx
|
||||
rocm-docs-core==0.16.0
|
||||
# via -r docs/sphinx/requirements.in
|
||||
smmap==5.0.0
|
||||
rocm-docs-core==1.8.0
|
||||
# via -r requirements.in
|
||||
smmap==5.0.1
|
||||
# via gitdb
|
||||
snowballstemmer==2.2.0
|
||||
# via sphinx
|
||||
soupsieve==2.4
|
||||
soupsieve==2.6
|
||||
# via beautifulsoup4
|
||||
sphinx==5.3.0
|
||||
sphinx==8.0.2
|
||||
# via
|
||||
# breathe
|
||||
# myst-parser
|
||||
@@ -119,33 +111,40 @@ sphinx==5.3.0
|
||||
# sphinx-design
|
||||
# sphinx-external-toc
|
||||
# sphinx-notfound-page
|
||||
sphinx-book-theme==1.0.1
|
||||
# sphinx-reredirects
|
||||
sphinx-book-theme==1.1.3
|
||||
# via rocm-docs-core
|
||||
sphinx-copybutton==0.5.1
|
||||
sphinx-copybutton==0.5.2
|
||||
# via rocm-docs-core
|
||||
sphinx-design==0.4.1
|
||||
sphinx-design==0.6.1
|
||||
# via rocm-docs-core
|
||||
sphinx-external-toc==0.3.1
|
||||
sphinx-external-toc==1.0.1
|
||||
# via rocm-docs-core
|
||||
sphinx-notfound-page==0.8.3
|
||||
sphinx-notfound-page==1.0.4
|
||||
# via rocm-docs-core
|
||||
sphinxcontrib-applehelp==1.0.4
|
||||
sphinx-reredirects==0.1.5
|
||||
# via -r requirements.in
|
||||
sphinxcontrib-applehelp==2.0.0
|
||||
# via sphinx
|
||||
sphinxcontrib-devhelp==1.0.2
|
||||
sphinxcontrib-devhelp==2.0.0
|
||||
# via sphinx
|
||||
sphinxcontrib-htmlhelp==2.0.1
|
||||
sphinxcontrib-htmlhelp==2.1.0
|
||||
# via sphinx
|
||||
sphinxcontrib-jsmath==1.0.1
|
||||
# via sphinx
|
||||
sphinxcontrib-qthelp==1.0.3
|
||||
sphinxcontrib-qthelp==2.0.0
|
||||
# via sphinx
|
||||
sphinxcontrib-serializinghtml==1.1.5
|
||||
sphinxcontrib-serializinghtml==2.0.0
|
||||
# via sphinx
|
||||
typing-extensions==4.5.0
|
||||
# via pydata-sphinx-theme
|
||||
uc-micro-py==1.0.1
|
||||
# via linkify-it-py
|
||||
urllib3==1.26.13
|
||||
# via requests
|
||||
wrapt==1.14.1
|
||||
tomli==2.0.1
|
||||
# via sphinx
|
||||
typing-extensions==4.12.2
|
||||
# via
|
||||
# pydata-sphinx-theme
|
||||
# pygithub
|
||||
urllib3==2.2.3
|
||||
# via
|
||||
# pygithub
|
||||
# requests
|
||||
wrapt==1.16.0
|
||||
# via deprecated
|
||||
|
||||
Reference in New Issue
Block a user