Compare commits

..

12 Commits

Author SHA1 Message Date
Sam Wu
8e1883e3b5 Update documentation requirements 2024-09-16 10:12:48 -08:00
Sam Wu
7b47153482 Update documentation requirements 2024-06-06 16:58:41 -06:00
Sam Wu
4e862b6b64 Fix RTD config 2024-05-02 08:55:18 -06:00
Sam Wu
a68d0c95c2 Update documentation requirements 2024-05-01 16:59:31 -06:00
Sam Wu
6683d7d24d Update documentation requirements 2024-05-01 16:54:02 -06:00
Mátyás Aradi
602e82e6da Update Linux and ROCm versions (#2880) 2024-02-07 13:14:17 -07:00
xiaohuguo2023
08caa3481d fix issue of ROCm repository for ubuntu22.04 (#2633) 2023-11-12 20:24:05 -07:00
Sam Wu
04420d976f Update rtd yaml config (#2634)
Require build.os
2023-11-09 15:25:28 -07:00
Sam Wu
d4306c51fd add version to html title 2023-08-04 17:18:01 -06:00
Sam Wu
4d7fc6bcb0 rocm-docs-core v0.18.3 2023-06-30 09:41:08 -06:00
Sam Wu
9562420ae4 update conf.py 2023-06-29 11:16:58 -06:00
Rahul Garg
99d28df040 Update backward incompatible planned changes in 5.5 (#2279)
* Update backward incompatible planned changes

* add planned changes to changelog

* update rocm-docs-core to v0.18.3

---------

Co-authored-by: Sam Wu <sam.wu2@amd.com>
2023-06-29 11:00:04 -06:00
12 changed files with 1266 additions and 97 deletions

View File

@@ -15,6 +15,918 @@ The release notes for the ROCm platform.
-------------------
## ROCm 5.5.0
<!-- markdownlint-disable first-line-h1 -->
<!-- markdownlint-disable no-duplicate-header -->
### What's New in This Release
#### HIP Enhancements
The ROCm v5.5 release consists of the following HIP enhancements:
##### Enhanced Stack Size Limit
In this release, the stack size limit is increased from 16k to 131056 bytes (or 128K - 16).
Applications requiring to update the stack size can use hipDeviceSetLimit API.
##### `hipcc` Changes
The following hipcc changes are implemented in this release:
- `hipcc` will not implicitly link to `libpthread` and `librt`, as they are no longer a link time dependence for HIP programs.  Applications that depend on these libraries must explicitly link to them.
- `-use-staticlib` and `-use-sharedlib` options are deprecated.
##### Future Changes
- Separation of `hipcc` binaries (Perl scripts) from HIP to `hipcc` project. Users will access separate `hipcc` package for installing `hipcc` binaries in future ROCm releases.
- In a future ROCm release, the following samples will be removed from the `hip-tests` project.
- `hipBusbandWidth` at <https://github.com/ROCm-Developer-Tools/hip-tests/tree/develop/samples/1_Utils/shipBusBandwidth>
- `hipCommander` at <https://github.com/ROCm-Developer-Tools/hip-tests/tree/develop/samples/1_Utils/hipCommander>
Note that the samples will continue to be available in previous release branches.
- Removal of gcnarch from hipDeviceProp_t structure
- Addition of new fields in hipDeviceProp_t structure
- maxTexture1D
- maxTexture2D
- maxTexture1DLayered
- maxTexture2DLayered
- sharedMemPerMultiprocessor
- deviceOverlap
- asyncEngineCount
- surfaceAlignment
- unifiedAddressing
- computePreemptionSupported
- hostRegisterSupported
- uuid
- Removal of deprecated code
- hip-hcc codes from hip code tree
- Correct hipArray usage in HIP APIs such as hipMemcpyAtoH and hipMemcpyHtoA
- HIPMEMCPY_3D fields correction to avoid truncation of "size_t" to "unsigned int" inside hipMemcpy3D()
- Renaming of 'memoryType' in hipPointerAttribute_t structure to 'type'
- Correct hipGetLastError to return the last error instead of last API call's return code
- Update hipExternalSemaphoreHandleDesc to add "unsigned int reserved[16]"
- Correct handling of flag values in hipIpcOpenMemHandle for hipIpcMemLazyEnablePeerAccess
- Remove hiparray* and make it opaque with hipArray_t
##### New HIP APIs in This Release
> **Note**
>
> This is a pre-official version (beta) release of the new APIs and may contain unresolved issues.
###### Memory Management HIP APIs
The new memory management HIP API is as follows:
- Sets information on the specified pointer [BETA].
```h
hipError_t hipPointerSetAttribute(const void* value, hipPointer_attribute attribute, hipDeviceptr_t ptr);
```
###### Module Management HIP APIs
The new module management HIP APIs are as follows:
- Launches kernel $f$ with launch parameters and shared memory on stream with arguments passed to `kernelParams`, where thread blocks can cooperate and synchronize as they execute.
```h
hipError_t hipModuleLaunchCooperativeKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, hipStream_t stream, void** kernelParams);
```
- Launches kernels on multiple devices where thread blocks can cooperate and synchronize as they execute.
```h
hipError_t hipModuleLaunchCooperativeKernelMultiDevice(hipFunctionLaunchParams* launchParamsList, unsigned int numDevices, unsigned int flags);
```
###### HIP Graph Management APIs
The new HIP Graph Management APIs are as follows:
- Creates a memory allocation node and adds it to a graph [BETA]
```h
hipError_t hipGraphAddMemAllocNode(hipGraphNode_t* pGraphNode, hipGraph_t graph, const hipGraphNode_t* pDependencies, size_t numDependencies, hipMemAllocNodeParams* pNodeParams);
```
- Return parameters for memory allocation node [BETA]
```h
hipError_t hipGraphMemAllocNodeGetParams(hipGraphNode_t node, hipMemAllocNodeParams* pNodeParams);
```
- Creates a memory free node and adds it to a graph [BETA]
```h
hipError_t hipGraphAddMemFreeNode(hipGraphNode_t* pGraphNode, hipGraph_t graph, const hipGraphNode_t* pDependencies, size_t numDependencies, void* dev_ptr);
```
- Returns parameters for memory free node [BETA].
```h
hipError_t hipGraphMemFreeNodeGetParams(hipGraphNode_t node, void* dev_ptr);
```
- Write a DOT file describing graph structure [BETA].
```h
hipError_t hipGraphDebugDotPrint(hipGraph_t graph, const char* path, unsigned int flags);
```
- Copies attributes from source node to destination node [BETA].
```h
hipError_t hipGraphKernelNodeCopyAttributes(hipGraphNode_t hSrc, hipGraphNode_t hDst);
```
- Enables or disables the specified node in the given graphExec [BETA]
```h
hipError_t hipGraphNodeSetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, unsigned int isEnabled);
```
- Query whether a node in the given graphExec is enabled [BETA]
```h
hipError_t hipGraphNodeGetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, unsigned int* isEnabled);
```
##### OpenMP Enhancements
This release consists of the following OpenMP enhancements:
- Additional support for OMPT functions `get_device_time` and `get_record_type`.
- Add support for min/max fast fp atomics on AMD GPUs.
- Fix the use of the abs function in C device regions.
### Deprecations and Warnings
#### HIP Deprecation
The `hipcc` and `hipconfig` Perl scripts are deprecated. In a future release, compiled binaries will be available as `hipcc.bin` and `hipconfig.bin` as replacements for the Perl scripts.
> **Note**
>
> There will be a transition period where the Perl scripts and compiled binaries are available before the scripts are removed. There will be no functional difference between the Perl scripts and their compiled binary counterpart. No user action is required. Once these are available, users can optionally switch to `hipcc.bin` and `hipconfig.bin`. The `hipcc`/`hipconfig` soft link will be assimilated to point from `hipcc`/`hipconfig` to the respective compiled binaries as the default option.
##### Linux Filesystem Hierarchy Standard for ROCm
ROCm packages have adopted the Linux foundation filesystem hierarchy standard in this release to ensure ROCm components follow open source conventions for Linux-based distributions. While moving to a new filesystem hierarchy, ROCm ensures backward compatibility with its 5.1 version or older filesystem hierarchy. See below for a detailed explanation of the new filesystem hierarchy and backward compatibility.
##### New Filesystem Hierarchy
The following is the new filesystem hierarchy:4
```text
/opt/rocm-<ver>
| --bin
| --All externally exposed Binaries
| --libexec
| --<component>
| -- Component specific private non-ISA executables (architecture independent)
| --include
| -- <component>
| --<header files>
| --lib
| --lib<soname>.so -> lib<soname>.so.major -> lib<soname>.so.major.minor.patch
(public libraries linked with application)
| --<component> (component specific private library, executable data)
| --<cmake>
| --components
| --<component>.config.cmake
| --share
| --html/<component>/*.html
| --info/<component>/*.[pdf, md, txt]
| --man
| --doc
| --<component>
| --<licenses>
| --<component>
| --<misc files> (arch independent non-executable)
| --samples
```
> **Note**
>
> ROCm will not support backward compatibility with the v5.1(old) file system hierarchy in its next major release.
For more information, refer to <https://refspecs.linuxfoundation.org/fhs.shtml>.
##### Backward Compatibility with Older Filesystems
ROCm has moved header files and libraries to its new location as indicated in the above structure and included symbolic-link and wrapper header files in its old location for backward compatibility.
> **Note**
>
> ROCm will continue supporting backward compatibility until the next major release.
##### Wrapper header files
Wrapper header files are placed in the old location (`/opt/rocm-xxx/<component>/include`) with a warning message to include files from the new location (`/opt/rocm-xxx/include`) as shown in the example below:
```h
// Code snippet from hip_runtime.h
#pragma message “This file is deprecated. Use file from include path /opt/rocm-ver/include/ and prefix with hip”.
#include "hip/hip_runtime.h"
```
The wrapper header files backward compatibility deprecation is as follows:
- `#pragma` message announcing deprecation -- ROCm v5.2 release
- `#pragma` message changed to `#warning` -- Future release
- `#warning` changed to `#error` -- Future release
- Backward compatibility wrappers removed -- Future release
##### Library files
Library files are available in the `/opt/rocm-xxx/lib` folder. For backward compatibility, the old library location (`/opt/rocm-xxx/<component>/lib`) has a soft link to the library at the new location.
Example:
```log
$ ls -l /opt/rocm/hip/lib/
total 4
drwxr-xr-x 4 root root 4096 May 12 10:45 cmake
lrwxrwxrwx 1 root root 24 May 10 23:32 libamdhip64.so -> ../../lib/libamdhip64.so
```
##### CMake Config files
All CMake configuration files are available in the `/opt/rocm-xxx/lib/cmake/<component>` folder.
For backward compatibility, the old CMake locations (`/opt/rocm-xxx/<component>/lib/cmake`) consist of a soft link to the new CMake config.
Example:
```log
$ ls -l /opt/rocm/hip/lib/cmake/hip/
total 0
lrwxrwxrwx 1 root root 42 May 10 23:32 hip-config.cmake -> ../../../../lib/cmake/hip/hip-config.cmake
```
#### ROCm Support For Code Object V3 Deprecated
Support for Code Object v3 is deprecated and will be removed in a future release.
#### Comgr V3.0 Changes
The following APIs and macros have been marked as deprecated. These are expected to be removed in a future ROCm release and coincides with the release of Comgr v3.0.
##### API Changes
- `amd_comgr_action_info_set_options()`
- `amd_comgr_action_info_get_options()`
##### Actions and Data Types
- `AMD_COMGR_ACTION_ADD_DEVICE_LIBRARIES`
- `AMD_COMGR_ACTION_COMPILE_SOURCE_TO_FATBIN`
For replacements, see the `AMD_COMGR_ACTION_INFO_GET`/`SET_OPTION_LIST APIs`, and the `AMD_COMGR_ACTION_COMPILE_SOURCE_(WITH_DEVICE_LIBS)_TO_BC` macros.
#### Deprecated Environment Variables
The following environment variables are removed in this ROCm release:
- `GPU_MAX_COMMAND_QUEUES`
- `GPU_MAX_WORKGROUP_SIZE_2D_X`
- `GPU_MAX_WORKGROUP_SIZE_2D_Y`
- `GPU_MAX_WORKGROUP_SIZE_3D_X`
- `GPU_MAX_WORKGROUP_SIZE_3D_Y`
- `GPU_MAX_WORKGROUP_SIZE_3D_Z`
- `GPU_BLIT_ENGINE_TYPE`
- `GPU_USE_SYNC_OBJECTS`
- `AMD_OCL_SC_LIB`
- `AMD_OCL_ENABLE_MESSAGE_BOX`
- `GPU_FORCE_64BIT_PTR`
- `GPU_FORCE_OCL20_32BIT`
- `GPU_RAW_TIMESTAMP`
- `GPU_SELECT_COMPUTE_RINGS_ID`
- `GPU_USE_SINGLE_SCRATCH`
- `GPU_ENABLE_LARGE_ALLOCATION`
- `HSA_LOCAL_MEMORY_ENABLE`
- `HSA_ENABLE_COARSE_GRAIN_SVM`
- `GPU_IFH_MODE`
- `OCL_SYSMEM_REQUIREMENT`
- `OCL_CODE_CACHE_ENABLE`
- `OCL_CODE_CACHE_RESET`
### Known Issues In This Release
The following are the known issues in this release.
#### `DISTRIBUTED`/`TEST_DISTRIBUTED_SPAWN` Fails
When user applications call `ncclCommAbort` to destruct communicators and then create new
communicators repeatedly, subsequent communicators may fail to initialize.
This issue is under investigation and will be resolved in a future release.
#### Failures In HIP Directed Tests
Multiple HIP directed tests fail.
### Library Changes in ROCM 5.5.0
| Library | Version |
|---------|---------|
| hipBLAS | 0.53.0 ⇒ [0.54.0](https://github.com/ROCmSoftwarePlatform/hipBLAS/releases/tag/rocm-5.5.0) |
| hipCUB | 2.13.0 ⇒ [2.13.1](https://github.com/ROCmSoftwarePlatform/hipCUB/releases/tag/rocm-5.5.0) |
| hipFFT | 1.0.10 ⇒ [1.0.11](https://github.com/ROCmSoftwarePlatform/hipFFT/releases/tag/rocm-5.5.0) |
| hipSOLVER | 1.6.0 ⇒ [1.7.0](https://github.com/ROCmSoftwarePlatform/hipSOLVER/releases/tag/rocm-5.5.0) |
| hipSPARSE | 2.3.3 ⇒ [2.3.5](https://github.com/ROCmSoftwarePlatform/hipSPARSE/releases/tag/rocm-5.5.0) |
| rccl | 2.13.4 ⇒ [2.15.5](https://github.com/ROCmSoftwarePlatform/rccl/releases/tag/rocm-5.5.0) |
| rocALUTION | 2.1.3 ⇒ [2.1.8](https://github.com/ROCmSoftwarePlatform/rocALUTION/releases/tag/rocm-5.5.0) |
| rocBLAS | 2.46.0 ⇒ [2.47.0](https://github.com/ROCmSoftwarePlatform/rocBLAS/releases/tag/rocm-5.5.0) |
| rocFFT | 1.0.21 ⇒ [1.0.22](https://github.com/ROCmSoftwarePlatform/rocFFT/releases/tag/rocm-5.5.0) |
| rocPRIM | 2.12.0 ⇒ [2.13.0](https://github.com/ROCmSoftwarePlatform/rocPRIM/releases/tag/rocm-5.5.0) |
| rocRAND | 2.10.16 ⇒ [2.10.17](https://github.com/ROCmSoftwarePlatform/rocRAND/releases/tag/rocm-5.5.0) |
| rocSOLVER | 3.20.0 ⇒ [3.21.0](https://github.com/ROCmSoftwarePlatform/rocSOLVER/releases/tag/rocm-5.5.0) |
| rocSPARSE | 2.4.0 ⇒ [2.5.1](https://github.com/ROCmSoftwarePlatform/rocSPARSE/releases/tag/rocm-5.5.0) |
| rocThrust | [2.17.0](https://github.com/ROCmSoftwarePlatform/rocThrust/releases/tag/rocm-5.5.0) |
| rocWMMA | 0.9 ⇒ [1.0](https://github.com/ROCmSoftwarePlatform/rocWMMA/releases/tag/rocm-5.5.0) |
| Tensile | 4.35.0 ⇒ [4.36.0](https://github.com/ROCmSoftwarePlatform/Tensile/releases/tag/rocm-5.5.0) |
#### hipBLAS 0.54.0
hipBLAS 0.54.0 for ROCm 5.5.0
##### Added
- added option to opt-in to use __half for hipblasHalf type in the API for c++ users who define HIPBLAS_USE_HIP_HALF
- added scripts to plot performance for multiple functions
- data driven hipblas-bench and hipblas-test execution via external yaml format data files
- client smoke test added for quick validation using command hipblas-test --yaml hipblas_smoke.yaml
##### Fixed
- fixed datatype conversion functions to support more rocBLAS/cuBLAS datatypes
- fixed geqrf to return successfully when nullptrs are passed in with n == 0 || m == 0
- fixed getrs to return successfully when given nullptrs with corresponding size = 0
- fixed getrs to give info = -1 when transpose is not an expected type
- fixed gels to return successfully when given nullptrs with corresponding size = 0
- fixed gels to give info = -1 when transpose is not in (&#39;N&#39;, &#39;T&#39;) for real cases or not in (&#39;N&#39;, &#39;C&#39;) for complex cases
##### Changed
- changed reference code for Windows to OpenBLAS
- hipblas client executables all now begin with hipblas- prefix
#### hipCUB 2.13.1
hipCUB 2.13.1 for ROCm 5.5.0
##### Added
- Benchmarks for `BlockShuffle`, `BlockLoad`, and `BlockStore`.
##### Changed
- CUB backend references CUB and Thrust version 1.17.2.
- Improved benchmark coverage of `BlockScan` by adding `ExclusiveScan`, benchmark coverage of `BlockRadixSort` by adding `SortBlockedToStriped`, and benchmark coverage of `WarpScan` by adding `Broadcast`.
##### Fixed
- Windows HIP SDK support
##### Known Issues
- `BlockRadixRankMatch` is currently broken under the rocPRIM backend.
- `BlockRadixRankMatch` with a warp size that does not exactly divide the block size is broken under the CUB backend.
#### hipFFT 1.0.11
hipFFT 1.0.11 for ROCm 5.5.0
##### Fixed
- Fixed old version rocm include/lib folders not removed on upgrade.
#### hipSOLVER 1.7.0
hipSOLVER 1.7.0 for ROCm 5.5.0
##### Added
- Added functions
- gesvdj
- hipsolverSgesvdj_bufferSize, hipsolverDgesvdj_bufferSize, hipsolverCgesvdj_bufferSize, hipsolverZgesvdj_bufferSize
- hipsolverSgesvdj, hipsolverDgesvdj, hipsolverCgesvdj, hipsolverZgesvdj
- gesvdjBatched
- hipsolverSgesvdjBatched_bufferSize, hipsolverDgesvdjBatched_bufferSize, hipsolverCgesvdjBatched_bufferSize, hipsolverZgesvdjBatched_bufferSize
- hipsolverSgesvdjBatched, hipsolverDgesvdjBatched, hipsolverCgesvdjBatched, hipsolverZgesvdjBatched
#### hipSPARSE 2.3.5
hipSPARSE 2.3.5 for ROCm 5.5.0
##### Improved
- Fixed an issue, where the rocm folder was not removed on upgrade of meta packages
- Fixed a compilation issue with cusparse backend
- Added more detailed messages on unit test failures due to missing input data
- Improved documentation
- Fixed a bug with deprecation messages when using gcc9 (Thanks @Maetveis)
#### rccl 2.15.5
RCCL 2.15.5 for ROCm 5.5.0
##### Changed
- Compatibility with NCCL 2.15.5
- Unit test executable renamed to rccl-UnitTests
##### Added
- HW-topology aware binary tree implementation
- Experimental support for MSCCL
- New unit tests for hipGraph support
- NPKit integration
##### Fixed
- rocm-smi ID conversion
- Support for HIP_VISIBLE_DEVICES for unit tests
- Support for p2p transfers to non (HIP) visible devices
##### Removed
- Removed TransferBench from tools. Exists in standalone repo: https://github.com/ROCmSoftwarePlatform/TransferBench
#### rocALUTION 2.1.8
rocALUTION 2.1.8 for ROCm 5.5.0
##### Added
- Added build support for Navi32
##### Improved
- Fixed a typo in MPI backend
- Fixed a bug with the backend when HIP support is disabled
- Fixed a bug in SAAMG hierarchy building on HIP backend
- Improved SAAMG hierarchy build performance on HIP backend
##### Changed
- LocalVector::GetIndexValues(ValueType\*) is deprecated, use LocalVector::GetIndexValues(const LocalVector&amp;, LocalVector\*) instead
- LocalVector::SetIndexValues(const ValueType\*) is deprecated, use LocalVector::SetIndexValues(const LocalVector&amp;, const LocalVector&amp;) instead
- LocalMatrix::RSDirectInterpolation(const LocalVector&amp;, const LocalVector&amp;, LocalMatrix\*, LocalMatrix\*) is deprecated, use LocalMatrix::RSDirectInterpolation(const LocalVector&amp;, const LocalVector&amp;, LocalMatrix\*) instead
- LocalMatrix::RSExtPIInterpolation(const LocalVector&amp;, const LocalVector&amp;, bool, float, LocalMatrix\*, LocalMatrix\*) is deprecated, use LocalMatrix::RSExtPIInterpolation(const LocalVector&amp;, const LocalVector&amp;, bool, LocalMatrix\*) instead
- LocalMatrix::RugeStueben() is deprecated
- LocalMatrix::AMGSmoothedAggregation(ValueType, const LocalVector&amp;, const LocalVector&amp;, LocalMatrix\*, LocalMatrix\*, int) is deprecated, use LocalMatrix::AMGAggregation(ValueType, const LocalVector&amp;, const LocalVector&amp;, LocalMatrix\*, int) instead
- LocalMatrix::AMGAggregation(const LocalVector&amp;, LocalMatrix\*, LocalMatrix\*) is deprecated, use LocalMatrix::AMGAggregation(const LocalVector&amp;, LocalMatrix\*) instead
#### rocBLAS 2.47.0
rocBLAS 2.47.0 for ROCm 5.5.0
##### Added
- added functionality rocblas_geam_ex for matrix-matrix minimum operations
- added HIP Graph support as beta feature for rocBLAS Level 1, Level 2, and Level 3(pointer mode host) functions
- added beta features API. Exposed using compiler define ROCBLAS_BETA_FEATURES_API
- added support for vector initialization in the rocBLAS test framework with negative increments
- added windows build documentation for forthcoming support using ROCm HIP SDK
- added scripts to plot performance for multiple functions
##### Optimizations
- improved performance of Level 2 rocBLAS GEMV for float and double precision. Performance enhanced by 150-200% for certain problem sizes when (m==n) measured on a gfx90a GPU.
- improved performance of Level 2 rocBLAS GER for float, double and complex float precisions. Performance enhanced by 5-7% for certain problem sizes measured on a gfx90a GPU.
- improved performance of Level 2 rocBLAS SYMV for float and double precisions. Performance enhanced by 120-150% for certain problem sizes measured on both gfx908 and gfx90a GPUs.
##### Fixed
- fixed setting of executable mode on client script rocblas_gentest.py to avoid potential permission errors with clients rocblas-test and rocblas-bench
- fixed deprecated API compatibility with Visual Studio compiler
- fixed test framework memory exception handling for Level 2 functions when the host memory allocation exceeds the available memory
##### Changed
- install.sh internally runs rmake.py (also used on windows) and rmake.py may be used directly by developers on linux (use --help)
- rocblas client executables all now begin with rocblas- prefix
##### Removed
- install.sh removed options -o --cov as now Tensile will use the default COV format, set by cmake define Tensile_CODE_OBJECT_VERSION=default
#### rocFFT 1.0.22
rocFFT 1.0.22 for ROCm 5.5.0
##### Optimizations
- Improved performance of 1D lengths &lt; 2048 that use Bluestein&#39;s algorithm.
- Reduced time for generating code during plan creation.
- Optimized 3D R2C/C2R lengths 32, 84, 128.
- Optimized batched small 1D R2C/C2R cases.
##### Added
- Added gfx1101 to default AMDGPU_TARGETS.
##### Changed
- Moved client programs to C++17.
- Moved planar kernels and infrequently used Stockham kernels to be runtime-compiled.
- Moved transpose, real-complex, Bluestein, and Stockham kernels to library kernel cache.
##### Fixed
- Removed zero-length twiddle table allocations, which fixes errors from hipMallocManaged.
- Fixed incorrect freeing of HIP stream handles during twiddle computation when multiple devices are present.
#### rocPRIM 2.13.0
rocPRIM 2.13.0 for ROCm 5.5.0
##### Added
- New block level `radix_rank` primitive.
- New block level `radix_rank_match` primitive.
##### Changed
- Improved the performance of `block_radix_sort` and `device_radix_sort`.
##### Known Issues
- Disabled GPU error messages relating to incorrect warp operation usage with Navi GPUs on Windows, due to GPU printf performance issues on Windows.
##### Fixed
- Fixed benchmark build on Windows
#### rocRAND 2.10.17
rocRAND 2.10.17 for ROCm 5.5.0
##### Added
- MT19937 pseudo random number generator based on M. Matsumoto and T. Nishimura, 1998, Mersenne Twister: A 623-dimensionally equidistributed uniform pseudorandom number generator.
- New benchmark for the device API using Google Benchmark, `benchmark_rocrand_device_api`, replacing `benchmark_rocrand_kernel`. `benchmark_rocrand_kernel` is deprecated and will be removed in a future version. Likewise, `benchmark_curand_host_api` is added to replace `benchmark_curand_generate` and `benchmark_curand_device_api` is added to replace `benchmark_curand_kernel`.
- experimental HIP-CPU feature
- ThreeFry pseudorandom number generator based on Salmon et al., 2011, &#34;Parallel random numbers: as easy as 1, 2, 3&#34;.
##### Changed
- Python 2.7 is no longer officially supported.
##### Fixed
- Windows HIP SDK support
#### rocSOLVER 3.21.0
rocSOLVER 3.21.0 for ROCm 5.5.0
##### Added
- SVD for general matrices using Jacobi algorithm:
- GESVDJ (with batched and strided\_batched versions)
- LU factorization without pivoting for block tridiagonal matrices:
- GEBLTTRF_NPVT (with batched and strided\_batched versions)
- Linear system solver without pivoting for block tridiagonal matrices:
- GEBLTTRS_NPVT (with batched and strided\_batched, versions)
- Product of triangular matrices
- LAUUM
- Added experimental hipGraph support for rocSOLVER functions
##### Optimized
- Improved the performance of SYEVJ/HEEVJ.
##### Changed
- STEDC, SYEVD/HEEVD and SYGVD/HEGVD now use fully implemented Divide and Conquer approach.
##### Fixed
- SYEVJ/HEEVJ should now be invariant under matrix scaling.
- SYEVJ/HEEVJ should now properly output the eigenvalues when no sweeps are executed.
- Fixed GETF2\_NPVT and GETRF\_NPVT input data initialization in tests and benchmarks.
- Fixed rocblas missing from the dependency list of the rocsolver deb and rpm packages.
#### rocSPARSE 2.5.1
rocSPARSE 2.5.1 for ROCm 5.5.0
##### Added
- Added bsrgemm and spgemm for BSR format
- Added bsrgeam
- Added build support for Navi32
- Added experimental hipGraph support for some rocSPARSE routines
- Added csritsv, spitsv csr iterative triangular solve
- Added mixed precisions for SpMV
- Added batched SpMM for transpose A in COO format with atomic atomic algorithm
##### Improved
- Optimization to csr2bsr
- Optimization to csr2csr_compress
- Optimization to csr2coo
- Optimization to gebsr2csr
- Optimization to csr2gebsr
- Fixes to documentation
- Fixes a bug in COO SpMV gridsize
- Fixes a bug in SpMM gridsize when using very large matrices
##### Known Issues
- In csritlu0, the algorithm rocsparse_itilu0_alg_sync_split_fusion has some accuracy issues to investigate with XNACK enabled. The fallback is rocsparse_itilu0_alg_sync_split.
#### rocWMMA 1.0
rocWMMA 1.0 for ROCm 5.5.0
##### Added
- Added support for wave32 on gfx11+
- Added infrastructure changes to support hipRTC
- Added performance tracking system
##### Changed
- Modified the assignment of hardware information
- Modified the data access for unsigned datatypes
- Added library config to support multiple architectures
#### Tensile 4.36.0
Tensile 4.36.0 for ROCm 5.5.0
##### Added
- Add functions for user-driven tuning
- Add GFX11 support: HostLibraryTests yamls, rearragne FP32(C)/FP64(C) instruction order, archCaps for instruction renaming condition, adjust vgpr bank for A/B/C for optimize, separate vscnt and vmcnt, dual mac
- Add binary search for Grid-Based algorithm
- Add reject condition for (StoreCInUnroll + BufferStore=0) and (DirectToVgpr + ScheduleIterAlg&lt;3 + PrefetchGlobalRead==2)
- Add support for (DirectToLds + hgemm + NN/NT/TT) and (DirectToLds + hgemm + GlobalLoadVectorWidth &lt; 4)
- Add support for (DirectToLds + hgemm(TLU=True only) or sgemm + NumLoadsCoalesced &gt; 1)
- Add GSU SingleBuffer algorithm for HSS/BSS
- Add gfx900:xnack-, gfx1032, gfx1034, gfx1035
- Enable gfx1031 support
##### Optimizations
- Use AssertSizeLessThan for BufferStoreOffsetLimitCheck if it is smaller than MT1
- Improve InitAccVgprOpt
##### Changed
- Use global_atomic for GSU instead of flat and global_store for debug code
- Replace flat_load/store with global_load/store
- Use global_load/store for BufferLoad/Store=0 and enable scheduling
- LocalSplitU support for HGEMM+HPA when MFMA disabled
- Update Code Object Version
- Type cast local memory to COMPUTE_DATA_TYPE in LDS to avoid precision loss
- Update asm cap cache arguments
- Unify SplitGlobalRead into ThreadSeparateGlobalRead and remove SplitGlobalRead
- Change checks, error messages, assembly syntax, and coverage for DirectToLds
- Remove unused cmake file
- Clean up the LLVM dependency code
- Update ThreadSeparateGlobalRead test cases for PrefetchGlobalRead=2
- Update sgemm/hgemm test cases for DirectToLds and ThreadSepareteGlobalRead
##### Fixed
- Add build-id to header of compiled source kernels
- Fix solution index collisions
- Fix h beta vectorwidth4 correctness issue for WMMA
- Fix an error with BufferStore=0
- Fix mismatch issue with (StoreCInUnroll + PrefetchGlobalRead=2)
- Fix MoveMIoutToArch bug
- Fix flat load correctness issue on I8 and flat store correctness issue
- Fix mismatch issue with BufferLoad=0 + TailLoop for large array sizes
- Fix code generation error with BufferStore=0 and StoreCInUnrollPostLoop
- Fix issues with DirectToVgpr + ScheduleIterAlg&lt;3
- Fix mismatch issue with DGEMM TT + LocalReadVectorWidth=2
- Fix mismatch issue with PrefetchGlobalRead=2
- Fix mismatch issue with DirectToVgpr + PrefetchGlobalRead=2 + small tile size
- Fix an error with PersistentKernel=0 + PrefetchAcrossPersistent=1 + PrefetchAcrossPersistentMode=1
- Fix mismatch issue with DirectToVgpr + DirectToLds + only 1 iteration in unroll loop case
- Remove duplicate GSU kernels: for GSU = 1, GSUAlgorithm SingleBuffer and MultipleBuffer kernels are identical
- Fix for failing CI tests due to CpuThreads=0
- Fix mismatch issue with DirectToLds + PrefetchGlobalRead=2
- Remove the reject condition for ThreadSeparateGlobalRead and DirectToLds (HGEMM, SGEMM only)
- Modify reject condition for minimum lanes of ThreadSeparateGlobalRead (SGEMM or larger data type only)
-------------------
## ROCm 5.4.3
<!-- markdownlint-disable first-line-h1 -->
### Deprecations and Warnings
#### HIP Perl Scripts Deprecation
The `hipcc` and `hipconfig` Perl scripts are deprecated. In a future release, compiled binaries will be available as `hipcc.bin` and `hipconfig.bin` as replacements for the Perl scripts.
> **Note**
>
> There will be a transition period where the Perl scripts and compiled binaries are available before the scripts are removed. There will be no functional difference between the Perl scripts and their compiled binary counterpart. No user action is required. Once these are available, users can optionally switch to `hipcc.bin` and `hipconfig.bin`. The `hipcc`/`hipconfig` soft link will be assimilated to point from `hipcc`/`hipconfig` to the respective compiled binaries as the default option.
##### Linux Filesystem Hierarchy Standard for ROCm
ROCm packages have adopted the Linux foundation filesystem hierarchy standard in this release to ensure ROCm components follow open source conventions for Linux-based distributions. While moving to a new filesystem hierarchy, ROCm ensures backward compatibility with its 5.1 version or older filesystem hierarchy. See below for a detailed explanation of the new filesystem hierarchy and backward compatibility.
##### New Filesystem Hierarchy
The following is the new filesystem hierarchy:4
```text
/opt/rocm-<ver>
| --bin
| --All externally exposed Binaries
| --libexec
| --<component>
| -- Component specific private non-ISA executables (architecture independent)
| --include
| -- <component>
| --<header files>
| --lib
| --lib<soname>.so -> lib<soname>.so.major -> lib<soname>.so.major.minor.patch
(public libraries linked with application)
| --<component> (component specific private library, executable data)
| --<cmake>
| --components
| --<component>.config.cmake
| --share
| --html/<component>/*.html
| --info/<component>/*.[pdf, md, txt]
| --man
| --doc
| --<component>
| --<licenses>
| --<component>
| --<misc files> (arch independent non-executable)
| --samples
```
> **Note**
>
> ROCm will not support backward compatibility with the v5.1(old) file system hierarchy in its next major release.
For more information, refer to <https://refspecs.linuxfoundation.org/fhs.shtml>.
##### Backward Compatibility with Older Filesystems
ROCm has moved header files and libraries to its new location as indicated in the above structure and included symbolic-link and wrapper header files in its old location for backward compatibility.
> **Note**
>
> ROCm will continue supporting backward compatibility until the next major release.
##### Wrapper header files
Wrapper header files are placed in the old location (`/opt/rocm-xxx/<component>/include`) with a warning message to include files from the new location (`/opt/rocm-xxx/include`) as shown in the example below:
```h
// Code snippet from hip_runtime.h
#pragma message “This file is deprecated. Use file from include path /opt/rocm-ver/include/ and prefix with hip”.
#include "hip/hip_runtime.h"
```
The wrapper header files backward compatibility deprecation is as follows:
- `#pragma` message announcing deprecation -- ROCm v5.2 release
- `#pragma` message changed to `#warning` -- Future release
- `#warning` changed to `#error` -- Future release
- Backward compatibility wrappers removed -- Future release
##### Library files
Library files are available in the `/opt/rocm-xxx/lib` folder. For backward compatibility, the old library location (`/opt/rocm-xxx/<component>/lib`) has a soft link to the library at the new location.
Example:
```log
$ ls -l /opt/rocm/hip/lib/
total 4
drwxr-xr-x 4 root root 4096 May 12 10:45 cmake
lrwxrwxrwx 1 root root 24 May 10 23:32 libamdhip64.so -> ../../lib/libamdhip64.so
```
##### CMake Config files
All CMake configuration files are available in the `/opt/rocm-xxx/lib/cmake/<component>` folder. For backward compatibility, the old CMake locations (`/opt/rocm-xxx/<component>/lib/cmake`) consist of a soft link to the new CMake config.
Example:
```log
$ ls -l /opt/rocm/hip/lib/cmake/hip/
total 0
lrwxrwxrwx 1 root root 42 May 10 23:32 hip-config.cmake -> ../../../../lib/cmake/hip/hip-config.cmake
```
### Fixed Defects
#### Compiler Improvements
In ROCm v5.4.3, improvements to the compiler address errors with the following signatures:
- "error: unhandled SGPR spill to memory"
- "cannot scavenge register without an emergency spill slot!"
- "error: ran out of registers during register allocation"
### Known Issues
#### Compiler Option Error at Runtime
Some users may encounter a “Cannot find Symbol” error at runtime when using -save-temps. While most -save-temps use cases work correctly, this error may appear occasionally.
This issue is under investigation, and the known workaround is not to use -save-temps when the error appears.
### Library Changes in ROCM 5.4.3
| Library | Version |
|---------|---------|
| hipBLAS | [0.53.0](https://github.com/ROCmSoftwarePlatform/hipBLAS/releases/tag/rocm-5.4.3) |
| hipCUB | [2.13.0](https://github.com/ROCmSoftwarePlatform/hipCUB/releases/tag/rocm-5.4.3) |
| hipFFT | [1.0.10](https://github.com/ROCmSoftwarePlatform/hipFFT/releases/tag/rocm-5.4.3) |
| hipSOLVER | [1.6.0](https://github.com/ROCmSoftwarePlatform/hipSOLVER/releases/tag/rocm-5.4.3) |
| hipSPARSE | [2.3.3](https://github.com/ROCmSoftwarePlatform/hipSPARSE/releases/tag/rocm-5.4.3) |
| rccl | [2.13.4](https://github.com/ROCmSoftwarePlatform/rccl/releases/tag/rocm-5.4.3) |
| rocALUTION | [2.1.3](https://github.com/ROCmSoftwarePlatform/rocALUTION/releases/tag/rocm-5.4.3) |
| rocBLAS | [2.46.0](https://github.com/ROCmSoftwarePlatform/rocBLAS/releases/tag/rocm-5.4.3) |
| rocFFT | 1.0.20 ⇒ [1.0.21](https://github.com/ROCmSoftwarePlatform/rocFFT/releases/tag/rocm-5.4.3) |
| rocPRIM | [2.12.0](https://github.com/ROCmSoftwarePlatform/rocPRIM/releases/tag/rocm-5.4.3) |
| rocRAND | [2.10.16](https://github.com/ROCmSoftwarePlatform/rocRAND/releases/tag/rocm-5.4.3) |
| rocSOLVER | [3.20.0](https://github.com/ROCmSoftwarePlatform/rocSOLVER/releases/tag/rocm-5.4.3) |
| rocSPARSE | [2.4.0](https://github.com/ROCmSoftwarePlatform/rocSPARSE/releases/tag/rocm-5.4.3) |
| rocThrust | [2.17.0](https://github.com/ROCmSoftwarePlatform/rocThrust/releases/tag/rocm-5.4.3) |
| rocWMMA | [0.9](https://github.com/ROCmSoftwarePlatform/rocWMMA/releases/tag/rocm-5.4.3) |
| Tensile | [4.35.0](https://github.com/ROCmSoftwarePlatform/Tensile/releases/tag/rocm-5.4.3) |
#### rocFFT 1.0.21
rocFFT 1.0.21 for ROCm 5.4.3
##### Fixed
- Removed source directory from rocm_install_targets call to prevent installation of rocfft.h in an unintended location.
-------------------
## ROCm 5.4.2
<!-- markdownlint-disable first-line-h1 -->
### Deprecations and Warnings
#### HIP Perl Scripts Deprecation
The `hipcc` and `hipconfig` Perl scripts are deprecated. In a future release, compiled binaries will be available as `hipcc.bin` and `hipconfig.bin` as replacements for the Perl scripts.
> **Note**
>
> There will be a transition period where the Perl scripts and compiled binaries are available before the scripts are removed. There will be no functional difference between the Perl scripts and their compiled binary counterpart. No user action is required. Once these are available, users can optionally switch to `hipcc.bin` and `hipconfig.bin`. The `hipcc`/`hipconfig` soft link will be assimilated to point from `hipcc`/`hipconfig` to the respective compiled binaries as the default option.
#### `hipcc` Options Deprecation
The following hipcc options are being deprecated and will be removed in a future release:
- The `--amdgpu-target` option is being deprecated, and user must use the `offload-arch` option to specify the GPU architecture.
- The `--amdhsa-code-object-version` option is being deprecated. Users can use the Clang/LLVM option `-mllvm -mcode-object-version` to debug issues related to code object versions.
- The `--hipcc-func-supp`/`--hipcc-no-func-supp` options are being deprecated, as the function calls are already supported in production on AMD GPUs.
### Known Issues
Under certain circumstances typified by high register pressure, users may encounter a compiler abort with one of the following error messages:
- > `error: unhandled SGPR spill to memory`
- > `cannot scavenge register without an emergency spill slot!`
- > `error: ran out of registers during register allocation`
This is a known issue and will be fixed in a future release.
### Library Changes in ROCM 5.4.2
| Library | Version |
|---------|---------|
| hipBLAS | [0.53.0](https://github.com/ROCmSoftwarePlatform/hipBLAS/releases/tag/rocm-5.4.2) |
| hipCUB | [2.13.0](https://github.com/ROCmSoftwarePlatform/hipCUB/releases/tag/rocm-5.4.2) |
| hipFFT | [1.0.10](https://github.com/ROCmSoftwarePlatform/hipFFT/releases/tag/rocm-5.4.2) |
| hipSOLVER | [1.6.0](https://github.com/ROCmSoftwarePlatform/hipSOLVER/releases/tag/rocm-5.4.2) |
| hipSPARSE | [2.3.3](https://github.com/ROCmSoftwarePlatform/hipSPARSE/releases/tag/rocm-5.4.2) |
| rccl | [2.13.4](https://github.com/ROCmSoftwarePlatform/rccl/releases/tag/rocm-5.4.2) |
| rocALUTION | [2.1.3](https://github.com/ROCmSoftwarePlatform/rocALUTION/releases/tag/rocm-5.4.2) |
| rocBLAS | [2.46.0](https://github.com/ROCmSoftwarePlatform/rocBLAS/releases/tag/rocm-5.4.2) |
| rocFFT | [1.0.20](https://github.com/ROCmSoftwarePlatform/rocFFT/releases/tag/rocm-5.4.2) |
| rocPRIM | [2.12.0](https://github.com/ROCmSoftwarePlatform/rocPRIM/releases/tag/rocm-5.4.2) |
| rocRAND | [2.10.16](https://github.com/ROCmSoftwarePlatform/rocRAND/releases/tag/rocm-5.4.2) |
| rocSOLVER | [3.20.0](https://github.com/ROCmSoftwarePlatform/rocSOLVER/releases/tag/rocm-5.4.2) |
| rocSPARSE | [2.4.0](https://github.com/ROCmSoftwarePlatform/rocSPARSE/releases/tag/rocm-5.4.2) |
| rocThrust | [2.17.0](https://github.com/ROCmSoftwarePlatform/rocThrust/releases/tag/rocm-5.4.2) |
| rocWMMA | [0.9](https://github.com/ROCmSoftwarePlatform/rocWMMA/releases/tag/rocm-5.4.2) |
| Tensile | [4.35.0](https://github.com/ROCmSoftwarePlatform/Tensile/releases/tag/rocm-5.4.2) |
-------------------
## ROCm 5.4.1
<!-- markdownlint-disable first-line-h1 -->
### What's New in This Release

View File

@@ -15,40 +15,130 @@ The release notes for the ROCm platform.
-------------------
## ROCm 5.4.1
## ROCm 5.5.0
<!-- markdownlint-disable first-line-h1 -->
<!-- markdownlint-disable no-duplicate-header -->
### What's New in This Release
#### HIP Enhancements
The ROCm v5.4.1 release consists of the following new HIP API:
The ROCm v5.5 release consists of the following HIP enhancements:
##### New HIP API - hipLaunchHostFunc
##### Enhanced Stack Size Limit
The following new HIP API is introduced in the ROCm v5.4.1 release.
In this release, the stack size limit is increased from 16k to 131056 bytes (or 128K - 16).
Applications requiring to update the stack size can use hipDeviceSetLimit API.
##### `hipcc` Changes
The following hipcc changes are implemented in this release:
- `hipcc` will not implicitly link to `libpthread` and `librt`, as they are no longer a link time dependence for HIP programs.  Applications that depend on these libraries must explicitly link to them.
- `-use-staticlib` and `-use-sharedlib` options are deprecated.
##### Future Changes
- Separation of `hipcc` binaries (Perl scripts) from HIP to `hipcc` project. Users will access separate `hipcc` package for installing `hipcc` binaries in future ROCm releases.
- In a future ROCm release, the following samples will be removed from the `hip-tests` project.
- `hipBusbandWidth` at <https://github.com/ROCm-Developer-Tools/hip-tests/tree/develop/samples/1_Utils/shipBusBandwidth>
- `hipCommander` at <https://github.com/ROCm-Developer-Tools/hip-tests/tree/develop/samples/1_Utils/hipCommander>
Note that the samples will continue to be available in previous release branches.
##### New HIP APIs in This Release
> **Note**
>
> This is a pre-official version (beta) release of the new APIs.
> This is a pre-official version (beta) release of the new APIs and may contain unresolved issues.
```h
hipError_t hipLaunchHostFunc(hipStream_t stream, hipHostFn_t fn, void* userData);
```
###### Memory Management HIP APIs
This swaps the stream capture mode of a thread.
The new memory management HIP API is as follows:
```text
@param [in] mode - Pointer to mode value to swap with the current mode
```
- Sets information on the specified pointer [BETA].
This parameter returns `#hipSuccess`, `#hipErrorInvalidValue`.
```h
hipError_t hipPointerSetAttribute(const void* value, hipPointer_attribute attribute, hipDeviceptr_t ptr);
```
For more information, refer to the HIP API documentation at /bundle/HIP_API_Guide/page/modules.html.
###### Module Management HIP APIs
The new module management HIP APIs are as follows:
- Launches kernel $f$ with launch parameters and shared memory on stream with arguments passed to `kernelParams`, where thread blocks can cooperate and synchronize as they execute.
```h
hipError_t hipModuleLaunchCooperativeKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, hipStream_t stream, void** kernelParams);
```
- Launches kernels on multiple devices where thread blocks can cooperate and synchronize as they execute.
```h
hipError_t hipModuleLaunchCooperativeKernelMultiDevice(hipFunctionLaunchParams* launchParamsList, unsigned int numDevices, unsigned int flags);
```
###### HIP Graph Management APIs
The new HIP Graph Management APIs are as follows:
- Creates a memory allocation node and adds it to a graph [BETA]
```h
hipError_t hipGraphAddMemAllocNode(hipGraphNode_t* pGraphNode, hipGraph_t graph, const hipGraphNode_t* pDependencies, size_t numDependencies, hipMemAllocNodeParams* pNodeParams);
```
- Return parameters for memory allocation node [BETA]
```h
hipError_t hipGraphMemAllocNodeGetParams(hipGraphNode_t node, hipMemAllocNodeParams* pNodeParams);
```
- Creates a memory free node and adds it to a graph [BETA]
```h
hipError_t hipGraphAddMemFreeNode(hipGraphNode_t* pGraphNode, hipGraph_t graph, const hipGraphNode_t* pDependencies, size_t numDependencies, void* dev_ptr);
```
- Returns parameters for memory free node [BETA].
```h
hipError_t hipGraphMemFreeNodeGetParams(hipGraphNode_t node, void* dev_ptr);
```
- Write a DOT file describing graph structure [BETA].
```h
hipError_t hipGraphDebugDotPrint(hipGraph_t graph, const char* path, unsigned int flags);
```
- Copies attributes from source node to destination node [BETA].
```h
hipError_t hipGraphKernelNodeCopyAttributes(hipGraphNode_t hSrc, hipGraphNode_t hDst);
```
- Enables or disables the specified node in the given graphExec [BETA]
```h
hipError_t hipGraphNodeSetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, unsigned int isEnabled);
```
- Query whether a node in the given graphExec is enabled [BETA]
```h
hipError_t hipGraphNodeGetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, unsigned int* isEnabled);
```
##### OpenMP Enhancements
This release consists of the following OpenMP enhancements:
- Additional support for OMPT functions `get_device_time` and `get_record_type`.
- Add support for min/max fast fp atomics on AMD GPUs.
- Fix the use of the abs function in C device regions.
### Deprecations and Warnings
#### HIP Perl Scripts Deprecation
#### HIP 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.
@@ -56,28 +146,159 @@ The `hipcc` and `hipconfig` Perl scripts are deprecated. In a future release, co
>
> 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.
### IFWI Fixes
##### Linux Filesystem Hierarchy Standard for ROCm
These defects were identified and documented as known issues in previous ROCm releases and are fixed in this release.
AMD Instinct™ MI200 Firmware IFWI Maintenance Update #3
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.
This IFWI release fixes the following issue in AMD Instinct™ MI210/MI250 Accelerators.
##### New Filesystem Hierarchy
After prolonged periods of operation, certain MI200 Instinct™ Accelerators may perform in a degraded way resulting in application failures.
The following is the new filesystem hierarchy:4
In this package, AMD delivers a new firmware version for MI200 GPU accelerators and a firmware installation tool AMD FW FLASH 1.2.
```text
/opt/rocm-<ver>
| --bin
| --All externally exposed Binaries
| --libexec
| --<component>
| -- Component specific private non-ISA executables (architecture independent)
| --include
| -- <component>
| --<header files>
| --lib
| --lib<soname>.so -> lib<soname>.so.major -> lib<soname>.so.major.minor.patch
(public libraries linked with application)
| --<component> (component specific private library, executable data)
| --<cmake>
| --components
| --<component>.config.cmake
| --share
| --html/<component>/*.html
| --info/<component>/*.[pdf, md, txt]
| --man
| --doc
| --<component>
| --<licenses>
| --<component>
| --<misc files> (arch independent non-executable)
| --samples
| GPU | Production Part Number | SKU | IFWI Name |
|-------|------------|--------|---------------|
| MI210 | 113-D673XX | D67302 | D6730200V.110 |
| MI210 | 113-D673XX | D67301 | D6730100V.073 |
| MI250 | 113-D652XX | D65209 | D6520900.073 |
| MI250 | 113-D652XX | D65210 | D6521000.073 |
```
Instructions on how to download and apply MI200 maintenance updates are available at:
> **Note**
>
> ROCm will not support backward compatibility with the v5.1(old) file system hierarchy in its next major release.
<https://www.amd.com/en/support/server-accelerators/amd-instinct/amd-instinct-mi-series/amd-instinct-mi210>
For more information, refer to <https://refspecs.linuxfoundation.org/fhs.shtml>.
#### AMD Instinct™ MI200 SRIOV Virtualization Support
##### Backward Compatibility with Older Filesystems
Maintenance update #3, combined with ROCm 5.4.1, now provides SRIOV virtualization support for all AMD Instinct™ MI200 devices.
ROCm has moved header files and libraries to its new location as indicated in the above structure and included symbolic-link and wrapper header files in its old location for backward compatibility.
> **Note**
>
> ROCm will continue supporting backward compatibility until the next major release.
##### Wrapper header files
Wrapper header files are placed in the old location (`/opt/rocm-xxx/<component>/include`) with a warning message to include files from the new location (`/opt/rocm-xxx/include`) as shown in the example below:
```h
// Code snippet from hip_runtime.h
#pragma message “This file is deprecated. Use file from include path /opt/rocm-ver/include/ and prefix with hip”.
#include "hip/hip_runtime.h"
```
The wrapper header files backward compatibility deprecation is as follows:
- `#pragma` message announcing deprecation -- ROCm v5.2 release
- `#pragma` message changed to `#warning` -- Future release
- `#warning` changed to `#error` -- Future release
- Backward compatibility wrappers removed -- Future release
##### Library files
Library files are available in the `/opt/rocm-xxx/lib` folder. For backward compatibility, the old library location (`/opt/rocm-xxx/<component>/lib`) has a soft link to the library at the new location.
Example:
```log
$ ls -l /opt/rocm/hip/lib/
total 4
drwxr-xr-x 4 root root 4096 May 12 10:45 cmake
lrwxrwxrwx 1 root root 24 May 10 23:32 libamdhip64.so -> ../../lib/libamdhip64.so
```
##### CMake Config files
All CMake configuration files are available in the `/opt/rocm-xxx/lib/cmake/<component>` folder.
For backward compatibility, the old CMake locations (`/opt/rocm-xxx/<component>/lib/cmake`) consist of a soft link to the new CMake config.
Example:
```log
$ ls -l /opt/rocm/hip/lib/cmake/hip/
total 0
lrwxrwxrwx 1 root root 42 May 10 23:32 hip-config.cmake -> ../../../../lib/cmake/hip/hip-config.cmake
```
#### ROCm Support For Code Object V3 Deprecated
Support for Code Object v3 is deprecated and will be removed in a future release.
#### Comgr V3.0 Changes
The following APIs and macros have been marked as deprecated. These are expected to be removed in a future ROCm release and coincides with the release of Comgr v3.0.
##### API Changes
- `amd_comgr_action_info_set_options()`
- `amd_comgr_action_info_get_options()`
##### Actions and Data Types
- `AMD_COMGR_ACTION_ADD_DEVICE_LIBRARIES`
- `AMD_COMGR_ACTION_COMPILE_SOURCE_TO_FATBIN`
For replacements, see the `AMD_COMGR_ACTION_INFO_GET`/`SET_OPTION_LIST APIs`, and the `AMD_COMGR_ACTION_COMPILE_SOURCE_(WITH_DEVICE_LIBS)_TO_BC` macros.
#### Deprecated Environment Variables
The following environment variables are removed in this ROCm release:
- `GPU_MAX_COMMAND_QUEUES`
- `GPU_MAX_WORKGROUP_SIZE_2D_X`
- `GPU_MAX_WORKGROUP_SIZE_2D_Y`
- `GPU_MAX_WORKGROUP_SIZE_3D_X`
- `GPU_MAX_WORKGROUP_SIZE_3D_Y`
- `GPU_MAX_WORKGROUP_SIZE_3D_Z`
- `GPU_BLIT_ENGINE_TYPE`
- `GPU_USE_SYNC_OBJECTS`
- `AMD_OCL_SC_LIB`
- `AMD_OCL_ENABLE_MESSAGE_BOX`
- `GPU_FORCE_64BIT_PTR`
- `GPU_FORCE_OCL20_32BIT`
- `GPU_RAW_TIMESTAMP`
- `GPU_SELECT_COMPUTE_RINGS_ID`
- `GPU_USE_SINGLE_SCRATCH`
- `GPU_ENABLE_LARGE_ALLOCATION`
- `HSA_LOCAL_MEMORY_ENABLE`
- `HSA_ENABLE_COARSE_GRAIN_SVM`
- `GPU_IFH_MODE`
- `OCL_SYSMEM_REQUIREMENT`
- `OCL_CODE_CACHE_ENABLE`
- `OCL_CODE_CACHE_RESET`
### Known Issues In This Release
The following are the known issues in this release.
#### `DISTRIBUTED`/`TEST_DISTRIBUTED_SPAWN` Fails
When user applications call `ncclCommAbort` to destruct communicators and then create new
communicators repeatedly, subsequent communicators may fail to initialize.
This issue is under investigation and will be resolved in a future release.
#### Failures In HIP Directed Tests
Multiple HIP directed tests fail.

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.4.1"
release = "5.4.1"
version = "5.5.0"
release = "5.5.0"
setting_all_article_info = True
all_article_info_os = ["linux"]
@@ -27,6 +27,12 @@ all_article_info_author = ""
# pages with specific settings
article_pages = [
{
"file":"release",
"os":["linux"],
"date":"2023-05-01"
},
{"file":"deploy/linux/index", "os":["linux"]},
{"file":"deploy/linux/install_overview", "os":["linux"]},
{"file":"deploy/linux/prerequisites", "os":["linux"]},
@@ -64,7 +70,7 @@ article_pages = [
external_toc_path = "./sphinx/_toc.yml"
docs_core = ROCmDocs("ROCm 5.4.1 Documentation Home")
docs_core = ROCmDocs("ROCm 5.5.0 Documentation Home")
docs_core.setup()
external_projects_current_project = "rocm"

View File

@@ -18,8 +18,8 @@ following commands based on your distribution.
```shell
sudo apt update
wget https://repo.radeon.com/amdgpu-install/5.4.1/ubuntu/focal/amdgpu-install_5.4.50401-1_all.deb
sudo apt install ./amdgpu-install_5.4.50401-1_all.deb
wget https://repo.radeon.com/amdgpu-install/5.5/ubuntu/focal/amdgpu-install_5.5.50500-1_all.deb
sudo apt install ./amdgpu-install_5.5.50500-1_all.deb
```
:::
@@ -28,8 +28,8 @@ sudo apt install ./amdgpu-install_5.4.50401-1_all.deb
```shell
sudo apt update
wget https://repo.radeon.com/amdgpu-install/5.4.1/ubuntu/jammy/amdgpu-install_5.4.50401-1_all.deb
sudo apt install ./amdgpu-install_5.4.50401-1_all.deb
wget https://repo.radeon.com/amdgpu-install/5.5/ubuntu/jammy/amdgpu-install_5.5.50500-1_all.deb
sudo apt install ./amdgpu-install_5.5.50500-1_all.deb
```
:::
@@ -44,7 +44,7 @@ sudo apt install ./amdgpu-install_5.4.50401-1_all.deb
:sync: RHEL-8
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/5.4.1/rhel/8.6/amdgpu-install-5.4.50401-1.el8.noarch.rpm
sudo yum install https://repo.radeon.com/amdgpu-install/5.5/rhel/8.6/amdgpu-install-5.5.50500-1.el8.noarch.rpm
```
:::
@@ -53,7 +53,7 @@ sudo yum install https://repo.radeon.com/amdgpu-install/5.4.1/rhel/8.6/amdgpu-in
:sync: RHEL-8
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/5.4.1/rhel/8.7/amdgpu-install-5.4.50401-1.el8.noarch.rpm
sudo yum install https://repo.radeon.com/amdgpu-install/5.5/rhel/8.7/amdgpu-install-5.5.50500-1.el8.noarch.rpm
```
:::
@@ -62,7 +62,7 @@ sudo yum install https://repo.radeon.com/amdgpu-install/5.4.1/rhel/8.7/amdgpu-in
:sync: RHEL-9
```shell
sudo yum install https://repo.radeon.com/amdgpu-install/5.4.1/rhel/9.1/amdgpu-install-5.4.50401-1.el9.noarch.rpm
sudo yum install https://repo.radeon.com/amdgpu-install/5.5/rhel/9.1/amdgpu-install-5.5.50500-1.el9.noarch.rpm
```
:::
@@ -76,7 +76,7 @@ sudo yum install https://repo.radeon.com/amdgpu-install/5.4.1/rhel/9.1/amdgpu-in
:sync: SLES15-SP4
```shell
sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/5.4.1/sle/15.4/amdgpu-install-5.4.50401-1.noarch.rpm
sudo zypper --no-gpg-checks install https://repo.radeon.com/amdgpu-install/5.5/sle/15.4/amdgpu-install-5.5.50500-1.noarch.rpm
```
:::
@@ -155,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.3.3 and 5.4.1
**Example:** If you want to install ROCm releases 5.3.3 and 5.5
simultaneously, you are required to download the installer from the latest ROCm
release v5.4.1.
release v5.5.
### Add Required Repositories
@@ -176,7 +176,7 @@ Run the following commands based on your distribution to add the repositories:
:sync: ubuntu-20.04
```shell
for ver in 5.3.3 5.4; do
for ver in 5.3.3 5.4.3; do
echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/rocm/apt/$ver focal main" | sudo tee /etc/apt/sources.list.d/rocm.list
done
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
@@ -188,7 +188,7 @@ sudo apt update
:sync: ubuntu-22.04
```shell
for ver in 5.3.3 5.4; do
for ver in 5.3.3 5.4.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
@@ -206,7 +206,7 @@ sudo apt update
:sync: RHEL-8
```shell
for ver in 5.3.3 5.4; do
for ver in 5.3.3 5.4.3; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
@@ -225,7 +225,7 @@ sudo yum clean all
:sync: RHEL-9
```shell
for ver in 5.3.3 5.4; do
for ver in 5.3.3 5.4.3; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
@@ -246,7 +246,7 @@ sudo yum clean all
:sync: SLES15
```shell
for ver in 5.3.3 5.4; do
for ver in 5.3.3 5.4.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
@@ -272,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.4.1, will be installed as its latest
driver, associated with the ROCm release v5.5, will be installed as its latest
release in the list.
```none
sudo amdgpu-install --usecase=rocm --rocmrelease=5.3.3
sudo amdgpu-install --usecase=rocm --rocmrelease=5.4.1
sudo amdgpu-install --usecase=rocm --rocmrelease=5.5
```
## Additional options

View File

@@ -53,7 +53,7 @@ To add the AMDGPU repository, follow these steps:
```shell
# amdgpu repository for focal
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4.1/ubuntu focal main' \
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.5/ubuntu focal main' \
| sudo tee /etc/apt/sources.list.d/amdgpu.list
sudo apt update
```
@@ -64,7 +64,7 @@ sudo apt update
```shell
# amdgpu repository for jammy
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4.1/ubuntu jammy main' \
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.5/ubuntu jammy main' \
| sudo tee /etc/apt/sources.list.d/amdgpu.list
sudo apt update
```
@@ -91,7 +91,7 @@ To add the ROCm repository, use the following steps:
```shell
# ROCm repositories for focal
for ver in 5.3.3 5.4.1; do
for ver in 5.3.3 5.4.3 5.5; 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
@@ -106,7 +106,7 @@ sudo apt update
```shell
# ROCm repositories for jammy
for ver in 5.3.3 5.4.1; do
for ver in 5.3.3 5.4.3 5.5; 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
@@ -136,7 +136,7 @@ For a comprehensive list of meta-packages, refer to
- Sample Multi-version installation
```shell
sudo apt install rocm-hip-sdk5.4.1 rocm-hip-sdk5.3.3
sudo apt install rocm-hip-sdk5.5 rocm-hip-sdk5.3.3
```
:::::
@@ -160,7 +160,7 @@ section.
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/8.6/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/8.6/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -179,7 +179,7 @@ sudo yum clean all
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/8.7/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/8.7/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -198,7 +198,7 @@ sudo yum clean all
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/9.1/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/9.1/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -228,7 +228,7 @@ To add the ROCm repository, use the following steps, based on your distribution:
:sync: RHEL-8
```shell
for ver in 5.3.3 5.4.1; do
for ver in 5.3.3 5.4.3 5.5; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
@@ -247,7 +247,7 @@ sudo yum clean all
:sync: RHEL-9
```shell
for ver in 5.3.3 5.4.1; do
for ver in 5.3.3 5.4.3 5.5; do
sudo tee --append /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
@@ -282,7 +282,7 @@ For a comprehensive list of meta-packages, refer to
- Sample Multi-version installation
```shell
sudo yum install rocm-hip-sdk5.4.1 rocm-hip-sdk5.3.3
sudo yum install rocm-hip-sdk5.5 rocm-hip-sdk5.3.3
```
:::::
@@ -301,7 +301,7 @@ section.
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/sle/15.4/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.5/sle/15.4/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -323,7 +323,7 @@ sudo reboot
To add the ROCm repository, use the following steps:
```shell
for ver in 5.3.3 5.4.1; do
for ver in 5.3.3 5.4.3 5.5; do
sudo tee --append /etc/zypp/repos.d/rocm.repo <<EOF
[ROCm-$ver]
name=ROCm$ver
@@ -355,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.4.1 rocm-hip-sdk5.3.3
sudo zypper --gpg-auto-import-keys install rocm-hip-sdk5.5 rocm-hip-sdk5.3.3
```
:::::
@@ -392,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.4.1/bin:/opt/rocm-5.4.1/opencl/bin
export PATH=$PATH:/opt/rocm-5.5/bin:/opt/rocm-5.5/opencl/bin
```
```{attention}

View File

@@ -26,7 +26,7 @@ repository to the new release.
```shell
# amdgpu repository for focal
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4.1/ubuntu focal main' \
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.5/ubuntu focal main' \
| sudo tee /etc/apt/sources.list.d/amdgpu.list
sudo apt update
```
@@ -37,7 +37,7 @@ sudo apt update
```shell
# amdgpu repository for jammy
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.4.1/ubuntu jammy main' \
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.5/ubuntu jammy main' \
| sudo tee /etc/apt/sources.list.d/amdgpu.list
sudo apt update
```
@@ -57,7 +57,7 @@ sudo apt update
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/8.6/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/8.6/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -75,7 +75,7 @@ sudo yum clean all
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/8.7/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/8.7/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -93,7 +93,7 @@ sudo yum clean all
sudo tee /etc/yum.repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/9.1/main/x86_64/
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/9.1/main/x86_64/
enabled=1
priority=50
gpgcheck=1
@@ -112,7 +112,7 @@ sudo yum clean all
sudo tee /etc/zypp/repos.d/amdgpu.repo <<EOF
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/sle/15.4/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.5/sle/15.4/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -172,7 +172,7 @@ repository to the new release.
:sync: ubuntu-20.04
```shell
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.4.1 focal main" \
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.5 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
@@ -184,7 +184,7 @@ sudo apt update
:sync: ubuntu-22.04
```shell
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.4.1 jammy main" \
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.5 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
@@ -203,9 +203,9 @@ sudo apt update
```shell
sudo tee /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-5.4.1]
name=ROCm5.4.1
baseurl=https://repo.radeon.com/rocm/rhel8/5.4.1/main
[ROCm-5.5]
name=ROCm5.5
baseurl=https://repo.radeon.com/rocm/rhel8/5.5/main
enabled=1
priority=50
gpgcheck=1
@@ -220,9 +220,9 @@ sudo yum clean all
```shell
sudo tee /etc/yum.repos.d/rocm.repo <<EOF
[ROCm-5.4.1]
name=ROCm5.4.1
baseurl=https://repo.radeon.com/rocm/rhel9/5.4.1/main
[ROCm-5.5]
name=ROCm5.5
baseurl=https://repo.radeon.com/rocm/rhel9/5.5/main
enabled=1
priority=50
gpgcheck=1
@@ -239,10 +239,10 @@ sudo yum clean all
```shell
sudo tee /etc/zypp/repos.d/rocm.repo <<EOF
[ROCm-5.4.1]
name=ROCm5.4.1
[ROCm-5.5]
name=ROCm5.5
name=rocm
baseurl=https://repo.radeon.com/rocm/zyp/5.4.1/main
baseurl=https://repo.radeon.com/rocm/zyp/5.5/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/5.4.1/ubuntu focal main
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.5/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/5.4.1 focal main
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.5 focal main
EOF
```
@@ -44,13 +44,15 @@ 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/5.4.1/ubuntu jammy main
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/5.5/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/5.4.1 jammy main
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/5.5 jammy main
EOF
# Prefer packages from the rocm repository over system packages
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
```
:::
@@ -80,7 +82,7 @@ sudo apt update
sudo tee /etc/yum.repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/8.6/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/8.6/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -89,7 +91,7 @@ EOF
sudo tee /etc/yum.repos.d/rocm.repo <<'EOF'
[rocm]
name=rocm
baseurl=https://repo.radeon.com/rocm/rhel8/5.4.1/main
baseurl=https://repo.radeon.com/rocm/rhel8/5.5/main
enabled=1
priority=50
gpgcheck=1
@@ -107,7 +109,7 @@ EOF
sudo tee /etc/yum.repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/8.7/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/8.7/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -116,7 +118,7 @@ EOF
sudo tee /etc/yum.repos.d/rocm.repo <<'EOF'
[rocm]
name=rocm
baseurl=https://repo.radeon.com/rocm/rhel8/5.4.1/main
baseurl=https://repo.radeon.com/rocm/rhel8/5.5/main
enabled=1
priority=50
gpgcheck=1
@@ -134,7 +136,7 @@ EOF
sudo tee /etc/yum.repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/rhel/9.1/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.5/rhel/9.1/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key
@@ -143,7 +145,7 @@ EOF
sudo tee /etc/yum.repos.d/rocm.repo <<'EOF'
[rocm]
name=rocm
baseurl=https://repo.radeon.com/rocm/rhel9/5.4.1/main
baseurl=https://repo.radeon.com/rocm/rhel9/5.5/main
enabled=1
priority=50
gpgcheck=1
@@ -179,7 +181,7 @@ sudo yum clean all
sudo tee /etc/zypp/repos.d/amdgpu.repo <<'EOF'
[amdgpu]
name=amdgpu
baseurl=https://repo.radeon.com/amdgpu/5.4.1/sle/15.4/main/x86_64
baseurl=https://repo.radeon.com/amdgpu/5.5/sle/15.4/main/x86_64
enabled=1
gpgcheck=1
gpgkey=https://repo.radeon.com/rocm/rocm.gpg.key

View File

@@ -18,6 +18,7 @@ TensorFlow
| 5.2.x | 1.10, 1.11, 1.12 | 2.8, 2.9, 2.9 | |
| 5.3.x | 1.10.1, 1.11, 1.12.1, 1.13 | 2.8, 2.9, 2.10 | |
| 5.4.x | 1.10.1, 1.11, 1.12.1, 1.13 | 2.8, 2.9, 2.10, 2.11 | 2.5.4 |
| 5.5.x | 1.10.1, 1.11, 1.12.1, 1.13 | 2.10, 2.11 | 2.5.4 |
## Communication libraries
@@ -45,6 +46,7 @@ contemporary CUDA / NVIDIA HPC SDK alternatives.
| 5.2.x | 1.15 | 22.2, 22.3 |
| 5.3.x | 1.16 | 22.7 |
| 5.4.x | 1.16 | 22.9 |
| 5.5.x | 1.17 | 22.9 |
For the latest documentation of these libraries, refer to the
[associated documentation](../reference/gpu_libraries/c%2B%2B_primitives.md).

View File

@@ -12,7 +12,7 @@ AMD ROCm™ Platform supports the following Linux distributions.
| RHEL 8.6 to 8.7 | x86-64 | 4.18 |
| SLES 15 SP4 | x86-64 | 5.14.21 |
| Ubuntu 20.04.5 LTS | x86-64 | 5.15 |
| Ubuntu 22.04.1 LTS | x86-64 | 5.15, 5.17 OEM |
| Ubuntu 22.04.2 LTS | x86-64 | 5.19 |
## 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.4.1/share/doc/amd_comgr/LICENSE.txt`
`/opt/rocm-5.4.3/share/doc/amd_comgr/LICENSE.txt`

View File

@@ -12,4 +12,7 @@ the compatibility combinations that are currently supported.
| 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.3.3 | 5.4.0, 5.5.0 |
| 5.4.0 | 5.2.3, 5.3.3 |
| 5.4.4 | 5.5.0 |
| 5.5.0 | 5.3.3, 5.4.3 |

View File

@@ -26,6 +26,29 @@ The following hipcc changes are implemented in this release:
- `hipCommander` at <https://github.com/ROCm-Developer-Tools/hip-tests/tree/develop/samples/1_Utils/hipCommander>
Note that the samples will continue to be available in previous release branches.
- Removal of gcnarch from hipDeviceProp_t structure
- Addition of new fields in hipDeviceProp_t structure
- maxTexture1D
- maxTexture2D
- maxTexture1DLayered
- maxTexture2DLayered
- sharedMemPerMultiprocessor
- deviceOverlap
- asyncEngineCount
- surfaceAlignment
- unifiedAddressing
- computePreemptionSupported
- hostRegisterSupported
- uuid
- Removal of deprecated code
- hip-hcc codes from hip code tree
- Correct hipArray usage in HIP APIs such as hipMemcpyAtoH and hipMemcpyHtoA
- HIPMEMCPY_3D fields correction to avoid truncation of "size_t" to "unsigned int" inside hipMemcpy3D()
- Renaming of 'memoryType' in hipPointerAttribute_t structure to 'type'
- Correct hipGetLastError to return the last error instead of last API call's return code
- Update hipExternalSemaphoreHandleDesc to add "unsigned int reserved[16]"
- Correct handling of flag values in hipIpcOpenMemHandle for hipIpcMemLazyEnablePeerAccess
- Remove hiparray* and make it opaque with hipArray_t
##### New HIP APIs in This Release