Compare commits

..

9 Commits

Author SHA1 Message Date
Sam Wu
dac34360f2 Update documentation requirements 2024-09-16 10:12:37 -08:00
Sam Wu
3a2f40543c Update documentation requirements 2024-06-06 16:58:33 -06:00
Sam Wu
6a62fb7c78 Fix RTD config 2024-05-02 08:54:41 -06:00
Sam Wu
a9508496d8 Update documentation requirements 2024-05-01 16:59:18 -06:00
Sam Wu
52206c9679 Update documentation requirements 2024-05-01 16:53:11 -06:00
Mátyás Aradi
107ca4a7b8 Update Linux and ROCm versions in ROCm 5.4.0 (#2878)
* Update Linux and ROCm versions

* Update CI to use build.os
2024-02-08 09:07:10 -07:00
Sam Wu
151c45ce87 add version to html title 2023-08-04 17:16:56 -06:00
Sam Wu
a7b32f5ca9 update pdf 2023-06-30 09:38:55 -06:00
Sam Wu
f7b7970234 rocm-docs-core v0.18.3 2023-06-30 09:38:42 -06:00
14 changed files with 1587 additions and 668 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -15,318 +15,107 @@ The release notes for the ROCm platform.
-------------------
## ROCm 5.2.0
## ROCm 5.4.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:
The ROCm v5.4 release consists of the following HIP enhancements:
##### HIP Installation Guide Updates
##### Support for Wall Clock64
The HIP Installation Guide is updated to include building HIP tests from source on the AMD and NVIDIA platforms.
A new timer function wall_clock64() is supported, which returns wall clock count at a constant frequency on the device.
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
```h
long long int wall_clock64();
```
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.
It returns wall clock count at a constant frequency on the device, which can be queried via HIP API with the hipDeviceAttributeWallClockRate attribute of the device in the HIP application code.
Example:
```h
int wallClkRate = 0; //in kilohertz
+HIPCHECK(hipDeviceGetAttribute(&wallClkRate, hipDeviceAttributeWallClockRate, deviceId));
```
Where hipDeviceAttributeWallClockRate is a device attribute.
> **Note**
>
> The wall clock frequency is a per-device attribute.
##### New Registry Added for GPU_MAX_HW_QUEUES
The GPU_MAX_HW_QUEUES registry defines the maximum number of independent hardware queues allocated per process per device.
The environment variable controls how many independent hardware queues HIP runtime can create per process, per device. If the application allocates more HIP streams than this number, then the HIP runtime reuses the same hardware queues for the new streams in a round-robin manner.
> **Note**
>
> This maximum number does not apply to hardware queues created for CU-masked HIP streams or cooperative queues for HIP Cooperative Groups (there is only one queue per device).
For more details, refer to the HIP Programming Guide.
#### New HIP APIs in This Release
The following new HIP APIs are available in the ROCm v5.4 release.
> **Note**
>
> This is a pre-official version (beta) release of the new APIs.
##### Error Handling
```h
hipError_t hipDrvGetErrorName(hipError_t hipError, const char** errorString);
```
This returns HIP errors in the text string format.
```h
hipError_t hipDrvGetErrorString(hipError_t hipError, const char** errorString);
```
This returns text string messages with more details about the error.
For more information, refer to the HIP API Guide.
##### HIP Tests Source Separation
With ROCm v5.4, a separate GitHub project is created at
<https://github.com/ROCm-Developer-Tools/hip-tests>
This contains HIP catch2 tests and samples, and new tests will continue to develop.
In future ROCm releases, catch2 tests and samples will be removed from the HIP project.
### OpenMP Enhancements
This release consists of the following OpenMP enhancements:
- Enable new device RTL in libomptarget as default.
- New flag `-fopenmp-target-fast` to imply `-fopenmp-target-ignore-env-vars -fopenmp-assume-no-thread-state -fopenmp-assume-no-nested-parallelism`.
- Support for the collapse clause and non-unit stride in cases where the No-Loop specialized kernel is generated.
- Initial implementation of optimized cross-team sum reduction for float and double type scalars.
- Pool-based optimization in the OpenMP runtime to reduce locking during data transfer.
### Deprecations and Warnings
#### Linux Filesystem Hierarchy Standard for ROCm
#### 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.
(5_4_0_filesystem_reorg_deprecation_notice)=
##### 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.
@@ -420,93 +209,37 @@ 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
| 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 |
The following defects are fixed in this release.
### Known Issues
These defects were identified and documented as known issues in previous ROCm releases and are fixed in this release.
This section consists of known issues in this release.
#### Compiler Error on gfx1030 When Compiling at -O0
#### Memory Allocated Using hipHostMalloc() with Flags Did Not Exhibit Fine-Grain Behavior
##### Issue
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.
The test was incorrectly using the `hipDeviceAttributePageableMemoryAccess` device attribute to determine coherent support.
##### Workaround
##### Fix
The workaround is not to use the -O0 flag for this case. For higher optimization levels, the compiler does not generate an invalid instruction.
`hipHostMalloc()` allocates memory with fine-grained access by default when the environment variable `HIP_HOST_COHERENT=1` is used.
#### System Freeze Observed During CUDA Memtest Checkpoint
For more information, refer to {doc}`hip:.doxygen/docBin/html/index`.
#### SoftHang with `hipStreamWithCUMask` test on AMD Instinct™
##### Issue
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.
On GFX10 GPUs, kernel execution hangs when it is launched on streams created using `hipStreamWithCUMask`.
##### Workaround
##### Fix
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.
On GFX10 GPUs, each workgroup processor encompasses two compute units, and the compute units must be enabled as a pair. The `hipStreamWithCUMask` API unit test cases are updated to set compute unit mask (cuMask) in pairs for GFX10 GPUs.
#### HPC test fails with the “HSA_STATUS_ERROR_MEMORY_FAULT” error
#### ROCm Tools GPU IDs
##### Issue
The HIP language device IDs are not the same as the GPU IDs reported by the tools. GPU IDs are globally unique and guaranteed to be consistent across APIs and processes.
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.
GPU IDs reported by ROCTracer and ROCProfiler or ROCm Tools are HSA Driver Node ID of that GPU, as it is a unique ID for that device in that particular node.

View File

@@ -18,8 +18,8 @@ shutil.copy2('../CHANGELOG.md','./CHANGELOG.md')
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"
version = "5.4.0"
release = "5.4.0"
setting_all_article_info = True
all_article_info_os = ["linux"]
@@ -64,7 +64,7 @@ article_pages = [
external_toc_path = "./sphinx/_toc.yml"
docs_core = ROCmDocs("ROCm 5.2.0 Documentation Home")
docs_core = ROCmDocs("ROCm 5.4.0 Documentation Home")
docs_core.setup()
external_projects_current_project = "rocm"

View File

@@ -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/22.20/ubuntu/focal/amdgpu-install_22.20.50200-1_all.deb
sudo apt install ./amdgpu-install_22.20.50200-1_all.deb
wget https://repo.radeon.com/amdgpu-install/5.4/ubuntu/focal/amdgpu-install_5.4.50400-1_all.deb
sudo apt install ./amdgpu-install_5.4.50400-1_all.deb
```
:::
:::{tab-item} Ubuntu 22.04
:sync: ubuntu-22.04
```shell
sudo apt update
wget https://repo.radeon.com/amdgpu-install/5.4/ubuntu/jammy/amdgpu-install_5.4.50400-1_all.deb
sudo apt install ./amdgpu-install_5.4.50400-1_all.deb
```
:::
@@ -39,30 +39,30 @@ sudo apt install ./amdgpu-install_22.20.50200-1_all.deb
:sync: RHEL
::::{tab-set}
:::{tab-item} RHEL 7.9
:sync: RHEL-7.9
:sync: RHEL-7
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/22.20/rhel/7.9/amdgpu-install-22.20.50200-1.el7.noarch.rpm
```
:::
:::{tab-item} RHEL 8.5
:sync: RHEL-8.5
:sync: RHEL-8
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/22.20/rhel/8.5/amdgpu-install-22.20.50200-1.el8.noarch.rpm
```
:::
:::{tab-item} RHEL 8.6
:sync: RHEL-8.6
:sync: RHEL-8
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/22.20/rhel/8.6/amdgpu-install-22.20.50200-1.el8.noarch.rpm
sudo yum install https://repo.radeon.com/amdgpu-install/5.4/rhel/8.6/amdgpu-install-5.4.50400-1.el8.noarch.rpm
```
:::
:::{tab-item} RHEL 8.7
:sync: RHEL-8.7
:sync: RHEL-8
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/5.4/rhel/8.7/amdgpu-install-5.4.50400-1.el8.noarch.rpm
```
:::
:::{tab-item} RHEL 9.1
:sync: RHEL-9.1
:sync: RHEL-9
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/5.4/rhel/9.1/amdgpu-install-5.4.50400-1.el9.noarch.rpm
```
:::
@@ -76,15 +76,7 @@ sudo yum install https://repo.radeon.com/amdgpu-install/22.20/rhel/8.6/amdgpu-in
:sync: SLES15-SP4
```shell
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
```
:::
:::{tab-item} Service Pack 3
:sync: SLES15-SP3
```shell
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
sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/5.4/sle/15.4/amdgpu-install-5.4.50400-1.noarch.rpm
```
:::
@@ -163,9 +155,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.1.3 and 5.2
**Example:** If you want to install ROCm releases 5.3.3 and 5.4
simultaneously, you are required to download the installer from the latest ROCm
release v5.2.
release v5.4.
### Add Required Repositories
@@ -180,24 +172,24 @@ Run the following commands based on your distribution to add the repositories:
:sync: ubuntu
::::{tab-set}
:::{tab-item} Ubuntu 18.04
:sync: ubuntu-18.04
:::{tab-item} Ubuntu 20.04
:sync: ubuntu-20.04
```shell
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
for ver in 5.3.3 5.4; 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
```
:::
:::{tab-item} Ubuntu 20.04
:sync: ubuntu-20.04
:::{tab-item} Ubuntu 22.04
:sync: ubuntu-22.04
```shell
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
for ver in 5.3.3; 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
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
@@ -210,15 +202,15 @@ sudo apt update
:sync: RHEL
::::{tab-set}
:::{tab-item} RHEL 7
:sync: RHEL-7
:::{tab-item} RHEL 8
:sync: RHEL-8
```shell
for ver in 5.1.3; do
for ver in 5.3.3; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
baseurl=https://repo.radeon.com/rocm/yum/$ver/main
baseurl=https://repo.radeon.com/rocm/rhel8/$ver/main
enabled=1
priority=50
gpgcheck=1
@@ -229,15 +221,15 @@ sudo yum clean all
```
:::
:::{tab-item} RHEL 8
:sync: RHEL-8
:::{tab-item} RHEL 9
:sync: RHEL-9
```shell
for ver in 5.1.3; do
for ver in 5.3.3; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
baseurl=https://repo.radeon.com/rocm/rhel8/$ver/main
baseurl=https://repo.radeon.com/rocm/rhel9/$ver/main
enabled=1
priority=50
gpgcheck=1
@@ -253,29 +245,8 @@ sudo yum clean all
:::::{tab-item} SUSE Linux Enterprise Server 15
:sync: SLES15
::::{tab-set}
:::{tab-item} Service Pack 3
:sync: SLES15-SP3
```shell
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
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
EOF
done
sudo zypper ref
```
:::
:::{tab-item} Service Pack 4
:sync: SLES15-SP4
```shell
for ver in 5.1.3; do
for ver in 5.3.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
@@ -287,9 +258,6 @@ done
sudo zypper ref
```
:::
::::
:::::
::::::
@@ -304,12 +272,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, will be installed as its latest
driver, associated with the ROCm release v5.4, will be installed as its latest
release in the list.
```none
sudo amdgpu-install --usecase=rocm --rocmrelease=5.1.3
sudo amdgpu-install --usecase=rocm --rocmrelease=5.2.0
sudo amdgpu-install --usecase=rocm --rocmrelease=5.3.3
sudo amdgpu-install --usecase=rocm --rocmrelease=5.4.0
```
## Additional options

View File

@@ -48,23 +48,23 @@ section.
To add the AMDGPU repository, follow these steps:
::::{tab-set}
:::{tab-item} Ubuntu 18.04
:sync: ubuntu-18.04
```shell
# 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 20.04
:sync: ubuntu-20.04
```shell
# 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' \
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4/ubuntu focal main' \
| sudo tee /etc/apt/sources.list.d/amdgpu.list
sudo apt update
```
:::
:::{tab-item} Ubuntu 22.04
:sync: ubuntu-22.04
```shell
# amdgpu repository for jammy
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4/ubuntu jammy 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 18.04
:sync: ubuntu-18.04
:::{tab-item} Ubuntu 20.04
:sync: ubuntu-20.04
```shell
# 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" \
# ROCm repositories for focal
for ver in 5.3.3 5.4; 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' \
@@ -101,13 +101,13 @@ sudo apt update
```
:::
:::{tab-item} Ubuntu 20.04
:sync: ubuntu-20.04
:::{tab-item} Ubuntu 22.04
:sync: ubuntu-22.04
```shell
# 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" \
# ROCm repositories for jammy
for ver in 5.3.3 5.4; do
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/$ver jammy 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.2.0 rocm-hip-sdk5.1.3
sudo apt install rocm-hip-sdk5.4.0 rocm-hip-sdk5.3.3
```
:::::
@@ -152,44 +152,6 @@ section.
```
::::{tab-set}
:::{tab-item} RHEL 7.9
:sync: RHEL-7.9
:sync: RHEL-7
```shell
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
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
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
EOF
sudo yum clean all
```
:::
:::{tab-item} RHEL 8.6
:sync: RHEL-8.6
:sync: RHEL-8
@@ -198,7 +160,7 @@ sudo yum clean all
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/8.6/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.4/rhel/8.6/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -209,6 +171,43 @@ 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.4/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.4/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
@@ -225,15 +224,15 @@ sudo reboot
To add the ROCm repository, use the following steps, based on your distribution:
::::{tab-set}
:::{tab-item} RHEL 7
:sync: RHEL-7
:::{tab-item} RHEL 8
:sync: RHEL-8
```shell
for ver in 5.2.1 5.2; do
for ver in 5.3.3 5.4; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
baseurl=https://repo.radeon.com/rocm/yum/$ver/main
baseurl=https://repo.radeon.com/rocm/rhel8/$ver/main
enabled=1
priority=50
gpgcheck=1
@@ -244,15 +243,15 @@ sudo yum clean all
```
:::
:::{tab-item} RHEL 8
:sync: RHEL-8
:::{tab-item} RHEL 9
:sync: RHEL-9
```shell
for ver in 5.1.3 5.2; do
for ver in 5.3.3 5.4; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
baseurl=https://repo.radeon.com/rocm/rhel8/$ver/main
baseurl=https://repo.radeon.com/rocm/rhel9/$ver/main
enabled=1
priority=50
gpgcheck=1
@@ -283,7 +282,7 @@ For a comprehensive list of meta-packages, refer to
- Sample Multi-version installation
```shell
sudo yum install rocm-hip-sdk5.2.0 rocm-hip-sdk5.1.3
sudo yum install rocm-hip-sdk5.4.0 rocm-hip-sdk5.3.3
```
:::::
@@ -298,15 +297,11 @@ If you have a version of the kernel-mode driver installed, you may skip this
section.
```
::::{tab-set}
:::{tab-item} Service Pack 3
:sync: SLES15-SP3
```shell
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/22.20/sle/15.3/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.4/sle/15.4/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -314,25 +309,6 @@ EOF
sudo zypper ref
```
:::
:::{tab-item} Service Pack 4
:sync: SLES15-SP4
```shell
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
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
EOF
sudo zypper ref
```
:::
::::
Install the kernel mode driver and reboot the system using the following
commands:
@@ -347,7 +323,7 @@ sudo reboot
To add the ROCm repository, use the following steps:
```shell
for ver in 5.1.3 5.2; do
for ver in 5.3.3 5.4; do
sudo tee --append /etc/zypp/repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
@@ -379,7 +355,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.2.0 rocm-hip-sdk5.1.3
sudo zypper --gpg-auto-import-keys install rocm-hip-sdk5.4.0 rocm-hip-sdk5.3.3
```
:::::
@@ -416,7 +392,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.2.0/bin:/opt/rocm-5.2.0/opencl/bin
export PATH=$PATH:/opt/rocm-5.4.0/bin:/opt/rocm-5.4.0/opencl/bin
```
```{attention}

View File

@@ -21,23 +21,23 @@ repository to the new release.
:sync: ubuntu
::::{tab-set}
:::{tab-item} Ubuntu 18.04
:sync: ubuntu-18.04
```shell
# 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 20.04
:sync: ubuntu-20.04
```shell
# 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' \
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4/ubuntu focal main' \
| sudo tee /etc/apt/sources.list.d/amdgpu.list
sudo apt update
```
:::
:::{tab-item} Ubuntu 22.04
:sync: ubuntu-22.04
```shell
# amdgpu repository for jammy
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4/ubuntu jammy main' \
| sudo tee /etc/apt/sources.list.d/amdgpu.list
sudo apt update
```
@@ -49,42 +49,6 @@ sudo apt update
:sync: RHEL
::::{tab-set}
:::{tab-item} RHEL 7.9
:sync: RHEL-7.9
:sync: RHEL-7
```shell
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
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
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
EOF
sudo yum clean all
```
:::
:::{tab-item} RHEL 8.6
:sync: RHEL-8.6
:sync: RHEL-8
@@ -93,7 +57,7 @@ sudo yum clean all
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/22.20/rhel/8.6/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.4/rhel/8.6/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -102,20 +66,53 @@ 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.4/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.4/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
:sync: SLES15
::::{tab-set}
:::{tab-item} Service Pack 3
:sync: SLES15-SP3
```shell
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/22.20/sle/15.3/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.4/sle/15.4/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -123,25 +120,6 @@ EOF
sudo zypper ref
```
:::
:::{tab-item} Service Pack 4
:sync: SLES15-SP4
```shell
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
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
EOF
sudo zypper ref
```
:::
::::
:::::
::::::
@@ -190,11 +168,11 @@ repository to the new release.
:sync: ubuntu
::::{tab-set}
:::{tab-item} Ubuntu 18.04
:sync: ubuntu-18.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.2.3 bionic main" \
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.4 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
@@ -202,11 +180,11 @@ sudo apt update
```
:::
:::{tab-item} Ubuntu 20.04
:sync: ubuntu-20.04
:::{tab-item} Ubuntu 22.04
:sync: ubuntu-22.04
```shell
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.2.3 focal main" \
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.4 jammy 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
@@ -220,14 +198,14 @@ sudo apt update
:sync: RHEL
::::{tab-set}
:::{tab-item} RHEL 7
:sync: RHEL-7
:::{tab-item} RHEL 8
:sync: RHEL-8
```shell
sudo tee /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-5.2]
name=ROCm5.2
baseurl=https://repo.radeon.com/rocm/yum/5.2/main
[ROCm-5.4]
name=ROCm5.4
baseurl=https://repo.radeon.com/rocm/rhel8/5.4/main
enabled=1
priority=50
gpgcheck=1
@@ -237,14 +215,14 @@ sudo yum clean all
```
:::
:::{tab-item} RHEL 8
:sync: RHEL-8
:::{tab-item} RHEL 9
:sync: RHEL-9
```shell
sudo tee /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-5.2]
name=ROCm5.2
baseurl=https://repo.radeon.com/rocm/rhel8/5.2/main
[ROCm-5.4]
name=ROCm5.4
baseurl=https://repo.radeon.com/rocm/rhel9/5.4/main
enabled=1
priority=50
gpgcheck=1
@@ -261,10 +239,10 @@ sudo yum clean all
```shell
sudo tee /etc/zypp/repos.d/rocm.repo <<EOF
[ROCm-5.2]
name=ROCm5.2
[ROCm-5.4]
name=ROCm5.4
name=rocm
baseurl=https://repo.radeon.com/rocm/zyp/5.2/main
baseurl=https://repo.radeon.com/rocm/zyp/5.4/main
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key

View File

@@ -29,11 +29,11 @@ wget https://repo.radeon.com/rocm/rocm.gpg.key -O - | \
```shell
# Kernel driver repository for focal
sudo tee /etc/apt/sources.list.d/amdgpu.list <<'EOF'
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/latest/ubuntu focal main
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4/ubuntu focal main
EOF
# ROCm repository for focal
sudo tee /etc/apt/sources.list.d/rocm.list <<'EOF'
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/debian focal main
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.4 focal main
EOF
```
@@ -44,11 +44,11 @@ EOF
```shell
# Kernel driver repository for jammy
sudo tee /etc/apt/sources.list.d/amdgpu.list <<'EOF'
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/latest/ubuntu jammy main
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4/ubuntu jammy main
EOF
# ROCm repository for jammy
sudo tee /etc/apt/sources.list.d/rocm.list <<'EOF'
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/debian jammy main
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.4 jammy main
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
EOF
```
@@ -80,7 +80,7 @@ sudo apt update
sudo tee /etc/yum.repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/latest/rhel/8.6/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.4/rhel/8.6/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -89,7 +89,7 @@ EOF
sudo tee /etc/yum.repos.d/rocm.repo <<'EOF'
[rocm]
name=rocm
baseurl=https://repo.radeon.com/rocm/rhel8/latest/main
baseurl=https://repo.radeon.com/rocm/rhel8/5.4/main
enabled=1
priority=50
gpgcheck=1
@@ -107,7 +107,7 @@ EOF
sudo tee /etc/yum.repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/latest/rhel/8.7/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.4/rhel/8.7/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -116,7 +116,7 @@ EOF
sudo tee /etc/yum.repos.d/rocm.repo <<'EOF'
[rocm]
name=rocm
baseurl=https://repo.radeon.com/rocm/rhel8/latest/main
baseurl=https://repo.radeon.com/rocm/rhel8/5.4/main
enabled=1
priority=50
gpgcheck=1
@@ -134,7 +134,7 @@ EOF
sudo tee /etc/yum.repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/latest/rhel/9.1/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.4/rhel/9.1/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -143,7 +143,7 @@ EOF
sudo tee /etc/yum.repos.d/rocm.repo <<'EOF'
[rocm]
name=rocm
baseurl=https://repo.radeon.com/rocm/rhel9/latest/main
baseurl=https://repo.radeon.com/rocm/rhel9/5.4/main
enabled=1
priority=50
gpgcheck=1
@@ -179,7 +179,7 @@ sudo yum clean all
sudo tee /etc/zypp/repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/latest/sle/15.4/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.4/sle/15.4/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key

View File

@@ -45,6 +45,15 @@ modern CPU and GPU platforms.
:::
:::{grid-item-card} {doc}`rocWMMA <rocwmma:index>`
`rocWMMA` provides an API to break down mixed precision matrix multiply-accumulate
(MMA) problems into fragments and distributes these over GPU wavefronts.
- {doc}`Documentation <rocwmma:index>`
- [Changelog](https://github.com/ROCmSoftwarePlatform/rocWMMA/blob/develop/CHANGELOG.md)
:::
:::{grid-item-card} {doc}`rocSOLVER <rocsolver:index>`
`rocSOLVER` provides a subset of LAPACK (Linear Algebra Package) functionality on the ROCm platform.

View File

@@ -21,6 +21,7 @@ at compile-time of the hipLIB in question. For dynamic dispatch between vendor i
- {doc}`hipBLAS <hipblas:index>`
- {doc}`hipBLASLt <hipblaslt:index>`
- {doc}`rocALUTION <rocalution:index>`
- {doc}`rocWMMA <rocwmma:index>`
- {doc}`rocSOLVER <rocsolver:index>`
- {doc}`hipSOLVER <hipsolver:index>`
- {doc}`rocSPARSE <rocsparse:index>`

View File

@@ -43,6 +43,8 @@ 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 |
| 5.4.x | 1.16 | 22.9 |
For the latest documentation of these libraries, refer to the
[associated documentation](../reference/gpu_libraries/c%2B%2B_primitives.md).

View File

@@ -8,14 +8,11 @@ AMD ROCm™ Platform supports the following Linux distributions.
| Distribution |Processor Architectures| Validated Kernel |
|--------------------|-----------------------|--------------------|
| CentOS 7.9 | x86-64 | 3.10 |
| RHEL 8.6 to 8.5 | x86-64 | 4.18 |
| RHEL 7.9 | x86-64 | 3.10 |
| RHEL 9.1 | x86-64 | 5.14 |
| RHEL 8.6 to 8.7 | x86-64 | 4.18 |
| SLES 15 SP4 | x86-64 | 5.14.21 |
| SLES 15 SP3 | x86-64 | 5.3.18 |
| Ubuntu 20.04.4 LTS | x86-64 | 5.13 |
| Ubuntu 20.04.3 LTS | x86-64 | 5.11 |
| Ubuntu 18.04.5 LTS | x86-64 | 5.4.0 |
| Ubuntu 20.04.5 LTS | x86-64 | 5.15 |
| Ubuntu 22.04.1 LTS | x86-64 | 5.15, 5.17 OEM |
## Virtualization Support

View File

@@ -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.2.0/share/doc/amd_comgr/LICENSE.txt`
`/opt/rocm-5.4.0/share/doc/amd_comgr/LICENSE.txt`

View File

@@ -10,3 +10,6 @@ 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.4.0 |
| 5.3.0 | 5.1.3, 5.2.3 |
| 5.4.0 | 5.2.3, 5.3.3 |

View File

@@ -99,6 +99,8 @@ subtrees:
url: ${project:hipblaslt}
- title: rocALUTION
url: ${project:rocalution}
- title: rocWMMA
url: ${project:rocwmma}
- title: rocSOLVER
url: ${project:rocsolver}
- title: hipSOLVER