Compare commits

...

4 Commits

Author SHA1 Message Date
Aakash Sudhanwa
b58b254b29 ROCm 2.6 (#835)
* ROCM rel 2.6

* ROCm 2.6

* Update README.md

* Update README.md
2019-07-08 21:12:09 -07:00
nelsonc-amd
5a0d73e84f Update for rel 2.5 (#814)
* Updates for release 2.4 README.md

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* Updates to version_history.md for release 2.4

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* Organize README.md

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* README.md & version_history.md for rocm release 2.5

Fix numerous links, some syntax.
Add links for rocThrust project.

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* Update README.md

* Update default.xml
2019-06-08 08:24:11 -07:00
zhang2amd
1ea6f22864 Update default.xml to release 2.5 (#813) 2019-06-08 03:15:31 -07:00
nelsonc-amd
f26b2d6af3 release 2.5 README.md and version_history.md (#812)
* Updates for release 2.4 README.md

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* Updates to version_history.md for release 2.4

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* Organize README.md

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* README.md & version_history.md for rocm release 2.5

Fix numerous links, some syntax.
Add links for rocThrust project.

Signed-off-by: Cole Nelson <cole.nelson@amd.com>

* Update README.md
2019-06-07 14:33:12 -07:00
3 changed files with 157 additions and 99 deletions

212
README.md
View File

@@ -1,92 +1,140 @@
## Are You Ready to ROCK?
The ROCm Platform brings a rich foundation to advanced computing by seamlessly integrating the CPU and GPU with the goal of solving real-world problems.
This software enables the high-performance operation of AMD GPUs for computationally oriented tasks in the Linux operating system.
This software enables the high-performance operation of AMD GPUs for computation oriented tasks in the Linux operating system.
### Current ROCm Version: 2.4
### Current ROCm Version: 2.6
- [New features and enhancements in ROCm 2.4](#new-features-and-enhancements-in-rocm-24)
- [The latest ROCm platform - ROCm 2.4](#the-latest-rocm-platform---rocm-240)
- [New features and enhancements in ROCm 2.6](#new-features-and-enhancements-in-rocm-26)
- [The latest ROCm platform - ROCm 2.6](#the-latest-rocm-platform-rocm-26)
- [Hardware Support](#hardware-support)
* [Supported GPUs](#supported-gpus)
* [Supported CPUs](#supported-cpus)
* [Not supported or limited support under ROCm](#not-supported-or-limited-support-under-rocm)
- [Supported Operating Systems](#supported-operating-systems---new-operating-systems-available)
- [Supported Operating Systems](#supported-operating-systems-new-operating-systems-available)
* [ROCm support in upstream Linux kernels](#rocm-support-in-upstream-linux-kernels)
- [Installing from AMD ROCm repositories](#installing-from-amd-rocm-repositories)
* [ROCm Binary Package Structure](#rocm-binary-package-structure)
* [Ubuntu Support - installing from a Debian repository](#ubuntu-support---installing-from-a-debian-repository)
* [Ubuntu Support - installing from a Debian repository](#ubuntu-support-installing-from-a-debian-repository)
* [CentOS/RHEL 7 (7.4, 7.5, 7.6) Support](#centosrhel-7-74-75-76-support)
- [Known issues / workarounds](#known-issues--workarounds)
- [Known issues / workarounds](#known-issues-workarounds)
- [Closed source components](#closed-source-components)
- [Getting ROCm source code](#getting-rocm-source-code)
* [Installing repo](#installing-repo)
* [Downloading the ROCm source code](#downloading-the-rocm-source-code)
* [Building the ROCm source code](#building-the-rocm-source-code)
- [Deprecation Notice](#deprecation-notice)
- [Deprecation Notice](#deprecation-notice-hcc)
- [Final notes](#final-notes)
### New features and enhancements in ROCm 2.4
### New features and enhancements in ROCm 2.6
#### TensorFlow 2.0 support
ROCm 2.4 includes the enhanced compilation toolchain and a set of bug fixes to support TensorFlow 2.0 features natively
#### ROCmInfo enhancements
ROCmInfo was extended to do the following:
For ROCr API call errors including initialization determine if the error could be explained by:
- ROCk (driver) is not loaded / available
- User does not have membership in appropriate group - "video"
- If not above print the error string that is mapped to the returned error code
- If no error string is available, print the error code in hex
#### AMD Infinity Fabric&#x2122; Link enablement
ROCm 2.4 adds support to connect two Radeon Instinct MI60 or Radeon Instinct MI50 boards via AMD Infinity Fabric&#x2122; Link GPU interconnect technology.
#### [Thrust] Functional Support on Vega20
ROCm2.6 contains the first official release of rocThrust and hipCUB. rocThrust is a port of thrust, a parallel algorithm library. hipCUB is a port of CUB, a reusable software component library. Thrust/CUB has been ported to the HIP/ROCm platform to use the rocPRIM library. The HIP ported library works on HIP/ROCm platforms.
Note: rocThrust and hipCUB library replaces https://github.com/ROCmSoftwarePlatform/thrust (hip-thrust), i.e. hip-thrust has been separated into two libraries, rocThrust and hipCUB. Existing hip-thrust users are encouraged to port their code to rocThrust and/or hipCUB. Hip-thrust will be removed from official distribution later this year.
#### MIGraphX v0.3
MIGraphX optimizer adds support to read models frozen from Tensorflow framework. Further details and an example usage at https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/wiki/Getting-started:-using-the-new-features-of-MIGraphX-0.3
#### MIOpen 2.0
- This release contains several new features including an immediate mode for selecting convolutions, bfloat16 support, new layers, modes, and algorithms.
- MIOpenDriver, a tool for benchmarking and developing kernels is now shipped with MIOpen.
BFloat16 now supported in HIP requires an updated rocBLAS as a GEMM backend.
- Immediate mode API now provides the ability to quickly obtain a convolution kernel.
- MIOpen now contains HIP source kernels and implements the ImplicitGEMM kernels. This is a new feature and is currently disabled by default. Use the environmental variable "MIOPEN_DEBUG_CONV_IMPLICIT_GEMM=1" to activation this feature. ImplicitGEMM requires an up to date HIP version of at least 1.5.9211.
- A new "loss" catagory of layers has been added, of which, CTC loss is the first. See the API reference for more details.
2.0 is the last release of active support for gfx803 architectures. In future releases, MIOpen will not actively debug and develop new features specifically for gfx803.
- System Find-Db in memory cache is disabled by default. Please see build instructions to enable this feature.
Additional documentation can be found here: https://rocmsoftwareplatform.github.io/MIOpen/doc/html/
#### Bloat16 software support in rocBLAS/Tensile
Added mixed precision bfloat16/IEEE f32 to gemm_ex. The input and output matrices are bfloat16. All arithmetic is in IEEE f32.
#### AMD Infinity Fabric™ Link enablement
The ability to connect four Radeon Instinct MI60 or Radeon Instinct MI50 boards in two hives or two Radeon Instinct MI60 or Radeon Instinct MI50 boards in four hives via AMD Infinity Fabric™ Link GPU interconnect technology has been added.
#### ROCm-smi features and bug fixes
- mGPU & Vendor check
- Fix clock printout if DPM is disabled
- Fix finding marketing info on CentOS
- Clarify some error messages
#### ROCm-smi-lib enhancements
- Documentation updates
- Improvements to *name_get functions
#### RCCL2 Enablement
RCCL2 supports collectives intranode communication using PCIe, Infinity Fabric™, and pinned host memory, as well as internode communication using Ethernet (TCP/IP sockets) and Infiniband/RoCE (Infiniband Verbs). Note: For Infiniband/RoCE, RDMA is not currently supported.
#### rocFFT enhancements
- Added: Debian package with FFT test, benchmark, and sample programs
- Improved: hipFFT interfaces
- Improved: rocFFT CPU reference code, plan generation code and logging code
Features and enhancements introduced in previous versions of ROCm can be found in [version_history.md](version_history.md)
### The latest ROCm platform - ROCm 2.4
### The latest ROCm platform - ROCm 2.6
The latest supported version of the drivers, tools, libraries and source code for the ROCm platform have been released and are available from the following GitHub repositories:
* ROCm Core Components
- [ROCk Kernel Driver](https://github.com/RadeonOpenCompute/ROCK-Kernel-Driver/tree/roc-2.4.0)
- [ROCr Runtime](https://github.com/RadeonOpenCompute/ROCR-Runtime/tree/84443a1)
- [ROCt Thunk Interface](https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/tree/roc-2.4.0)
- [ROCk Kernel Driver](https://github.com/RadeonOpenCompute/ROCK-Kernel-Driver/tree/roc-2.6.0)
- [ROCr Runtime](https://github.com/RadeonOpenCompute/ROCR-Runtime/tree/roc-2.6.0)
- [ROCt Thunk Interface](https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/tree/roc-2.6.0)
* ROCm Support Software
- [ROCm SMI](https://github.com/RadeonOpenCompute/ROC-smi/tree/roc-2.4.0)
- [ROCm SMI](https://github.com/RadeonOpenCompute/ROC-smi/tree/roc-2.6.0)
- [ROCm cmake](https://github.com/RadeonOpenCompute/rocm-cmake/tree/ac45c6e2)
- [rocminfo](https://github.com/RadeonOpenCompute/rocminfo/tree/d34b716a)
- [ROCm Bandwidth Test](https://github.com/RadeonOpenCompute/rocm_bandwidth_test/tree/fe64704a)
- [ROCm Bandwidth Test](https://github.com/RadeonOpenCompute/rocm_bandwidth_test/tree/roc-2.6.0)
* ROCm Development Tools
- [HCC compiler](https://github.com/RadeonOpenCompute/hcc/tree/roc-2.4.0)
- [HIP](https://github.com/ROCm-Developer-Tools/HIP/tree/roc-2.4.0)
- [ROCm Device Libraries](https://github.com/RadeonOpenCompute/ROCm-Device-Libs/tree/roc-2.4.0)
- [HCC compiler](https://github.com/RadeonOpenCompute/hcc/tree/roc-hcc-2.6.0)
- [HIP](https://github.com/ROCm-Developer-Tools/HIP/tree/roc-2.6.0)
- [ROCm Device Libraries](https://github.com/RadeonOpenCompute/ROCm-Device-Libs/tree/roc-hcc-2.6.0)
- ROCm OpenCL, which is created from the following components:
- [ROCm OpenCL Runtime](http://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/tree/roc-2.4.0)
- [ROCm OpenCL Driver](http://github.com/RadeonOpenCompute/ROCm-OpenCL-Driver/tree/roc-2.4.0)
- The ROCm OpenCL compiler, which is created from the following components:
- [ROCm LLVM OCL](http://github.com/RadeonOpenCompute/llvm/tree/roc-ocl-2.4.0)
- [ROCm LLVM HCC](http://github.com/RadeonOpenCompute/llvm/tree/roc-hcc-2.4.0)
- [ROCm Clang](http://github.com/RadeonOpenCompute/clang/tree/roc-2.4.0)
- [ROCm lld OCL](http://github.com/RadeonOpenCompute/lld/tree/roc-ocl-2.4.0)
- [ROCm lld HCC](http://github.com/RadeonOpenCompute/lld/tree/roc-hcc-2.4.0)
- [ROCm Device Libraries](https://github.com/RadeonOpenCompute/ROCm-Device-Libs/tree/roc-2.4.0)
- [ROCM Clang-OCL Kernel Compiler](https://github.com/RadeonOpenCompute/clang-ocl/tree/roc-2.4.0)
- [ROCm OpenCL Runtime](http://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/tree/roc-2.6.0)
- [ROCm OpenCL Driver](http://github.com/RadeonOpenCompute/ROCm-OpenCL-Driver/tree/roc-2.6.0)
- The ROCm OpenCL compiler, which is created from the following components:
- [ROCm LLVM OCL](http://github.com/RadeonOpenCompute/llvm/tree/roc-ocl-2.6.0)
- [ROCm LLVM HCC](http://github.com/RadeonOpenCompute/llvm/tree/roc-hcc-2.6.0)
- [ROCm Clang](http://github.com/RadeonOpenCompute/clang/tree/roc-2.6.0)
- [ROCm lld OCL](http://github.com/RadeonOpenCompute/lld/tree/roc-ocl-2.6.0)
- [ROCm lld HCC](http://github.com/RadeonOpenCompute/lld/tree/roc-hcc-2.6.0)
- [ROCm Device Libraries](https://github.com/RadeonOpenCompute/ROCm-Device-Libs/tree/roc-ocl-2.6.0)
- [ROCM Clang-OCL Kernel Compiler](https://github.com/RadeonOpenCompute/clang-ocl/tree/roc-2.6.0)
- [Asynchronous Task and Memory Interface (ATMI)](https://github.com/RadeonOpenCompute/atmi/tree/4dd14ad8)
- [ROCr Debug Agent](https://github.com/ROCm-Developer-Tools/rocr_debug_agent/tree/roc-2.4.0)
- [ROCm Code Object Manager](https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/tree/roc-2.4.0)
- [ROC Profiler](https://github.com/ROCm-Developer-Tools/rocprofiler/tree/roc-2.4.x)
- [ROC Tracer](https://github.com/ROCm-Developer-Tools/roctracer/tree/roc-2.4.x)
- [Radeon Compute Profiler](https://github.com/GPUOpen-Tools/RCP/tree/a31fe682)
- [ROCr Debug Agent](https://github.com/ROCm-Developer-Tools/rocr_debug_agent/tree/roc-2.6.0)
- [ROCm Code Object Manager](https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/tree/roc-2.6.0)
- [ROC Profiler](https://github.com/ROCm-Developer-Tools/rocprofiler/tree/roc-2.6.x)
- [ROC Tracer](https://github.com/ROCm-Developer-Tools/roctracer/tree/roc-2.6.x)
- [Radeon Compute Profiler](https://github.com/GPUOpen-Tools/RCP/tree/3a49405)
- Example Applications:
- [HCC Examples](https://github.com/ROCm-Developer-Tools/HCC-Example-Application/tree/ffd65333)
- [HIP Examples](https://github.com/ROCm-Developer-Tools/HIP-Examples/tree/roc-2.4.0)
- [HIP Examples](https://github.com/ROCm-Developer-Tools/HIP-Examples/tree/roc-2.6.0)
* ROCm Libraries
- [rocBLAS](https://github.com/ROCmSoftwarePlatform/rocBLAS/tree/master-rocm-2.4)
- [hipBLAS](https://github.com/ROCmSoftwarePlatform/hipBLAS/tree/master-rocm-2.4)
- [rocFFT](https://github.com/ROCmSoftwarePlatform/rocFFT/tree/master-rocm-2.4)
- [rocRAND](https://github.com/ROCmSoftwarePlatform/rocRAND/tree/master-rocm-2.4)
- [rocSPARSE](https://github.com/ROCmSoftwarePlatform/rocSPARSE/tree/master-rocm-2.4)
- [hipSPARSE](https://github.com/ROCmSoftwarePlatform/hipSPARSE/tree/master-rocm-2.4)
- [rocALUTION](https://github.com/ROCmSoftwarePlatform/rocALUTION/tree/master-rocm-2.4)
- [rocBLAS](https://github.com/ROCmSoftwarePlatform/rocBLAS/tree/master-rocm-2.6)
- [hipBLAS](https://github.com/ROCmSoftwarePlatform/hipBLAS/tree/master-rocm-2.6)
- [rocFFT](https://github.com/ROCmSoftwarePlatform/rocFFT/tree/master-rocm-2.6)
- [rocRAND](https://github.com/ROCmSoftwarePlatform/rocRAND/tree/master-rocm-2.6)
- [rocSPARSE](https://github.com/ROCmSoftwarePlatform/rocSPARSE/tree/master-rocm-2.6)
- [hipSPARSE](https://github.com/ROCmSoftwarePlatform/hipSPARSE/tree/master-rocm-2.6)
- [rocALUTION](https://github.com/ROCmSoftwarePlatform/rocALUTION/tree/master-rocm-2.6)
- [MIOpenGEMM](https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/tree/9547fb9e)
- [MIOpen](https://github.com/ROCmSoftwarePlatform/MIOpen/tree/9fb1826d)
- [HIP Thrust](https://github.com/ROCmSoftwarePlatform/Thrust/tree/master-rocm-2.4)
- [ROCm SMI Lib](https://github.com/RadeonOpenCompute/rocm_smi_lib/tree/roc-2.4.0)
- [RCCL](https://github.com/ROCmSoftwarePlatform/rccl/tree/master-rocm-2.4)
- [MIVisionX](https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/tree/f05574dc)
- [CUB HIP](https://github.com/ROCmSoftwarePlatform/cub-hip/tree/hip_port_1.7.4)
- [MIOpen](https://github.com/ROCmSoftwarePlatform/MIOpen/tree/roc-2.6.0)
- [rocThrust](https://github.com/ROCmSoftwarePlatform/rocThrust/tree/master-rocm-2.6)
- [ROCm SMI Lib](https://github.com/RadeonOpenCompute/rocm_smi_lib/tree/roc-2.6.0)
- [RCCL](https://github.com/ROCmSoftwarePlatform/rccl/tree/master-rocm-2.6)
- [MIVisionX](https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/tree/1.3.0)
- [HIP Thrust](https://github.com/ROCmSoftwarePlatform/Thrust/tree/2.6.0)
- [hipCUB](https://github.com/ROCmSoftwarePlatform/hipCUB/tree/2.6.0)
### Hardware Support
ROCm is focused on using AMD GPUs to accelerate computational tasks such as machine learning, engineering workloads, and scientific computing.
@@ -134,7 +182,7 @@ Current CPUs which support PCIe Gen3 + PCIe Atomics are:
* AMD Ryzen Threadripper CPUs
* AMD EPYC CPUs;
* Intel Xeon E7 v3 or newer CPUs;
* Intel Xeon E5 v3 or newer CPUs;
* Intel Xeon E5 v3 or newer CPUs;
* Intel Xeon E3 v3 or newer CPUs;
* Intel Core i7 v4, Core i5 v4, Core i3 v4 or newer CPUs (i.e. Haswell family or newer).
* Some Ivy Bridge-E systems
@@ -159,10 +207,10 @@ Experimental support for our Hawaii (GFX7) GPUs (Radeon R9 290, R9 390, FirePro
does not require or take advantage of PCIe Atomics. However, we still recommend that you use a CPU
from the list provided above for compatibility purposes.
#### Not supported or limited support under ROCm
##### Limited support
#### Not supported or limited support under ROCm
##### Limited support
* ROCm 2.4.x should support PCIe 2.0 enabled CPUs such as the AMD Opteron, Phenom, Phenom II, Athlon, Athlon X2, Athlon II and older Intel Xeon and Intel Core Architecture and Pentium CPUs. However, we have done very limited testing on these configurations, since our test farm has been catering to CPUs listed above. This is where we need community support. _If you find problems on such setups, please report these issues_.
* ROCm 2.6.x should support PCIe 2.0 enabled CPUs such as the AMD Opteron, Phenom, Phenom II, Athlon, Athlon X2, Athlon II and older Intel Xeon and Intel Core Architecture and Pentium CPUs. However, we have done very limited testing on these configurations, since our test farm has been catering to CPUs listed above. This is where we need community support. _If you find problems on such setups, please report these issues_.
* Thunderbolt 1, 2, and 3 enabled breakout boxes should now be able to work with ROCm. Thunderbolt 1 and 2 are PCIe 2.0 based, and thus are only supported with GPUs that do not require PCIe 3.0 atomics (e.g. Vega 10). However, we have done no testing on this configuration and would need community support due to limited access to this type of equipment.
* AMD "Carrizo" and "Bristol Ridge" APUs are enabled to run OpenCL, but do not yet support HCC, HIP, or our libraries built on top of these compilers and runtimes.
* As of ROCm 2.1, "Carrizo" and "Bristol Ridge" require the use of upstream kernel drivers.
@@ -172,17 +220,17 @@ from the list provided above for compatibility purposes.
* As of ROCm 2.1, "Raven Ridge" requires the use of upstream kernel drivers.
* In addition, various "Raven Ridge" platforms may not work due to OEM and ODM choices when it comes to key configurations parameters such as inclusion of the required CRAT tables and IOMMU configuration parameters in the system BIOS.
* Before purchasing such a system for ROCm, please verify that the BIOS provides an option for enabling IOMMUv2 and that the system BIOS properly exposes the correct CRAT table. Inquire with your vendor about the latter.
##### Not supported
* "Tonga", "Iceland", "Vega M", and "Vega 12" GPUs are not supported in ROCm 2.4.x
##### Not supported
* "Tonga", "Iceland", "Vega M", and "Vega 12" GPUs are not supported in ROCm 2.6.x
* We do not support GFX8-class GPUs (Fiji, Polaris, etc.) on CPUs that do not have PCIe 3.0 with PCIe atomics.
* As such, we do not support AMD Carrizo and Kaveri APUs as hosts for such GPUs.
* Thunderbolt 1 and 2 enabled GPUs are not supported by GFX8 GPUs on ROCm. Thunderbolt 1 & 2 are based on PCIe 2.0.
### Supported Operating Systems - New operating systems available
The ROCm 2.4.x platform supports the following operating systems:
The ROCm 2.6.x platform supports the following operating systems:
* Ubuntu 16.04.x, 18.04.1 and 18.04.2 (Version 16.04.3 and newer or kernels 4.13-4.15)
* CentOS 7.4, 7.5, and 7.6 (Using devtoolset-7 runtime support)
@@ -216,7 +264,7 @@ For users that have the option of using either AMD's or the upstreamed driver, t
### Installing from AMD ROCm repositories
AMD hosts both [Debian](http://repo.radeon.com/rocm/apt/debian/) and [RPM](http://repo.radeon.com/rocm/yum/rpm/) repositories for the ROCm 2.4.x packages at this time.
AMD hosts both [Debian](http://repo.radeon.com/rocm/apt/debian/) and [RPM](http://repo.radeon.com/rocm/yum/rpm/) repositories for the ROCm 2.6.x packages at this time.
The packages in the Debian repository have been signed to ensure package integrity.
@@ -264,7 +312,8 @@ The packages for each of the major ROCm components are:
- ROCm SMI Lib: `rocm_smi_lib64`
- RCCL: `rccl`
- MIVisionX: `mivisionx`
- CUB HIP: `cub-hip`
- rocThrust: `rocThrust`
- hipCUB: `hipCUB`
To make it easier to install ROCm, the AMD binary repos provide a number of meta-packages that will automatically install multiple other packages.
For example, `rocm-dkms` is the primary meta-package that is used to install most of the base technology needed for ROCm to operate.
@@ -318,7 +367,7 @@ These directions may not work as written on unsupported Debian-based distributio
For example, newer versions of Ubuntu may not be compatible with the `rock-dkms` kernel driver.
As such, users may want to skip the `rocm-dkms` and `rock-dkms` packages, as described [above](#rocm-binary-package-structure), and instead [use the upstream kernel driver](#using-debian-based-rocm-with-upstream-kernel-drivers).
##### First make sure your system is up to date
##### First make sure your system is up to date
```shell
sudo apt update
@@ -336,9 +385,9 @@ follows:
wget -qO - http://repo.radeon.com/rocm/apt/debian/rocm.gpg.key | sudo apt-key add -
echo 'deb [arch=amd64] http://repo.radeon.com/rocm/apt/debian/ xenial main' | sudo tee /etc/apt/sources.list.d/rocm.list
```
The gpg key might change, so it may need to be updated when installing a new release.
If the key signature verification is failed while update, please re-add the key from
ROCm apt repository. The current rocm.gpg.key is not available in a standard key ring
The gpg key might change, so it may need to be updated when installing a new release.
If the key signature verification is failed while update, please re-add the key from
ROCm apt repository. The current rocm.gpg.key is not available in a standard key ring
distribution, but has the following sha1sum hash:
`f7f8147431c75e505c58a6f3a3548510869357a6 rocm.gpg.key`
@@ -352,7 +401,7 @@ sudo apt update
sudo apt install rocm-dkms
```
##### Next set your permissions
##### Next set your permissions
Users will need to be in the `video` group in order to have access to the GPU.
As such, you should ensure that your user account is a member of the `video` group prior to using ROCm.
@@ -365,7 +414,7 @@ groups
To add yourself to the video group you will need the sudo password and can use the following command:
```shell
sudo usermod -a -G video $LOGNAME
sudo usermod -a -G video $LOGNAME
```
You may want to ensure that any future users you add to your system are put into the "video" group by default. To do that, you can run the following commands:
@@ -382,8 +431,8 @@ Once complete, reboot your system.
After rebooting the system run the following commands to verify that the ROCm installation was successful. If you see your GPUs listed by both of these commands, you should be ready to go!
```shell
/opt/rocm/bin/rocminfo
/opt/rocm/opencl/bin/x86_64/clinfo
/opt/rocm/bin/rocminfo
/opt/rocm/opencl/bin/x86_64/clinfo
```
Note that, to make running ROCm programs easier, you may wish to put the ROCm binaries in your PATH.
@@ -445,7 +494,7 @@ These directions may not work as written on unsupported RPM-based distributions.
For example, Fedora may work but may not be compatible with the `rock-dkms` kernel driver.
As such, users may want to skip the `rocm-dkms` and `rock-dkms` packages, as described [above](#rocm-binary-package-structure), and instead [use the upstream kernel driver](#using-rpm-based-rocm-with-upstream-kernel-drivers).
Support for CentOS/RHEL 7 was added in ROCm 1.8, but ROCm requires a special
Support for CentOS/RHEL 7 was added in ROCm 1.8, but ROCm requires a special
runtime environment provided by the RHEL Software Collections and additional
dkms support packages to properly install and run.
@@ -526,7 +575,7 @@ To add yourself to the video (or wheel) group you will need the sudo password an
following command:
```shell
sudo usermod -a -G video $LOGNAME
sudo usermod -a -G video $LOGNAME
```
You may want to ensure that any future users you add to your system are put into the "video" group by default. To do that, you can run the following commands:
@@ -570,7 +619,7 @@ sudo yum install rock-dkms rocm-opencl-devel
##### Compiling applications using HCC, HIP, and other ROCm software
To compile applications or samples, please use gcc-7.2 provided by the devtoolset-7 environment.
To do this, compile all applications after running this command:
To do this, compile all applications after running this command:
```shell
scl enable devtoolset-7 bash
@@ -610,16 +659,17 @@ echo 'SUBSYSTEM=="kfd", KERNEL=="kfd", TAG+="uaccess", GROUP="video"' | sudo tee
### Known issues / workarounds
#### MIOpen
MIOpen unit test will fail at test_conv with the following error message
Memory access fault by GPU node-2 (Agent handle: 0x1fc0a10) on address 0x7fd3c3600000. Reason: Page not present or supervisor privilege
#### TensorFlow
Observed memory access fault while running SAGAN TensorFlow model in Polaris based ASIC
#### Vega7nm
GPU reset is not currently supported with boards connected with AMD Infinity Fabric&#x2122; Link GPU interconnect technology.
#### Radeon Instinct MI50, MI60
GPU reset is not currently supported on Radeon Instinct MI50, MI60, in single card configurations or with boards connected with AMD Infinity Fabric&#x2122; Link GPU interconnect technology. Workaround is to reboot the system.
#### Gromacs
There are known failures with a few tests on Gromacs on CentOS
#### HIP sample
HIP sample test fails at module_api_global with a segmentation fault
### Closed source components
@@ -658,7 +708,7 @@ If you chose a directory other than `~/bin/` to install `repo`, you should use t
```shell
mkdir -p ~/ROCm/
cd ~/ROCm/
~/bin/repo init -u https://github.com/RadeonOpenCompute/ROCm.git -b roc-2.4.0
~/bin/repo init -u https://github.com/RadeonOpenCompute/ROCm.git -b roc-2.6.0
repo sync
```
@@ -673,11 +723,11 @@ As such, you should go to the repository you are interested in building to find
That said, AMD also offers [a project](https://github.com/RadeonOpenCompute/Experimental_ROC) that demonstrates how to download, build, package, and install ROCm software on various distributions.
The scripts here may be useful for anyone looking to build ROCm components.
### Deprecation Notice - HCC
### Deprecation Notice - HCC
AMD is deprecating HCC to put more focus on HIP development and on
other languages supporting heterogeneous compute. We will no longer
develop any new feature in HCC and we will stop maintaining HCC after
its final release, which is planned for June 2019. If your
its final release, which is planned for end of year, 2019. If your
application was developed with the hc C++ API, we would encourage you
to transition it to other languages supported by AMD, such as HIP or
OpenCL. HIP and hc language share the same compiler technology, so

View File

@@ -12,7 +12,7 @@
<remote name="gpuopen-tools"
fetch="https://github.com/GPUOpen-Tools/" />
<default revision="refs/tags/roc-2.4.0"
<default revision="refs/tags/roc-2.5.0"
remote="roc-github"
sync-c="true"
sync-j="4" />
@@ -32,9 +32,9 @@
<remote name="KhronosGroup" fetch="https://github.com/KhronosGroup/" />
<project name="ROCm-OpenCL-Runtime" />
<project path="ROCm-OpenCL-Runtime/compiler/driver" name="ROCm-OpenCL-Driver"/>
<project path="ROCm-OpenCL-Runtime/compiler/llvm" name="llvm" revision="refs/tags/roc-ocl-2.4.0" />
<project path="ROCm-OpenCL-Runtime/compiler/llvm" name="llvm" revision="refs/tags/roc-hcc-2.5.0" />
<project path="ROCm-OpenCL-Runtime/compiler/llvm/tools/clang" name="clang" />
<project path="ROCm-OpenCL-Runtime/compiler/llvm/tools/lld" name="lld" revision="refs/tags/roc-ocl-2.4.0" />
<project path="ROCm-OpenCL-Runtime/compiler/llvm/tools/lld" name="lld" revision="refs/tags/roc-hcc-2.5.0" />
<project path="ROCm-OpenCL-Runtime/library/amdgcn" name="ROCm-Device-Libs"/>
<project path="ROCm-OpenCL-Runtime/api/opencl/khronos/icd" name="OpenCL-ICD-Loader" remote="KhronosGroup" revision="261c1288aadd9dcc4637aca08332f603e6c13715" />
@@ -45,8 +45,8 @@
<project name="HIP" remote="rocm-devtools" />
<project name="HIP-Examples" remote="rocm-devtools" />
<!-- The following projects are all associated with the AMDGPU LLVM compiler -->
<project name="llvm" path="llvm_amd-common" revision="refs/tags/roc-hcc-2.4.0" />
<project name="lld" path="llvm_amd-common/lld" revision="refs/tags/roc-hcc-2.4.0" />
<project name="llvm" path="llvm_amd-common" revision="refs/tags/roc-hcc-2.5.0" />
<project name="lld" path="llvm_amd-common/lld" revision="refs/tags/roc-hcc-2.5.0" />
<project name="clang" path="llvm_amd-common/clang" />
<project name="ROCm-Device-Libs" />
<project name="atmi" revision="4dd14ad8fafc64dc8f35b0646cfe84e3e36a3c64" />
@@ -56,18 +56,17 @@
<project name="RCP" remote="gpuopen-tools" revision="refs/tags/v5.6" />
<!-- ROCm Libraries -->
<project name="rocBLAS" remote="rocm-swplat" revision="refs/tags/rocm-2.4" />
<project name="hipBLAS" remote="rocm-swplat" revision="refs/tags/rocm-2.4" />
<project name="rocFFT" remote="rocm-swplat" revision="9a0d296ce91889a4ac549adeac045604f040af92" />
<project name="rocRAND" remote="rocm-swplat" revision="687d659a294f416c69dd6e860a8ded939e55c22a" />
<project name="rocSPARSE" remote="rocm-swplat" revision="refs/tags/rocm-2.4" />
<project name="hipSPARSE" remote="rocm-swplat" revision="refs/tags/rocm-2.4" />
<project name="rocALUTION" remote="rocm-swplat" revision="refs/tags/rocm-2.4" />
<project name="rocBLAS" remote="rocm-swplat" revision="refs/tags/rocm-2.5" />
<project name="hipBLAS" remote="rocm-swplat" revision="refs/tags/rocm-2.5" />
<project name="rocFFT" remote="rocm-swplat" revision="refs/tags/v0.9.3" />
<project name="rocRAND" remote="rocm-swplat" revision="refs/tags/2.5.0" />
<project name="rocSPARSE" remote="rocm-swplat" revision="refs/tags/rocm-2.5" />
<project name="hipSPARSE" remote="rocm-swplat" revision="refs/tags/rocm-2.5" />
<project name="rocALUTION" remote="rocm-swplat" revision="refs/tags/rocm-2.5" />
<project name="MIOpenGEMM" remote="rocm-swplat" revision="9547fb9e8499a5a9f16da83b1e6b749de82dd9fb" />
<project name="MIOpen" remote="rocm-swplat" revision="refs/tags/roc-2.3.0" />
<project name="Thrust" remote="rocm-swplat" revision="a58d8d783c05202bd3fa7732c2af62362198112e" sync-s="true" />
<project name="MIOpen" remote="rocm-swplat" revision="refs/tags/roc-2.5.0" />
<project name="Thrust" remote="rocm-swplat" revision="refs/tags/2.5" sync-s="true" />
<project name="rocm_smi_lib" />
<project name="rccl" remote="rocm-swplat" revision="refs/tags/0.7.5" />
<project name="MIVisionX" remote="gpuopen-libs" revision="f05574dc81b861cce7431153b9502718e79e0647" />
<project name="cub-hip" remote="rocm-swplat" revision="hip_port_1.7.4" />
<project name="rccl" remote="rocm-swplat" revision="refs/tags/2.5.0" />
<project name="MIVisionX" remote="gpuopen-libs" revision="refs/tags/1.2.0" />
</manifest>

View File

@@ -1,7 +1,8 @@
## ROCm Version History
This file contains archived version history information for the [ROCm project](https://github.com/RadeonOpenCompute/ROCm)
### Current ROCm Version: 2.4
### Current ROCm Version: 2.5
- [New features and enhancements in ROCm 2.4](#new-features-and-enhancements-in-rocm-24)
- [New features and enhancements in ROCm 2.3](#new-features-and-enhancements-in-rocm-23)
- [New features and enhancements in ROCm 2.2](#new-features-and-enhancements-in-rocm-22)
- [New features and enhancements in ROCm 2.1](#new-features-and-enhancements-in-rocm-21)
@@ -15,6 +16,14 @@ This file contains archived version history information for the [ROCm project](h
- [New Features as of ROCm 1.7](#new-features-as-of-rocm-17)
- [New Features as of ROCm 1.5](#new-features-as-of-rocm-15)
### New features and enhancements in ROCm 2.4
#### TensorFlow 2.0 support
ROCm 2.4 includes the enhanced compilation toolchain and a set of bug fixes to support TensorFlow 2.0 features natively
#### AMD Infinity Fabric&#x2122; Link enablement
ROCm 2.4 adds support to connect two Radeon Instinct MI60 or Radeon Instinct MI50 boards via AMD Infinity Fabric&#x2122; Link GPU interconnect technology.
### New features and enhancements in ROCm 2.3
#### Mem usage per GPU