Compare commits
38 Commits
rocm-3.9.1
...
roc-4.0.x
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
290091946f | ||
|
|
2874a8ae6c | ||
|
|
f62f2b24da | ||
|
|
790567e3bd | ||
|
|
57d7a202d4 | ||
|
|
80d2aa739b | ||
|
|
b18851f804 | ||
|
|
0f0dbf0c92 | ||
|
|
224a45379f | ||
|
|
f521943747 | ||
|
|
2b7f806b10 | ||
|
|
cd55ef67c9 | ||
|
|
9320669eee | ||
|
|
c1211c66e3 | ||
|
|
c8fcff6488 | ||
|
|
7118076ab4 | ||
|
|
ec5523395a | ||
|
|
41d8f6a235 | ||
|
|
c69eef858a | ||
|
|
5b902ca38c | ||
|
|
68c5c198df | ||
|
|
761ed4e70f | ||
|
|
8d5a160f0a | ||
|
|
f61c2ad155 | ||
|
|
3e2e30cc9a | ||
|
|
a1f3b4e6b8 | ||
|
|
7a3a012e6a | ||
|
|
5b6ab31db3 | ||
|
|
acabe2c532 | ||
|
|
39d8bcd504 | ||
|
|
af6d1e9b26 | ||
|
|
1fa1d4a935 | ||
|
|
03d93c1948 | ||
|
|
93984b0956 | ||
|
|
6ccb1cfc0f | ||
|
|
f054f82173 | ||
|
|
bb6756b58d | ||
|
|
d957b8a17c |
BIN
AMD_ROCm_Release_Notes_v4.0.pdf
Normal file
54972
HIP-API_Guide_v4.0.pdf
Normal file
BIN
HIP_Programming_Guide_v4.0.pdf
Normal file
681
README.md
@@ -1,11 +1,55 @@
|
||||
# AMD ROCm™ v4.0.1 Patch Release Notes
|
||||
|
||||
## SUPPORTED OPERATING SYSTEMS
|
||||
|
||||
### List of Supported Operating Systems
|
||||
|
||||
The AMD ROCm platform is designed to support the following operating systems:
|
||||
|
||||
* Ubuntu 20.04.1 (5.4 and 5.6-oem) and 18.04.5 (Kernel 5.4)
|
||||
* CentOS 7.9 (3.10.0-1127) & RHEL 7.9 (3.10.0-1160.6.1.el7) (Using devtoolset-7 runtime support)
|
||||
* CentOS 8.3 (4.18.0-193.el8) and RHEL 8.3 (4.18.0-193.1.1.el8) (devtoolset is not required)
|
||||
* SLES 15 SP2
|
||||
|
||||
### SUPPORT FOR RHEL V8.3
|
||||
|
||||
This patch release extends support for RHEL v8.3.
|
||||
|
||||
### FRESH INSTALLATION OF AMD ROCM V4.0.1 RECOMMENDED
|
||||
|
||||
A fresh and clean installation of AMD ROCm v4.0.1 is recommended. An upgrade from previous releases to AMD ROCm v4.0.1 is not supported. For more information, refer to the AMD ROCm Installation Guide.
|
||||
|
||||
**Note**: AMD ROCm release v3.3 or prior releases are not fully compatible with AMD ROCm v3.5 and higher versions. You must perform a fresh ROCm installation if you want to upgrade from AMD ROCm v3.3 or older to 3.5 or higher versions and vice-versa.
|
||||
|
||||
**Note**: *render* group is required only for Ubuntu v20.04. For all other ROCm supported operating systems, continue to use video group.
|
||||
|
||||
* For ROCm v3.5 and releases thereafter, the clinfo path is changed to /opt/rocm/opencl/bin/clinfo.
|
||||
|
||||
* For ROCm v3.3 and older releases, the clinfo path remains /opt/rocm/opencl/bin/x86_64/clinfo.
|
||||
|
||||
### ROCM MULTI-VERSION INSTALLATION UPDATE
|
||||
|
||||
With the AMD ROCm v4.0.1 release, the following ROCm multi-version installation changes apply:
|
||||
|
||||
The meta packages rocm-dkms<version> are now deprecated for multi-version ROCm installs. For example, rocm-dkms3.7.0, rocm-dkms3.8.0.
|
||||
|
||||
* Multi-version installation of ROCm should be performed by installing rocm-dev<version> using each of the desired ROCm versions. For example, rocm-dev3.7.0, rocm-dev3.8.0, rocm-dev3.9.0.
|
||||
|
||||
* Version files must be created for each multi-version rocm <= 4.0.1
|
||||
|
||||
* Command: echo <version> | sudo tee /opt/rocm-<version>/.info/version
|
||||
|
||||
* Example: echo 4.0.1 | sudo tee /opt/rocm-4.0.1/.info/version
|
||||
|
||||
* The rock-dkms loadable kernel modules should be installed using a single rock-dkms package.
|
||||
|
||||
* ROCm v3.9 and above will not set any ldconfig entries for ROCm libraries for multi-version installation. Users must set LD_LIBRARY_PATH to load the ROCm library version of choice.
|
||||
|
||||
**NOTE**: The single version installation of the ROCm stack remains the same. The rocm-dkms package can be used for single version installs and is not deprecated at this time.
|
||||
|
||||
|
||||
|
||||
# AMD ROCm™ Patch Release Notes v3.9.1
|
||||
|
||||
Users of RPM-based operating systems (RHEL, CentOS, and others) are recommended to use the ROCm v3.9.1 patch release due to a potential compatibility issue with certain drivers.
|
||||
|
||||
# AMD ROCm Release Notes v3.9.0
|
||||
# AMD ROCm™ Release Notes v4.0
|
||||
|
||||
This page describes the features, fixed issues, and information about downloading and installing the ROCm software.
|
||||
It also covers known issues in this release.
|
||||
@@ -16,17 +60,23 @@ It also covers known issues in this release.
|
||||
* [AMD ROCm Documentation Updates](#AMD-ROCm-Documentation-Updates)
|
||||
|
||||
- [What\'s New in This Release](#Whats-New-in-This-Release)
|
||||
* [ROCm Compiler Enhancements](#ROCm-Compiler-Enhancements)
|
||||
* [INTRODUCING AMD INSTINCT MI100](#INTRODUCING-AMD-INSTINCT-MI100)
|
||||
* [RAS Enhancements](#RAS-Enhancements)
|
||||
* [Using CMake with AMD ROCm](#Using-CMake-with-AMD-ROCm)
|
||||
* [AMD ROCm and Mesa Multimedia](#AMD-ROCm-and-Mesa-Multimedia)
|
||||
* [ROCm System Management Information](#ROCm-System-Management-Information)
|
||||
* [ROCm Math and Communication Libraries](#ROCm-Math-and-Communication-Libraries)
|
||||
* [ROCM AOMP Enhancements](#ROCm-AOMP-Enhancements)
|
||||
|
||||
- [Fixed Defects](#Fixed-Defects)
|
||||
* [AMD GPU Debugger Enhancements](#AMD-GPU-Debugger-Enhancements)
|
||||
|
||||
|
||||
- [Known Issues](#Known-Issues)
|
||||
|
||||
- [Deprecations](#Deprecations)
|
||||
|
||||
* [Compiler Generated Code Object Version 2 Deprecation ](#Compiler-Generated-Code-Object-Version-2-Deprecation)
|
||||
* [ROCr Runtime Deprecations](#ROCr-Runtime-Deprecations)
|
||||
* [AOMP Deprecation](#AOMP-Deprecation)
|
||||
|
||||
|
||||
- [Deploying ROCm](#Deploying-ROCm)
|
||||
|
||||
- [Hardware and Software Support](#Hardware-and-Software-Support)
|
||||
@@ -39,33 +89,24 @@ It also covers known issues in this release.
|
||||
|
||||
# Supported Operating Systems
|
||||
|
||||
## Support for Ubuntu 20.04.1
|
||||
|
||||
In this release, AMD ROCm extends support to Ubuntu 20.04.1, including v5.4 and v5.6-oem.
|
||||
|
||||
**Note**: AMD ROCm only supports Long Term Support (LTS) versions of Ubuntu. Versions other than LTS may work with ROCm, however, they are not officially supported.
|
||||
|
||||
## Support for SLES 15 SP2
|
||||
|
||||
This release extends support to SLES 15 SP2.
|
||||
|
||||
## List of Supported Operating Systems
|
||||
|
||||
The AMD ROCm platform is designed to support the following operating systems:
|
||||
|
||||
* Ubuntu 20.04.1 (5.4 and 5.6-oem) and 18.04.5 (Kernel 5.4)
|
||||
|
||||
* CentOS 7.8 & RHEL 7.8 (Kernel 3.10.0-1127) (Using devtoolset-7 runtime support)
|
||||
* CentOS 7.8 (3.10.0-1127) & RHEL 7.9 (3.10.0-1160.6.1.el7) (Using devtoolset-7 runtime support)
|
||||
|
||||
* CentOS 8.2 & RHEL 8.2 (Kernel 4.18.0 ) (devtoolset is not required)
|
||||
* CentOS 8.2 (4.18.0-193.el8) and RHEL 8.2 (4.18.0-193.1.1.el8) (devtoolset is not required)
|
||||
|
||||
* SLES 15 SP2
|
||||
|
||||
|
||||
# ROCm Installation Updates
|
||||
|
||||
## Fresh Installation of AMD ROCm v3.9 Recommended
|
||||
A fresh and clean installation of AMD ROCm v3.9 is recommended. An upgrade from previous releases to AMD ROCm v3.9 is not supported.
|
||||
## Fresh Installation of AMD ROCm v4.0 Recommended
|
||||
|
||||
A fresh and clean installation of AMD ROCm v4.0 is recommended. An upgrade from previous releases to AMD ROCm v4.0 is not supported.
|
||||
|
||||
For more information, refer to the AMD ROCm Installation Guide at:
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html
|
||||
@@ -78,19 +119,21 @@ https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html
|
||||
|
||||
* For ROCm v3.3 and older releases, the *clinfo* path remains unchanged - */opt/rocm/opencl/bin/x86_64/clinfo*.
|
||||
|
||||
**Note**: After an operating system upgrade, AMD ROCm may upgrade automatically and result in an error. This is because AMD ROCm does not support upgrades currently. You must uninstall and reinstall AMD ROCm after an operating system upgrade.
|
||||
|
||||
|
||||
## ROCm MultiVersion Installation Update
|
||||
|
||||
With the AMD ROCm v3.9 release, the following ROCm multi-version installation changes apply:
|
||||
With the AMD ROCm v4.0 release, the following ROCm multi-version installation changes apply:
|
||||
|
||||
The meta packages rocm-dkms<version> are now deprecated for multi-version ROCm installs. For example, rocm-dkms3.7.0, rocm-dkms3.8.0.
|
||||
|
||||
* Multi-version installation of ROCm should be performed by installing rocm-dev<version> using each of the desired ROCm versions. For example, rocm-dev3.7.0, rocm-dev3.8.0, rocm-dev3.9.0.
|
||||
* Version files must be created for each multi-version rocm <= 3.9.0
|
||||
* Version files must be created for each multi-version rocm <= 4.0.0
|
||||
|
||||
* command: echo <version> | sudo tee /opt/rocm-<version>/.info/version
|
||||
|
||||
* example: echo 3.9.0 | sudo tee /opt/rocm-3.9.0/.info/version
|
||||
* example: echo 4.0.0 | sudo tee /opt/rocm-4.0.0/.info/version
|
||||
|
||||
* The rock-dkms loadable kernel modules should be installed using a single rock-dkms package.
|
||||
|
||||
@@ -107,66 +150,45 @@ The meta packages rocm-dkms<version> are now deprecated for multi-version ROCm i
|
||||
|
||||
The AMD ROCm Installation Guide in this release includes:
|
||||
|
||||
* Updated Supported Environments
|
||||
* Multi-version Installation Instructions
|
||||
* Supported Environments
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html
|
||||
* Installation Instructions for v4.0
|
||||
|
||||
* HIP Installation Instructions
|
||||
|
||||
## ROCm Compiler Documentation Updates
|
||||
* AMD ROCm and Mesa Multimedia Installation
|
||||
|
||||
The ROCm Compiler documentation updates include,
|
||||
* Using CMake with AMD ROCm
|
||||
|
||||
* OpenMP – Extras v12.9-0
|
||||
* OpenMP-Extras Installation
|
||||
* OpenMP-Extras Source Build
|
||||
* AOMP-v11.9-0
|
||||
* AOMP Source Build
|
||||
|
||||
For more information, see
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Programming_Guides/openmp_support.html
|
||||
|
||||
For the updated ROCm SMI API Guide, see
|
||||
|
||||
https://github.com/RadeonOpenCompute/ROCm/blob/master/ROCm_SMI_Manual_v3.9.pdf
|
||||
|
||||
|
||||
## ROCm System Management Information
|
||||
|
||||
ROCM-SMI version: 1.4.1 | Kernel version: 5.6.20
|
||||
|
||||
* ROCm SMI and Command Line Interface
|
||||
* ROCm SMI APIs for Compute Unit Occupancy
|
||||
* Usage
|
||||
* Optional Arguments
|
||||
* Display Options
|
||||
* Topology
|
||||
* Pages Information
|
||||
* Hardware-related Information
|
||||
* Software-related/controlled information
|
||||
* Set Options
|
||||
* Reset Options
|
||||
* Auto-response Options
|
||||
* Output Options
|
||||
|
||||
For more information, refer to
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/ROCm_System_Managment/ROCm-System-Managment.html#rocm-command-line-interface
|
||||
|
||||
For ROCm SMI API Guide, see
|
||||
|
||||
https://github.com/RadeonOpenCompute/ROCm/blob/master/ROCm_SMI_Manual_v3.9.pdf
|
||||
For more information, refer to the ROCm documentation website at:
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/
|
||||
|
||||
|
||||
## AMD ROCm - HIP Documentation Updates
|
||||
|
||||
* HIP Porting Guide – CU_Pointer_Attribute_Memory_Type
|
||||
* HIP Programming Guide v4.0
|
||||
|
||||
https://github.com/RadeonOpenCompute/ROCm/blob/master/HIP_Programming_Guide_v4.0.pdf
|
||||
|
||||
* HIP API Guide v4.0
|
||||
|
||||
https://github.com/RadeonOpenCompute/ROCm/blob/master/HIP-API_Guide_v4.0.pdf
|
||||
|
||||
* HIP FAQ
|
||||
|
||||
For more information, refer to
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Programming_Guides/HIP-porting-guide.html#hip-porting-guide
|
||||
https://rocmdocs.amd.com/en/latest/Programming_Guides/HIP-FAQ.html#hip-faq
|
||||
|
||||
|
||||
## ROCm SMI API Documentation Updates
|
||||
|
||||
* xGMI API
|
||||
|
||||
For more information, refer to the ROCm SMI API Guide at,
|
||||
|
||||
https://github.com/RadeonOpenCompute/ROCm/blob/master/ROCm_SMI_API_Guide_v4.0.pdf
|
||||
|
||||
|
||||
## General AMD ROCm Documentation Links
|
||||
@@ -183,378 +205,146 @@ Access the following links for more information:
|
||||
|
||||
* For AMD ROCm binary structure, see
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html#build-amd-rocm
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Software-Stack-for-AMD-GPU.html
|
||||
|
||||
|
||||
* For AMD ROCm Release History, see
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html#amd-rocm-version-history
|
||||
https://rocmdocs.amd.com/en/latest/Current_Release_Notes/ROCm-Version-History.html
|
||||
|
||||
|
||||
|
||||
# What\'s New in This Release
|
||||
|
||||
## ROCm Compiler Enhancements
|
||||
## INTRODUCING AMD INSTINCT MI100
|
||||
|
||||
The ROCm compiler support in the llvm-amdgpu-12.0.dev-amd64.deb package is enhanced to include support for OpenMP. To utilize this support, the additional package openmp-extras_12.9-0_amd64.deb is required.
|
||||
The AMD Instinct™ MI100 accelerator is the world’s fastest HPC GPU, and a culmination of the AMD CDNA architecture, with all-new Matrix Core Technology, and AMD ROCm™ open ecosystem to deliver new levels of performance, portability, and productivity. AMD CDNA is an all-new GPU architecture from AMD to drive accelerated computing into the era of exascale computing. The new architecture augments scalar and vector processing with new Matrix Core Engines and adds Infinity Fabric™ technology to scale up to larger systems. The open ROCm ecosystem puts customers in control and is a robust, mature platform that is easy to develop for and capable of running the most critical applications. The overall result is that the MI100 is the first GPU to break the 10TFLOP/s FP64 barrier designed as the steppingstone to the next generation of Exascale systems that will deliver pioneering discoveries in machine learning and scientific computing.
|
||||
|
||||
Note, by default, both packages are installed during the ROCm v3.9 installation. For information about ROCm installation, refer to the ROCm Installation Guide.
|
||||
|
||||
AMD ROCm supports the following compilers:
|
||||
### Key Features of AMD Instinct™ MI100
|
||||
|
||||
* C++ compiler - Clang++
|
||||
* C compiler - Clang
|
||||
* Flang - FORTRAN compiler (FORTRAN 2003 standard)
|
||||
Important features of the AMD Instinct™ MI100 accelerator include:
|
||||
|
||||
**NOTE** : All of the above-mentioned compilers support:
|
||||
* Extended matrix core engine with Matrix Fused Multiply-Add (MFMA) for mixed-precision arithmetic and operates on KxN matrices (FP32, FP16, BF16, Int8)
|
||||
|
||||
* OpenMP standard 4.5 and an evolving subset of the OpenMP 5.0 standard
|
||||
* OpenMP computational offloading to the AMD GPUs
|
||||
* Added native support for the bfloat16 data type
|
||||
|
||||
For more information about AMD ROCm compilers, see the Compiler Documentation section at,
|
||||
* 3 Infinity fabric connections per GPU enable a fully connected group of 4 GPUs in a ‘hive’
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/index.html
|
||||

|
||||
|
||||
|
||||
### Matrix Core Engines and GFX908 Considerations
|
||||
|
||||
The AMD CDNA architecture builds on GCN’s foundation of scalars and vectors and adds matrices while simultaneously adding support for new numerical formats for machine learning and preserving backward compatibility for any software written for the GCN architecture. These Matrix Core Engines add a new family of wavefront-level instructions, the Matrix Fused MultiplyAdd or MFMA. The MFMA family performs mixed-precision arithmetic and operates on KxN matrices using four different types of input data: 8-bit integers (INT8), 16-bit half-precision FP (FP16), 16-bit brain FP (bf16), and 32-bit single-precision (FP32). All MFMA instructions produce either a 32-bit integer (INT32) or FP32 output, which reduces the likelihood of overflowing during the final accumulation stages of matrix multiplication.
|
||||
|
||||
On nodes with gfx908, MFMA instructions are available to substantially speed up matrix operations. This hardware feature is used only in matrix multiplications functions in rocBLAS and supports only three base types f16_r, bf16_r, and f32_r.
|
||||
|
||||
* For half precision (f16_r and bf16_r) GEMM, use the function rocblas_gemm_ex, and set the compute_type parameter to f32_r.
|
||||
|
||||
* For single precision (f32_r) GEMM, use the function rocblas_sgemm.
|
||||
|
||||
* For single precision complex (f32_c) GEMM, use the function rocblas_cgemm.
|
||||
|
||||
|
||||
### References
|
||||
* For more information about bfloat16, see
|
||||
|
||||
https://rocblas.readthedocs.io/en/master/usermanual.html
|
||||
|
||||
* For more details about AMD Instinct™ MI100 accelerator key features, see
|
||||
|
||||
https://www.amd.com/system/files/documents/instinct-mi100-brochure.pdf
|
||||
|
||||
* For more information about the AMD Instinct MI100 accelerator, refer to the following sources:
|
||||
|
||||
- AMD CDNA whitepaper at https://www.amd.com/system/files/documents/amd-cdna-whitepaper.pdf
|
||||
|
||||
### Auxiliary Package Supporting OpenMP
|
||||
- MI100 datasheet at https://www.amd.com/system/files/documents/instinct-mi100-brochure.pdf
|
||||
|
||||
The openmp-extras_12.9-0_amd64.deb auxiliary package supports OpenMP within the ROCm compiler. It contains OpenMP specific header files, which are installed in /opt/rocm/llvm/include as well as runtime libraries, fortran runtime libraries, and device bitcode files in /opt/rocm/llvm/lib. The auxiliary package also consists of examples in the /opt/rocm/llvm/examples folder.
|
||||
* AMD Instinct MI100/CDNA1 Shader Instruction Set Architecture (Dec. 2020) – This document describes the current environment, organization, and program state of AMD CDNA “Instinct MI100” devices. It details the instruction set and the microcode formats native to this family of processors that are accessible to programmers and compilers.
|
||||
|
||||
**NOTE**: The optional AOMP package resides in /opt/rocm//aomp/bin/clang and the ROCm compiler, which supports OpenMP for AMDGPU, is located in /opt/rocm/llvm/bin/clang.
|
||||
https://developer.amd.com/wp-content/resources/CDNA1_Shader_ISA_14December2020.pdf
|
||||
|
||||
### AOMP Optional Package Deprecation
|
||||
|
||||
Before the AMD ROCm v3.9 release, the optional AOMP package provided support for OpenMP. While AOMP is available in this release, the optional package may be deprecated from ROCm in the future. It is recommended you transition to the ROCm compiler or AOMP standalone releases for OpenMP support.
|
||||
## RAS Enhancements
|
||||
|
||||
### Understanding ROCm Compiler OpenMP Support and AOMP OpenMP Support
|
||||
RAS (Reliability, Availability, and Accessibility) features provide help with data center GPU management. It is a method provided to users to track and manage data points via options implemented in the ROCm-SMI Command Line Interface (CLI) tool.
|
||||
|
||||
The AOMP OpenMP support in ROCm v3.9 is based on the standalone AOMP v11.9-0, with LLVM v11 as the underlying system. However, the ROCm compiler's OpenMP support is based on LLVM v12 (upstream).
|
||||
For more information about rocm-smi, see
|
||||
|
||||
**NOTE**: Do not combine the object files from the two LLVM implementations. You must rebuild the application in its entirety using either the AOMP OpenMP or the ROCm OpenMP implementation.
|
||||
https://github.com/RadeonOpenCompute/ROC-smi
|
||||
|
||||
### Example – OpenMP Using the ROCm Compiler
|
||||
The command options are wrappers of the system calls into the device driver interface as described here:
|
||||
|
||||
```
|
||||
https://dri.freedesktop.org/docs/drm/gpu/amdgpu.html#amdgpu-ras-support
|
||||
|
||||
$ cat helloworld.c
|
||||
#include <stdio.h>
|
||||
#include <omp.h>
|
||||
int main(void) {
|
||||
int isHost = 1;
|
||||
#pragma omp target map(tofrom: isHost)
|
||||
{
|
||||
isHost = omp_is_initial_device();
|
||||
printf("Hello world. %d\n", 100);
|
||||
for (int i =0; i<5; i++) {
|
||||
printf("Hello world. iteration %d\n", i);
|
||||
}
|
||||
}
|
||||
printf("Target region executed on the %s\n", isHost ? "host" : "device");
|
||||
return isHost;
|
||||
}
|
||||
$ /opt/rocm/llvm/bin/clang -O3 -target x86_64-pc-linux-gnu -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx900 helloworld.c -o helloworld
|
||||
$ export LIBOMPTARGET_KERNEL_TRACE=1
|
||||
$ ./helloworld
|
||||
DEVID: 0 SGN:1 ConstWGSize:256 args: 1 teamsXthrds:( 1X 256) reqd:( 1X 0) n:__omp_offloading_34_af0aaa_main_l7
|
||||
Hello world. 100
|
||||
Hello world. iteration 0
|
||||
Hello world. iteration 1
|
||||
Hello world. iteration 2
|
||||
Hello world. iteration 3
|
||||
Hello world. iteration 4
|
||||
Target region executed on the device
|
||||
|
||||
```
|
||||
|
||||
For more examples, see */opt/rocm/llvm/examples*.
|
||||
## Using CMake with AMD ROCm
|
||||
|
||||
Most components in AMD ROCm support CMake 3.5 or higher out-of-the-box and do not require any special Find modules. A Find module is often used downstream to find the files by guessing locations of files with platform-specific hints. Typically, the Find module is required when the upstream is not built with CMake or the package configuration files are not available.
|
||||
|
||||
## ROCm SYSTEM MANAGEMENT INFORMATION
|
||||
AMD ROCm provides the respective config-file packages, and this enables find_package to be used directly. AMD ROCm does not require any Find module as the config-file packages are shipped with the upstream projects.
|
||||
|
||||
The AMD ROCm v3.9 release consists of the following ROCm System Management Information (SMI) enhancements:
|
||||
For more information, see
|
||||
|
||||
* Shows the hardware topology
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Using-CMake-with-AMD-ROCm.html
|
||||
|
||||
* The ROCm-SMI showpids option shows per-process Compute Unit (CU) Occupancy, VRAM usage, and SDMA usage
|
||||
|
||||
* Support for GPU Reset Event and Thermal Throttling Event in ROCm-SMI Library
|
||||
## AMD ROCm and Mesa Multimedia
|
||||
|
||||
### ROCm-SMI Hardware Topology
|
||||
AMD ROCm extends support to Mesa Multimedia. Mesa is an open-source software implementation of OpenGL, Vulkan, and other graphics API specifications. Mesa translates these specifications to vendor-specific graphics hardware drivers.
|
||||
|
||||
The ROCm-SMI Command Line Interface (CLI) is enhanced to include new options to denote GPU inter-connect topology in the system along with the relative distance between each other and the closest NUMA (CPU) node for each GPU.
|
||||
For detailed installation instructions, refer to
|
||||
|
||||

|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Mesa-Multimedia-Installation.html
|
||||
|
||||
### Compute Unit Occupancy
|
||||
|
||||
The AMD ROCm stack now supports a user process in querying Compute Unit (CU) occupancy at a particular moment. This service can be accessed to determine if a process P is using sufficient compute units.
|
||||
## ROCm System Management Information
|
||||
|
||||
A periodic collection is used to build the profile of a compute unit occupancy for a workload.
|
||||
The following enhancements are made to ROCm System Management Interface (SMI).
|
||||
|
||||

|
||||
### Support for Printing PCle Information on AMD Instinct™100
|
||||
|
||||
AMD ROCm extends support for printing PCle information on AMD Instinct MI100.
|
||||
|
||||
ROCm supports this capability only on GFX9 devices. Users can access the functionality in two ways:
|
||||
To check the pp_dpm_pcie file, use *"rocm-smi --showclocks"*.
|
||||
|
||||
* indirectly from the SMI library
|
||||
*/opt/rocm-4.0.0-6132/bin/rocm_smi.py --showclocks*
|
||||
|
||||
* directly via Sysfs
|
||||

|
||||
|
||||
**NOTE**: On systems that have both GFX9 and non-GFX9 devices, users should interpret the compute unit (CU) occupancy value carefully as the service does not support non-GFX9 devices.
|
||||
|
||||
### Accessing Compute Unit Occupancy Indirectly
|
||||
### New API for xGMI
|
||||
|
||||
The ROCm System Management Interface (SMI) library provides a convenient interface to determine the CU occupancy for a process. To get the CU occupancy of a process reported in percentage terms, invoke the SMI interface using rsmi_compute_process_info_by_pid_get(). The value is reported through the member field cu_occupancy of struct rsmi_process_info_t.
|
||||
Rocm_smi_lib now provides an API that exposes xGMI (inter-chip Global Memory Interconnect) throughput from one node to another.
|
||||
|
||||
```
|
||||
/**
|
||||
* @brief Encodes information about a process
|
||||
* @cu_occupancy Compute Unit usage in percent
|
||||
*/
|
||||
typedef struct {
|
||||
- - -,
|
||||
uint32_t cu_occupancy;
|
||||
} rsmi_process_info_t;
|
||||
Refer to the rocm_smi_lib API documentation for more details.
|
||||
|
||||
/**
|
||||
* API to get information about a process
|
||||
rsmi_status_t
|
||||
rsmi_compute_process_info_by_pid_get(uint32_t pid,
|
||||
rsmi_process_info_t *proc);
|
||||
```
|
||||
https://github.com/RadeonOpenCompute/ROCm/blob/master/ROCm_SMI_API_Guide_v4.0.pdf
|
||||
|
||||
|
||||
### Accessing Compute Unit Occupancy Directly Using SYSFS
|
||||
|
||||
Information provided by SMI library is built from sysfs. For every valid device, ROCm stack surfaces a file by the name cu_occupancy in Sysfs. Users can read this file to determine how that device is being used by a particular workload. The general structure of the file path is /proc/<pid>/stats_<gpuid>/cu_occupancy
|
||||
|
||||
```
|
||||
/**
|
||||
* CU occupancy files for processes P1 and P2 on two devices with
|
||||
* ids: 1008 and 112326
|
||||
*/
|
||||
/sys/devices/virtual/kfd/kfd/proc/<Pid_1>/stats_1008/cu_occupancy
|
||||
/sys/devices/virtual/kfd/kfd/proc/<Pid_1>/stats_2326/cu_occupancy
|
||||
/sys/devices/virtual/kfd/kfd/proc/<Pid_2>/stats_1008/cu_occupancy
|
||||
/sys/devices/virtual/kfd/kfd/proc/<Pid_2>/stats_2326/cu_occupancy
|
||||
|
||||
// To get CU occupancy for a process P<i>
|
||||
for each valid-device from device-list {
|
||||
path-1 = Build path for cu_occupancy file;
|
||||
path-2 = Build path for file Gpu-Properties;
|
||||
cu_in_use += Open and Read the file path-1;
|
||||
cu_total_cnt += Open and Read the file path-2;
|
||||
}
|
||||
cu_percent = ((cu_in_use * 100) / cu_total_cnt);
|
||||
|
||||
```
|
||||
|
||||
### GPU Reset Event and Thermal Throttling Event
|
||||
## AMD GPU Debugger Enhancements
|
||||
|
||||
The ROCm-SMI library clients can now register for the following events:
|
||||
In this release, AMD GPU Debugger has the following enhancements:
|
||||
|
||||

|
||||
* ROCm v4.0 ROCgdb is based on gdb 10.1
|
||||
|
||||
* Extended support for AMD Instinct™ MI100
|
||||
|
||||
## ROCm Math and Communication Libraries
|
||||
|
||||
### ‘rocfft_execution_info_set_stream’ API
|
||||
|
||||
rocFFT is a software library for computing Fast Fourier Transforms (FFT). It is part of AMD’s software ecosystem based on ROCm. In addition to AMD GPU devices, the library can be compiled with the CUDA compiler using HIP tools for running on Nvidia GPU devices.
|
||||
|
||||
The ‘rocfft_execution_info_set_stream’ API is a function to specify optional and additional information to control execution. This API specifies the compute stream, which must be invoked before the call to rocfft_execute. Compute stream is the underlying device queue/stream where the library computations are inserted.
|
||||
|
||||
#### PREREQUISITES
|
||||
|
||||
Using the compute stream API makes the following assumptions:
|
||||
|
||||
* This stream already exists in the program and assigns work to the stream
|
||||
|
||||
* The stream must be of type hipStream_t. Note, it is an error to pass the address of a hipStream_t object
|
||||
|
||||
#### PARAMETERS
|
||||
|
||||
Input
|
||||
|
||||
* info execution info handle
|
||||
* stream underlying compute stream
|
||||
|
||||
### Improved GEMM Performance
|
||||
|
||||
Currently, rocblas_gemm_ext2() supports matrix multiplication D <= alpha * A * B + beta * C, where the A, B, C, and D matrices are single-precision float, column-major, and non-transposed, except that the row stride of C may equal 0. This means the first row of C is broadcast M times in C:
|
||||
|
||||

|
||||
|
||||
If an optimized kernel solution for a particular problem is not available, a slow fallback algorithm is used, and the first time a fallback algorithm is used, the following message is printed to standard error:
|
||||
|
||||
*“Warning: Using slow on-host algorithm, because it is not implemented in Tensile yet.”
|
||||
|
||||
**NOTE**: ROCBLAS_LAYER controls the logging of the calls. It is recommended to use logging with the rocblas_gemm_ext2() feature, to identify the precise parameters which are passed to it.
|
||||
|
||||
* Setting the ROCBLAS_LAYER environment variable to 2 will print the problem parameters as they are being executed.
|
||||
* Setting the ROCBLAS_LAYER environment variable to 4 will collect all of the sizes, and print them out at the end of program execution.
|
||||
|
||||
For more logging information, refer to https://rocblas.readthedocs.io/en/latest/logging.html.
|
||||
|
||||
|
||||
### New Matrix Pruning Functions
|
||||
|
||||
In this release, the following new Matrix Pruning functions are introduced.
|
||||
|
||||

|
||||
|
||||
|
||||
### rocSOLVER General Matrix Singular Value Decomposition API
|
||||
|
||||
The rocSOLVER General Matrix Singular Value Decomposition (GESVD) API is now available in the AMD ROCm v3.9 release.
|
||||
|
||||
GESVD computes the Singular Values and, optionally, the Singular Vectors of a general m-by-n matrix A (Singular Value Decomposition).
|
||||
|
||||
The SVD of matrix A is given by:
|
||||
|
||||
```
|
||||
A = U * S * V'
|
||||
|
||||
```
|
||||
|
||||
For more information, refer to
|
||||
|
||||
https://rocsolver.readthedocs.io/en/latest/userguide_api.html
|
||||
|
||||
|
||||
## ROCm AOMP ENHANCEMENTS
|
||||
|
||||
### AOMP v11.9-0
|
||||
|
||||
The source code base for this release is the upstream LLVM 11 monorepo release/11.x sources as of August 18, 2020, with the hash value
|
||||
|
||||
*1e6907f09030b636054b1c7b01de36f281a61fa2*
|
||||
|
||||
The llvm-project branch used to build this release is aomp11. In addition to completing the source tarball, the artifacts of this release include the file llvm-project.patch. This file shows the delta from the llvm-project upstream release/11.x. The size of this patch XXXX lines in XXX files. These changes include support for flang driver, OMPD support, and the hsa libomptarget plugin. The goal is to reduce this with continued upstreaming activity.
|
||||
|
||||
The changes for this release of AOMP are:
|
||||
|
||||
* Fix compiler warnings for build_project.sh and build_openmp.sh.
|
||||
|
||||
* Fix: [flang] The AOMP 11.7-1 Fortran compiler claims to support the -isystem flag, but ignores it.
|
||||
|
||||
* Fix: [flang] producing internal compiler error when a character is used with KIND.
|
||||
|
||||
* Fix: [flang] openmp map clause on complex allocatable expressions !$omp target data map( chunk%tiles(1)%field%density0).
|
||||
|
||||
* DeviceRTL memory footprint has been reduced from ~2.3GB to ~770MB for AMDGCN target.
|
||||
|
||||
* Workaround for red_bug_51 failing on gfx908.
|
||||
|
||||
* Switch to python3 for ompd and rocgdb.
|
||||
|
||||
* Now require cmake 3.13.4 to compile from source.
|
||||
|
||||
* Fix aompcc to accept file type cxx.
|
||||
|
||||
|
||||
### AOMP v11.08-0
|
||||
|
||||
The source code base for this release is the upstream LLVM 11 monorepo release/11.x sources as of August 18, 2020 with the hash value
|
||||
|
||||
*aabff0f7d564b22600b33731e0d78d2e70d060b4*
|
||||
|
||||
The amd-llvm-project branch used to build this release is amd-stg-openmp. In addition to complete source tarball, the artifacts of this release includes the file llvm-project.patch. This file shows the delta from the llvm-project upstream release/11.x which is currently at 32715 lines in 240 files. These changes include support for flang driver, OMPD support and the hsa libomptarget plugin. Our goal is to reduce this with continued upstreaming activity.
|
||||
|
||||
These are the major changes for this release of AOMP:
|
||||
|
||||
* Switch to the LLVM 11.x stable code base.
|
||||
|
||||
* OMPD updates for flang.
|
||||
|
||||
* To support debugging OpenMP, selected OpenMP runtime sources are included in lib-debug/src/openmp. The ROCgdb debugger will find these automatically.
|
||||
|
||||
* Threadsafe hsa plugin for libomptarget.
|
||||
|
||||
* Updates to support device libraries.
|
||||
|
||||
* Openmpi configure issue with real16 resolved.
|
||||
|
||||
* DeviceRTL memory use is now independent of number of openmp binaries.
|
||||
|
||||
* Startup latency on first kernel launch reduced by order of magnitude.
|
||||
|
||||
### AOMP v11.07-1
|
||||
|
||||
The source code base for this release is the upstream LLVM 11 monorepo development sources as July 10, 2020 with hash valued 979c5023d3f0656cf51bd645936f52acd62b0333 The amd-llvm-project branch used to build this release is amd-stg-openmp. In addition to complete source tarball, the artifacts of this release includes the file llvm-project.patch. This file shows the delta from the llvm-project upstream trunk which is currently at 34121 lines in 277 files. Our goal is to reduce this with continued upstreaming activity.
|
||||
|
||||
* Inclusion of OMPD support which is not yet upstream
|
||||
|
||||
* Build of ROCgdb
|
||||
|
||||
* Host runtime optimisation. GPU image information is now mostly read on the host instead of from the GPU.
|
||||
|
||||
* Fixed the source build scripts so that building from the source tarball does not fail because of missing test directories. This fixes issue #116.
|
||||
|
||||
|
||||
# Fixed Defects
|
||||
|
||||
The following defects are fixed in this release:
|
||||
|
||||
* Random Soft Hang Observed When Running ResNet-Based Models
|
||||
|
||||
* (AOMP) ‘Undefined Hidden Symbol’ Linker Error Causes Compilation Failure in HIP
|
||||
|
||||
* MIGraphx -> test_gpu_ops_test FAILED
|
||||
|
||||
* Unable to install RDC on CentOS/RHEL 7.8/8.2 & SLES
|
||||
|
||||
|
||||
# Known Issues
|
||||
|
||||
The following are the known issues in this release.
|
||||
|
||||
## (AOMP) HIP EXAMPLE DEVICE_LIB FAILS TO COMPILE
|
||||
## Upgrade to AMD ROCm v4.0 Not Supported
|
||||
|
||||
The HIP example device_lib fails to compile and displays the following error:
|
||||
|
||||
*lld: error: undefined hidden symbol: inc_arrayval
|
||||
|
||||
The recommended workaround is to use */opt/rocm/hip/bin/hipcc to compile HIP applications*.
|
||||
|
||||
## HIPFORT INSTALLATION FAILURE
|
||||
|
||||
Hipfort fails to install during the ROCm installation.
|
||||
|
||||
As a workaround, you may force install hipfort using the following instructions:
|
||||
|
||||
### Ubuntu
|
||||
|
||||
```
|
||||
sudo apt-get -o Dpkg::Options::="--force-overwrite" install hipfort
|
||||
|
||||
```
|
||||
|
||||
### SLES
|
||||
|
||||
Zypper gives you an option to continue with the overwrite during the installation.
|
||||
|
||||
### CentOS
|
||||
|
||||
Download hipfort to a temporary location and force install with rpm:
|
||||
|
||||
```
|
||||
yum install --downloadonly --downloaddir=/tmp/hipfort hipfort
|
||||
rpm -i --replacefiles hipfort<package-version>
|
||||
|
||||
```
|
||||
|
||||
## MEMORY FAULT ACCESS ERROR DURING MEMORY TEST OF ROCM VALIDATION SUITE
|
||||
|
||||
When the ROCm Validation Suite (RVS) is installed using the prebuilt Debian/rpm package and run for the first time, the memory module displays the following error message,
|
||||
|
||||
“Memory access fault by GPU node-<x> (Agent handle: 0xa55170) on address 0x7fc268c00000. Reason: Page not present or supervisor privilege.
|
||||
Aborted (core dumped)”
|
||||
|
||||
As a workaround, run the test again. Subsequent runs appear to fix the error.
|
||||
|
||||
**NOTE**: The error may appear after a system reboot. Run the test again to fix the issue.
|
||||
|
||||
Note, reinstallation of ROCm Validation Suite is not required.
|
||||
An upgrade from previous releases to AMD ROCm v4.0 is not supported. A fresh and clean installation of AMD ROCm v4.0 is recommended.
|
||||
|
||||
|
||||
|
||||
@@ -562,21 +352,120 @@ Note, reinstallation of ROCm Validation Suite is not required.
|
||||
|
||||
This section describes deprecations and removals in AMD ROCm.
|
||||
|
||||
## WARNING: COMPILER-GENERATED CODE OBJECT VERSION 2 DEPRECATION
|
||||
## Compiler Generated Code Object Version 2 Deprecation
|
||||
|
||||
**WARNING**
|
||||
|
||||
Compiler-generated code object version 2 is no longer supported and will be removed shortly. AMD ROCm users must plan for the code object version 2 deprecation immediately.
|
||||
|
||||
Support for loading code object version 2 is also being deprecated with no announced removal release.
|
||||
|
||||
## ROCr Runtime Deprecations
|
||||
|
||||
The following ROCr Runtime enumerations, functions, and structs are deprecated in the AMD ROCm v4.0 release.
|
||||
|
||||
### Deprecated ROCr Runtime Functions
|
||||
|
||||
* hsa_isa_get_info
|
||||
|
||||
* hsa_isa_compatible
|
||||
|
||||
* hsa_executable_create
|
||||
|
||||
* hsa_executable_get_symbol
|
||||
|
||||
* hsa_executable_iterate_symbols
|
||||
|
||||
* hsa_code_object_serialize
|
||||
|
||||
* hsa_code_object_deserialize
|
||||
|
||||
* hsa_code_object_destroy
|
||||
|
||||
* hsa_code_object_get_info
|
||||
|
||||
* hsa_executable_load_code_object
|
||||
|
||||
* hsa_code_object_get_symbol
|
||||
|
||||
* hsa_code_object_get_symbol_from_name
|
||||
|
||||
* hsa_code_symbol_get_info
|
||||
|
||||
* hsa_code_object_iterate_symbols
|
||||
|
||||
|
||||
### Deprecated ROCr Runtime Enumerations
|
||||
|
||||
* HSA_ISA_INFO_CALL_CONVENTION_COUNT
|
||||
|
||||
* HSA_ISA_INFO_CALL_CONVENTION_INFO_WAVEFRONT_SIZE
|
||||
|
||||
* HSA_ISA_INFO_CALL_CONVENTION_INFO_WAVEFRONTS_PER_COMPUTE_UNIT
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_MODULE_NAME_LENGTH
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_MODULE_NAME
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_AGENT
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_VARIABLE_ALLOCATION
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_VARIABLE_SEGMENT
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_VARIABLE_ALIGNMENT
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_VARIABLE_SIZE
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_VARIABLE_IS_CONST
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_KERNEL_CALL_CONVENTION
|
||||
|
||||
* HSA_EXECUTABLE_SYMBOL_INFO_INDIRECT_FUNCTION_CALL_CONVENTION
|
||||
|
||||
- hsa_code_object_type_t
|
||||
|
||||
- hsa_code_object_info_t
|
||||
|
||||
- hsa_code_symbol_info_t
|
||||
|
||||
|
||||
### Deprecated ROCr Runtime Structs
|
||||
|
||||
* hsa_code_object_t
|
||||
|
||||
* hsa_callback_data_t
|
||||
|
||||
* hsa_code_symbol_t
|
||||
|
||||
|
||||
|
||||
## AOMP Deprecation
|
||||
|
||||
As of AMD ROCm v4.0, AOMP (aomp-amdgpu) is deprecated. OpenMP support has moved to the openmp-extras auxiliary package, which leverages the ROCm compiler on LLVM 12.
|
||||
|
||||
For more information, refer to
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Programming_Guides/openmp_support.html
|
||||
|
||||
|
||||
# Deploying ROCm
|
||||
|
||||
AMD hosts both Debian and RPM repositories for the ROCm v3.9.x packages.
|
||||
AMD hosts both Debian and RPM repositories for the ROCm v4.0.0 packages.
|
||||
|
||||
For more information on ROCM installation on all platforms, see
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html
|
||||
|
||||
|
||||
## Machine Learning and High Performance Computing Software Stack for AMD GPU
|
||||
|
||||
For an updated version of the software stack for AMD GPU, see
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html#software-stack-for-amd-gpu
|
||||
|
||||
|
||||
|
||||
# Hardware and Software Support
|
||||
ROCm is focused on using AMD GPUs to accelerate computational tasks such as machine learning, engineering workloads, and scientific computing.
|
||||
In order to focus our development efforts on these domains of interest, ROCm supports a targeted set of hardware configurations which are detailed further in this section.
|
||||
@@ -584,14 +473,20 @@ In order to focus our development efforts on these domains of interest, ROCm sup
|
||||
#### Supported GPUs
|
||||
Because the ROCm Platform has a focus on particular computational domains, we offer official support for a selection of AMD GPUs that are designed to offer good performance and price in these domains.
|
||||
|
||||
**Note:** The integrated GPUs of Ryzen are not officially supported targets for ROCm.
|
||||
|
||||
ROCm officially supports AMD GPUs that use following chips:
|
||||
|
||||
* GFX8 GPUs
|
||||
* "Fiji" chips, such as on the AMD Radeon R9 Fury X and Radeon Instinct MI8
|
||||
* "Polaris 10" chips, such as on the AMD Radeon RX 580 and Radeon Instinct MI6
|
||||
* GFX9 GPUs
|
||||
* "Vega 10" chips, such as on the AMD Radeon RX Vega 64 and Radeon Instinct MI25
|
||||
* "Vega 7nm" chips, such as on the Radeon Instinct MI50, Radeon Instinct MI60 or AMD Radeon VII
|
||||
* GFX9 GPUs
|
||||
|
||||
- "Vega 10" chips, such as on the AMD Radeon RX Vega 64 and Radeon Instinct MI25
|
||||
|
||||
- "Vega 7nm" chips, such as on the Radeon Instinct MI50, Radeon Instinct MI60 or AMD Radeon VII,
|
||||
|
||||
* CDNA GPUs
|
||||
|
||||
- MI100 chips such as on the AMD Instinct™ MI100
|
||||
|
||||
|
||||
ROCm is a collection of software ranging from drivers and runtimes to libraries and developer tools.
|
||||
Some of this software may work with more GPUs than the "officially supported" list above, though AMD does not make any official claims of support for these devices on the ROCm software platform.
|
||||
@@ -697,9 +592,17 @@ For users that have the option of using either AMD's or the upstreamed driver, t
|
||||
| | | Does not include most up-to-date firmware |
|
||||
|
||||
|
||||
# Disclaimer
|
||||
|
||||
## Machine Learning and High Performance Computing Software Stack for AMD GPU
|
||||
AMD®, the AMD Arrow logo, AMD Instinct™, Radeon™, ROCm® and combinations thereof are trademarks of Advanced Micro Devices, Inc.
|
||||
|
||||
For an updated version of the software stack for AMD GPU, see
|
||||
Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.
|
||||
|
||||
PCIe® is a registered trademark of PCI-SIG Corporation. Other product names used in this publication are for identification purposes only and may be trademarks of their respective companies.
|
||||
|
||||
Google® is a registered trademark of Google LLC.
|
||||
|
||||
Ubuntu and the Ubuntu logo are registered trademarks of Canonical Ltd.
|
||||
|
||||
Other product names used in this publication are for identification purposes only and may be trademarks of their respective companies.
|
||||
|
||||
https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html#software-stack-for-amd-gpu
|
||||
|
||||
BIN
amd-dbgapi.pdf
Normal file
33
default.xml
@@ -12,16 +12,16 @@ fetch="https://github.com/GPUOpen-ProfessionalCompute-Libraries/" />
|
||||
fetch="https://github.com/GPUOpen-Tools/" />
|
||||
<remote name="KhronosGroup"
|
||||
fetch="https://github.com/KhronosGroup/" />
|
||||
<default revision="refs/tags/rocm-3.9.0"
|
||||
<default revision="refs/tags/rocm-4.0.0"
|
||||
remote="roc-github"
|
||||
sync-c="true"
|
||||
sync-j="4" />
|
||||
<!--list of projects for ROCM-->
|
||||
<project name="ROCK-Kernel-Driver" />
|
||||
<project name="ROCK-Kernel-Driver" revision="refs/tags/rocm-4.0.1" />
|
||||
<project name="ROCT-Thunk-Interface" />
|
||||
<project name="ROCR-Runtime" />
|
||||
<project name="ROC-smi" />
|
||||
<project name="rocm_smi_lib" remote="roc-github" />
|
||||
<project name="rocm_smi_lib" />
|
||||
<project name="rocm-cmake" />
|
||||
<project name="rocminfo" />
|
||||
<project name="rocprofiler" remote="rocm-devtools" />
|
||||
@@ -35,17 +35,19 @@ sync-j="4" />
|
||||
<project name="ROCclr" remote="rocm-devtools" />
|
||||
<project name="HIPIFY" remote="rocm-devtools" />
|
||||
<!-- The following projects are all associated with the AMDGPU LLVM compiler -->
|
||||
<project name="llvm-project" path="llvm_amd-stg-open" />
|
||||
<project name="llvm-project" revision="refs/tags/rocm-4.0.1" />
|
||||
<project name="ROCm-Device-Libs" />
|
||||
<project name="atmi" />
|
||||
<project name="ROCm-CompilerSupport" />
|
||||
<project name="rocr_debug_agent" remote="rocm-devtools" />
|
||||
<project name="rocm_bandwidth_test" />
|
||||
<project name="half" remote="rocm-swplat" revision="37742ce15b76b44e4b271c1e66d13d2fa7bd003e" />
|
||||
<project name="RCP" remote="gpuopen-tools" revision="3a49405a1500067c49d181844ec90aea606055bb" />
|
||||
<!-- gdb projects -->
|
||||
<project name="ROCgdb" remote="rocm-devtools" />
|
||||
<project name="ROCdbgapi" remote="rocm-devtools" />
|
||||
<!-- ROCm Libraries -->
|
||||
<project name="rdc" remote="roc-github" />
|
||||
<project name="rocBLAS" remote="rocm-swplat" />
|
||||
<project name="hipBLAS" remote="rocm-swplat" />
|
||||
<project name="rocFFT" remote="rocm-swplat" />
|
||||
@@ -55,7 +57,7 @@ sync-j="4" />
|
||||
<project name="hipSPARSE" remote="rocm-swplat" />
|
||||
<project name="rocALUTION" remote="rocm-swplat" />
|
||||
<project name="MIOpenGEMM" remote="rocm-swplat" />
|
||||
<project name="MIOpen" remote="rocm-swplat" />
|
||||
<project name="MIOpen" remote="rocm-swplat" revision="refs/tags/rocm-4.0.1" />
|
||||
<project name="rccl" remote="rocm-swplat" />
|
||||
<project name="MIVisionX" remote="gpuopen-libs" />
|
||||
<project name="rocThrust" remote="rocm-swplat" />
|
||||
@@ -63,22 +65,9 @@ sync-j="4" />
|
||||
<project name="rocPRIM" remote="rocm-swplat" />
|
||||
<project name="hipfort" remote="rocm-swplat" />
|
||||
<project name="AMDMIGraphX" remote="rocm-swplat" />
|
||||
<project name="ROCmValidationSuite" remote="rocm-devtools" />
|
||||
<!-- Projects for AOMP -->
|
||||
<project name="ROCT-Thunk-Interface" path="aomp/roct-thunk-interface" remote="roc-github" />
|
||||
<project name="ROCR-Runtime" path="aomp/rocr-runtime" remote="roc-github" />
|
||||
<project name="ROCm-Device-Libs" path="aomp/rocm-device-libs" remote="roc-github" />
|
||||
<project name="ROCm-CompilerSupport" path="aomp/rocm-compilersupport" remote="roc-github" />
|
||||
<project name="rocminfo" path="aomp/rocminfo" remote="roc-github" />
|
||||
<project name="HIP" path="aomp/hip-on-vdi" remote="rocm-devtools" />
|
||||
<project name="aomp" path="aomp/aomp" remote="rocm-devtools" />
|
||||
<project name="aomp-extras" path="aomp/aomp-extras" remote="rocm-devtools" />
|
||||
<project name="flang" path="aomp/flang" remote="rocm-devtools" />
|
||||
<project name="amd-llvm-project" path="aomp/amd-llvm-project" remote="rocm-devtools" />
|
||||
<project name="ROCclr" path="aomp/vdi" remote="rocm-devtools" />
|
||||
<project name="ROCm-OpenCL-Runtime" path="aomp/opencl-on-vdi" remote="roc-github" />
|
||||
<project name="ROCmValidationSuite" remote="rocm-devtools" revision="refs/tags/rocm-4.0.1" />
|
||||
<!-- Projects for OpenMP-Extras -->
|
||||
<project name="aomp" path="openmp-extras/aomp" remote="rocm-devtools" revision="refs/tags/rocm-uc-3.9.0" />
|
||||
<project name="aomp-extras" path="openmp-extras/aomp-extras" remote="rocm-devtools" revision="refs/tags/rocm-uc-3.9.0" />
|
||||
<project name="flang" path="openmp-extras/flang" remote="rocm-devtools" revision="refs/tags/rocm-uc-3.9.0" />
|
||||
<project name="aomp" path="openmp-extras/aomp" remote="rocm-devtools" />
|
||||
<project name="aomp-extras" path="openmp-extras/aomp-extras" remote="rocm-devtools" />
|
||||
<project name="flang" path="openmp-extras/flang" remote="rocm-devtools" />
|
||||
</manifest>
|
||||
|
||||
BIN
images/CLI1.PNG
Normal file
|
After Width: | Height: | Size: 7.7 KiB |
BIN
images/CLI2.PNG
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
images/GEMM2.PNG
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 15 KiB |
BIN
images/SMI.PNG
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
images/keyfeatures.PNG
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
images/latestGPU.PNG
Normal file
|
After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 476 KiB |
BIN
images/rocsolverAPI.PNG
Normal file
|
After Width: | Height: | Size: 58 KiB |