Compare commits

..

11 Commits

91 changed files with 2987 additions and 3252 deletions

View File

@@ -8,17 +8,17 @@ resources:
type: github
endpoint: ROCm
name: ROCm/aomp
ref: amd-staging
ref: aomp-dev
- repository: aomp-extras_repo
type: github
endpoint: ROCm
name: ROCm/aomp-extras
ref: amd-staging
ref: aomp-dev
- repository: flang_repo
type: github
endpoint: ROCm
name: ROCm/flang
ref: amd-staging
ref: aomp-dev
- repository: llvm-project_repo
type: github
endpoint: ROCm

View File

@@ -8,21 +8,20 @@ parameters:
- name: aptPackages
type: object
default:
- cmake
- git
- libdnnl-dev
- libdrm-dev
- libmsgpack-dev
- libnuma-dev
- libprotobuf-dev
- libsqlite3-dev
- libtbb-dev
- cmake
- ninja-build
- nlohmann-json3-dev
- protobuf-compiler
- libdrm-dev
- libnuma-dev
- python3-pip
- python3-pybind11
- python3-venv
- libtbb-dev
- nlohmann-json3-dev
- libmsgpack-dev
- libsqlite3-dev
- libprotobuf-dev
- protobuf-compiler
- python3-pybind11
- name: pipModules
type: object
default:
@@ -51,26 +50,6 @@ parameters:
- rocminfo
- rocMLIR
- rocprofiler-register
- roctracer
- name: rocmTestDependencies
type: object
default:
- aomp
- aomp-extras
- clr
- composable_kernel
- hipBLAS
- hipBLAS-common
- hipBLASLt
- llvm-project
- MIOpen
- rocm-cmake
- ROCR-Runtime
- rocBLAS
- rocminfo
- rocMLIR
- rocprofiler-register
- roctracer
jobs:
- job: AMDMIGraphX
@@ -116,81 +95,17 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
extraBuildFlags: >-
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
-DCMAKE_BUILD_TYPE=Release
-DGPU_TARGETS=$(JOB_GPU_TARGET)
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm
-DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include
-DMIGRAPHX_USE_COMPOSABLEKERNEL=OFF
-DBUILD_TESTING=ON
-GNinja
# REFERENCE: https://github.com/ROCm/composable_kernel/issues/782
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: AMDMIGraphX_testing
variables:
- group: common
- template: /.azuredevops/variables-global.yml
- name: MIGRAPHX_TRACE_BENCHMARKING
value: 1
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
# half version should be fixed to 5.6.0
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencySource: fixed
fixedComponentName: half
fixedPipelineIdentifier: ${{ variables.HALF560_PIPELINE_ID }}
skipLibraryLinking: true
skipLlvmSymlink: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
# CI case: download latest default branch build
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
# manual build case: triggered by ROCm/ROCm repo
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: CMake@1
displayName: MIGraphXTest CMake Flags
inputs:
cmakeArgs: >-
-DCMAKE_BUILD_TYPE=Release
-DGPU_TARGETS=$(JOB_GPU_TARGET)
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm
-DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include
-DBUILD_TESTING=ON
-DMIGRAPHX_ENABLE_C_API_TEST=ON
..
- task: Bash@3
displayName: Build and run MIGraphX tests
inputs:
targetType: inline
workingDirectory: build
script: make -j$(nproc) check

View File

@@ -8,23 +8,15 @@ parameters:
- name: aptPackages
type: object
default:
- cmake
- libbz2-dev
- libdrm-dev
- libeigen3-dev
- libgmock-dev
- libgtest-dev
- libsqlite3-dev
- libstdc++-12-dev
- ninja-build
- nlohmann-json3-dev
- python3-pip
- software-properties-common
- zstd
- name: pipModules
type: object
default:
- cget
- python3-pip
- cmake
- ninja-build
- libsqlite3-dev
- libbz2-dev
- nlohmann-json3-dev
- libgtest-dev
- libdrm-dev
- name: rocmDependencies
type: object
default:
@@ -43,24 +35,6 @@ parameters:
- clr
- rocminfo
- roctracer
- name: rocmTestDependencies
type: object
default:
- clr
- composable_kernel
- half
- hipBLAS
- hipBLAS-common
- hipBLASLt
- llvm-project
- rocBLAS
- rocm-cmake
- rocminfo
- rocMLIR
- ROCR-Runtime
- rocprofiler-register
- rocRAND
- roctracer
jobs:
- job: MIOpen
@@ -80,16 +54,18 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
# The default boost library from apt is 1.74, which does not satisfy MIOpen's build requirement (1.79+)
# Upgrade boost from apt by following https://launchpad.net/~mhier/+archive/ubuntu/libboost-latest
- task: Bash@3
displayName: 'Install Boost 1.83'
displayName: 'update boost version'
inputs:
targetType: inline
script: |
sudo add-apt-repository ppa:mhier/libboost-latest -y
sudo apt-get --yes install libboost1.83-dev libboost-system1.83-dev libboost-filesystem1.83-dev
script: sudo add-apt-repository ppa:mhier/libboost-latest -y
- task: Bash@3
displayName: 'install boost'
inputs:
targetType: inline
script: sudo apt-get --yes install libboost1.83-dev libboost-system1.83-dev libboost-filesystem1.83-dev
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
@@ -118,110 +94,3 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: MIOpen_testing
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- task: Bash@3
displayName: 'Install Boost 1.83'
inputs:
targetType: inline
script: |
sudo add-apt-repository ppa:mhier/libboost-latest -y
sudo apt-get --yes install libboost1.83-dev libboost-system1.83-dev libboost-filesystem1.83-dev
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
# MIOpen depends on a specific version of frugally-deep which is forked here: https://github.com/ROCm/frugally-deep
# https://github.com/ROCm/frugally-deep/blob/master/INSTALL.md
- task: Bash@3
displayName: Add Python site-packages binaries to path
inputs:
targetType: inline
script: |
USER_BASE=$(python3 -m site --user-base)
echo "##vso[task.prependpath]$USER_BASE/bin"
- task: Bash@3
displayName: Install FunctionalPlus
inputs:
targetType: inline
script: cget install Dobiasd/FunctionalPlus
- task: Bash@3
displayName: Remove Python site-packages binaries from path
inputs:
targetType: inline
script: |
USER_BASE=$(python3 -m site --user-base)
echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$USER_BASE/bin;;' -e 's;^/;;' -e 's;/$;;')"
- task: Bash@3
displayName: git clone frugally-deep
inputs:
targetType: inline
script: git clone https://github.com/ROCm/frugally-deep --depth=1 --shallow-submodules
workingDirectory: $(Build.SourcesDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
componentName: frugally-deep
cmakeBuildDir: $(Build.SourcesDirectory)/frugally-deep/build
installDir: $(Build.SourcesDirectory)/bin
extraBuildFlags: -DCMAKE_PREFIX_PATH=$(Build.SourcesDirectory)/cget/cget/pkg/Dobiasd__FunctionalPlus/install
- task: CMake@1
displayName: 'MIOpen Test CMake Flags'
inputs:
cmakeArgs: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Build.SourcesDirectory)/bin;$(Build.SourcesDirectory)/cget/cget/pkg/Dobiasd__FunctionalPlus/install
-DCMAKE_INSTALL_PREFIX=$(Agent.BuildDirectory)/rocm
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DMIOPEN_BACKEND=HIP
-DMIOPEN_TEST_FLAGS=" --disable-verification-cache"
-DCMAKE_BUILD_TYPE=release
-DBUILD_DEV=OFF
-DMIOPEN_USE_MLIR=ON
-DMIOPEN_GPU_SYNC=OFF
..
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: MIOpen
testExecutable: 'CTEST_PARALLEL_LEVEL=4 make -j$(nproc) check'
testParameters: ''
reloadAMDGPU: true
testPublishResults: false
- task: Bash@3
condition: always()
displayName: Clean up Boost 1.83
inputs:
targetType: inline
script: |
sudo apt -y autoremove libboost1.83-dev libboost-system1.83-dev libboost-filesystem1.83-dev
sudo add-apt-repository --remove ppa:mhier/libboost-latest -y
sudo apt update

View File

@@ -8,21 +8,15 @@ parameters:
- name: aptPackages
type: object
default:
- libelf-dev
- g++
- libdrm-dev
- libelf-dev
- libnuma-dev
- name: rocmDependencies
type: object
default:
- llvm-project
- rocprofiler-register
- name: rocmTestDependencies
type: object
default:
- llvm-project
- rocm_smi_lib
- rocprofiler-register
jobs:
- job: ROCR_Runtime
@@ -56,120 +50,3 @@ jobs:
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DBUILD_SHARED_LIBS=ON
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
- job: ROCR_Runtime_testing
dependsOn: ROCR_Runtime
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- task: Bash@3
displayName: Install libhwloc5
inputs:
targetType: 'inline'
script: |
wget http://ftp.us.debian.org/debian/pool/main/h/hwloc/libhwloc5_1.11.12-3_amd64.deb
wget http://ftp.us.debian.org/debian/pool/main/h/hwloc/libhwloc-dev_1.11.12-3_amd64.deb
sudo apt install -y --allow-downgrades ./libhwloc5_1.11.12-3_amd64.deb ./libhwloc-dev_1.11.12-3_amd64.deb
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- task: Bash@3
displayName: Build kfdtest
inputs:
targetType: 'inline'
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/kfdtest
script: |
mkdir build && cd build
cmake -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm ..
make
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: kfdtest
testExecutable: BIN_DIR=$(Build.SourcesDirectory)/libhsakmt/tests/kfdtest/build ./run_kfdtest.sh
testParameters: '-p core --gtest_output=xml:./test_output.xml --gtest_color=yes'
testDir: $(Build.SourcesDirectory)/libhsakmt/tests/kfdtest/scripts
- task: Bash@3
displayName: Build rdmatest app
inputs:
targetType: 'inline'
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/app
script: |
cmake -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DLIBHSAKMT_PATH=$(Agent.BuildDirectory)/rocm -DDRM_AMDGPU_INCLUDE_DIRS=$(Agent.BuildDirectory)/rocm/include .
cmake --build .
- task: Bash@3
displayName: Build rdmatest driver
inputs:
targetType: 'inline'
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/drv
script: |
sed -i 's/HSAKMT_PAGE_SHIFT/PAGE_SHIFT/g' amdp2ptest.c
sed -i 's/"MIT"/"GPL"/' amdp2ptest.c
RDMA_HEADER_DIR=/usr/src/amdgpu-*/include make all
- task: Bash@3
displayName: Install rdmatest driver
inputs:
targetType: 'inline'
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/drv
script: |
sudo rmmod amdp2ptest.ko
sudo insmod amdp2ptest.ko
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rdmatest
testExecutable: yes | ./rdma_test
testParameters: ''
testDir: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/app
testPublishResults: false
- task: Bash@3
displayName: Build rocrtst
inputs:
targetType: 'inline'
workingDirectory: $(Build.SourcesDirectory)/rocrtst/suites/test_common
script: |
sudo rm -rf $(Agent.BuildDirectory)/external/llvm-project
mkdir -p $(Agent.BuildDirectory)/external/llvm-project/clang/lib
sudo ln -s $(Agent.BuildDirectory)/rocm/llvm/lib/clang/20/include $(Agent.BuildDirectory)/external/llvm-project/clang/lib/Headers
mkdir build && cd build
cmake .. \
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm \
-DTARGET_DEVICES=$(JOB_GPU_TARGET) \
-DROCM_DIR=$(Agent.BuildDirectory)/rocm \
-DLLVM_DIR=$(Agent.BuildDirectory)/rocm/llvm/bin \
-DOPENCL_DIR=$(Agent.BuildDirectory)/rocm/llvm/bin
make
make rocrtst_kernels
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rocrtst
testExecutable: ./rocrtst64
testParameters: '--gtest_filter="-rocrtstNeg.Memory_Negative_Tests" --gtest_output=xml:./test_output.xml --gtest_color=yes'
testDir: $(Build.SourcesDirectory)/rocrtst/suites/test_common/build/$(JOB_GPU_TARGET)

View File

@@ -5,46 +5,24 @@ parameters:
- name: checkoutRef
type: string
default: ''
# reference: https://github.com/ROCm/ROCgdb/blob/amd-staging/README-ROCM.md
- name: aptPackages
type: object
default:
- bison
- dejagnu
- flex
- libbabeltrace-dev
- libexpat-dev
- libgmp-dev
- liblzma-dev
- libmpfr-dev
- ncurses-dev
- texinfo
- zlib1g-dev
- name: rocmDependencies
type: object
default:
- clr
- llvm-project
- ROCdbgapi
- rocminfo
- rocprofiler-register
- ROCR-Runtime
- bison
- flex
jobs:
- job: ROCgdb
- job: rocgdb
variables:
- group: common
- template: /.azuredevops/variables-global.yml
- name: PKG_CONFIG_PATH
value: $(Agent.BuildDirectory)/rocm/share/pkgconfig
pool: $(JOB_TEST_POOL)
pool:
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
@@ -53,63 +31,5 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
# CI case: download latest default branch build
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
# manual build case: triggered by ROCm/ROCm repo
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-autotools.yml
parameters:
configureFlags: >-
--program-prefix=roc
--enable-64-bit-bfd
--enable-targets="x86_64-linux-gnu,amdgcn-amd-amdhsa"
--disable-ld
--disable-gas
--disable-gdbserver
--disable-sim
--enable-tui
--disable-gdbtk
--disable-shared
--disable-gprofng
--with-expat
--with-system-zlib
--without-guile
--with-babeltrace
--with-lzma
--with-python=python3
--with-rocm-dbgapi=$(Agent.BuildDirectory)/rocm
LDFLAGS="-Wl,--enable-new-dtags,-rpath=$(Agent.BuildDirectory)/rocm/lib"
makeCallPrefix: LD_RUN_PATH='${ORIGIN}/../lib'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
- task: Bash@3
displayName: Setup test environment
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
echo "##vso[task.prependpath]/opt/rocm/bin"
- task: Bash@3
displayName: check-gdb
continueOnError: true
inputs:
targetType: inline
script: make check-gdb TESTS=gdb.rocm/simple.exp
workingDirectory: $(Build.SourcesDirectory)
- task: Bash@3
displayName: print gdb log
inputs:
targetType: inline
script: find -name gdb.log -exec cat {} \;
workingDirectory: $(Build.SourcesDirectory)

View File

@@ -43,7 +43,6 @@ parameters:
- rocprofiler-register
- ROCR-Runtime
- rocRAND
- roctracer
jobs:
- job: ROCmValidationSuite

View File

@@ -42,7 +42,6 @@ parameters:
- python3-setuptools
- python3-dev
- libudev-dev
- parallel
# Referencing comment snippet below but excluding rocprofiler and roctracer.
# This is to remove need for separate build per gpu target.
# With our selected build flags, compilation and installation work fine without these two.
@@ -56,18 +55,16 @@ parameters:
- name: rocmDependencies
type: object
default:
- amdsmi
- clr
- rocm-cmake
- llvm-project
- ROCR-Runtime
- clr
- rocminfo
- rocprofiler-register
- ROCdbgapi
- ROCgdb
- rocm-cmake
- rocm-core
- rocminfo
- rocm_smi_lib
- rocprofiler-register
- ROCR-Runtime
- roctracer
- amdsmi
jobs:
- job: aomp
@@ -410,79 +407,3 @@ jobs:
Contents: '/**/*'
RemoveDotFiles: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
- job: aomp_testing
dependsOn: aomp
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: Bash@3
displayName: ROCm symbolic link
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: aomp-extras_repo
# these copy steps are from the aomp prototype script for test prep
- task: CopyFiles@2
displayName: 'Copy AOMP contents'
inputs:
CleanTargetFolder: false
SourceFolder: $(Build.SourcesDirectory)/aomp
Contents: |
**
!**/.git/**
!**/.github/**
!**/.gitignore
TargetFolder: $(Agent.BuildDirectory)/rocm/share/openmp-extras/tests
retryCount: 3
- task: CopyFiles@2
displayName: 'Copy FileCheck'
inputs:
CleanTargetFolder: false
SourceFolder: $(Agent.BuildDirectory)/rocm/llvm/bin
Contents: FileCheck
TargetFolder: $(Agent.BuildDirectory)/rocm/share/openmp-extras/tests/bin
retryCount: 3
- task: Bash@3
displayName: Test AOMP
continueOnError: true
inputs:
targetType: inline
script: ./run_rocm_test.sh
workingDirectory: $(Build.SourcesDirectory)/aomp/bin
env:
AOMP: $(Agent.BuildDirectory)/rocm/llvm
AOMP_REPOS_TEST: $(Build.SourcesDirectory)/aomp-test
AOMP_TEST_DIR: $(Build.SourcesDirectory)/aomp-test
SKIP_TEST_PACKAGE: 1
MAINLINE_BUILD: 1
SUITE_LIST: smoke

View File

@@ -90,8 +90,6 @@ jobs:
-DCMAKE_C_COMPILER_LAUNCHER=ccache
-DCMAKE_HIP_FLAGS="-Wno-missing-include-dirs"
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DCK_BUILD_JIT_LIB=ON
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DCMAKE_BUILD_TYPE=Release
-DGPU_TARGETS=$(JOB_GPU_TARGET)
-GNinja

View File

@@ -28,14 +28,6 @@ parameters:
- clr
- rocminfo
- rocprofiler-register
- name: rocmTestDependencies
type: object
default:
- clr
- llvm-project
- rocminfo
- rocprofiler-register
- ROCR-Runtime
# HIP with AMD backend
jobs:
@@ -87,59 +79,3 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: hip_tests_testing
timeoutInMinutes: 240
dependsOn: hip_tests
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: Bash@3
displayName: Symlink rocm_agent_enumerator
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo mkdir -p /opt/rocm/bin
sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rocm_agent_enumerator /opt/rocm/bin/rocm_agent_enumerator
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: hip_tests
testDir: $(Agent.BuildDirectory)/rocm/share/hip
reloadAMDGPU: true
- task: Bash@3
displayName: Clean up symlink
inputs:
targetType: inline
script: sudo rm -rf /opt/rocm

View File

@@ -16,6 +16,7 @@ parameters:
- libgtest-dev
- wget
- python3-pip
- libomp-dev
- name: rocmDependencies
type: object
default:
@@ -45,7 +46,6 @@ parameters:
- rocBLAS
- rocSPARSE
- rocSOLVER
- roctracer
jobs:
- job: hipBLAS

View File

@@ -16,8 +16,8 @@ parameters:
- python3-pip
- python3-venv
- gfortran
- libomp-dev
- libblas-dev
- ccache
- name: pipModules
type: object
default:
@@ -33,7 +33,6 @@ parameters:
- rocm_smi_lib
- rocprofiler-register
- ROCR-Runtime
- roctracer
- name: rocmTestDependencies
type: object
default:
@@ -45,7 +44,6 @@ parameters:
- rocm_smi_lib
- rocprofiler-register
- ROCR-Runtime
- roctracer
jobs:
- job: hipBLASLt
@@ -65,9 +63,7 @@ jobs:
value: $(Agent.BuildDirectory)/rocm/bin/hipcc
- name: PATH
value: $(Agent.BuildDirectory)/rocm/llvm/bin:$(Agent.BuildDirectory)/rocm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
- name: DAY_STRING
value: $[format('{0:ddMMyyyy}', pipeline.startTime)]
pool: ${{ variables.ULTRA_BUILD_POOL }}
pool: ${{ variables.MEDIUM_BUILD_POOL }}
workspace:
clean: all
strategy:
@@ -114,27 +110,12 @@ jobs:
- script: sudo make install
displayName: Install hipBLASLt external dependencies
workingDirectory: $(Pipeline.Workspace)/deps
- script: |
mkdir -p $(CCACHE_DIR)
echo "##vso[task.prependpath]/usr/lib/ccache"
displayName: Update path for ccache
- task: Cache@2
displayName: Ccache caching
inputs:
key: hipBLASLt | $(Agent.OS) | $(JOB_GPU_TARGET) | $(DAY_STRING) | $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
path: $(CCACHE_DIR)
restoreKeys: |
hipBLASLt | $(Agent.OS) | $(JOB_GPU_TARGET) | $(DAY_STRING)
hipBLASLt | $(Agent.OS) | $(JOB_GPU_TARGET)
hipBLASLt | $(Agent.OS)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
-DCMAKE_C_COMPILER_LAUNCHER=ccache
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
-DTensile_LOGIC=
-DTensile_CPU_THREADS=

View File

@@ -14,11 +14,11 @@ parameters:
- libgtest-dev
- libfftw3-dev
- python3-pip
- libomp-14-dev
# rocm dependencies should match dependencies-rocm.yml
- name: rocmDependencies
type: object
default:
- aomp
- rocRAND
- hipRAND
- llvm-project

View File

@@ -42,7 +42,6 @@ parameters:
- ROCR-Runtime
- rocSOLVER
- rocSPARSE
- roctracer
jobs:
- job: hipSOLVER

View File

@@ -37,7 +37,6 @@ parameters:
- rocprofiler-register
- ROCR-Runtime
- rocSPARSE
- roctracer
jobs:
- job: hipSPARSE

View File

@@ -15,6 +15,7 @@ parameters:
- python3-pip
- gfortran
- libgfortran5
- libomp-dev
- libopenblas-dev
- name: pipModules
type: object

View File

@@ -117,4 +117,4 @@ jobs:
parameters:
componentName: hipTensor
testDir: '$(Agent.BuildDirectory)/rocm/bin/hiptensor'
testParameters: '-E ".*-extended" -VV --output-on-failure --force-new-ctest-process --output-junit test_output.xml'
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'

View File

@@ -11,137 +11,26 @@ parameters:
- gfortran
- git
- cmake
- python3-pip
- python3-dev
- ninja-build
- name: rocmDependencies
type: object
default:
- aomp
- llvm-project
- clr
- hipBLAS
- hipBLAS-common
- hipBLASLt
- hipFFT
- hipRAND
- hipSOLVER
- hipSPARSE
- rocBLAS
- rocFFT
- rocm-cmake
- rocminfo
- rocprofiler
- rocprofiler-register
- rocRAND
- ROCR-Runtime
- rocSOLVER
- rocSPARSE
- roctracer
jobs:
- job: hipfort
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: ${{ variables.MEDIUM_BUILD_POOL }}
pool:
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
gfx90a:
JOB_GPU_TARGET: gfx90a
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
# CI case: download latest default branch build
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
# manual build case: triggered by ROCm/ROCm repo
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
extraBuildFlags: >-
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/llvm
-DHIPFORT_INSTALL_DIR=$(Build.BinariesDirectory)
-DHIPFORT_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/flang
-DCMAKE_Fortran_FLAGS="-Mfree -fPIC"
-DCMAKE_Fortran_FLAGS_DEBUG=""
-DHIPFORT_COMPILER_FLAGS="-cpp"
-DHIPFORT_AR=$(Agent.BuildDirectory)/rocm/llvm/bin/llvm-ar
-DHIPFORT_RANLIB=$(Agent.BuildDirectory)/rocm/llvm/bin/llvm-ranlib
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
-DBUILD_TESTING=ON
-GNinja
-DHIPFORT_INSTALL_DIR=/tmp/hipfort
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: hipfort_testing
dependsOn: hipfort
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- task: Bash@3
displayName: 'ROCm symbolic link'
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
workingDirectory: $(Build.SourcesDirectory)
- task: Bash@3
displayName: 'Test hipfort'
inputs:
targetType: inline
script: PATH=$(Agent.BuildDirectory)/rocm/bin:$PATH make run_all
workingDirectory: $(Build.SourcesDirectory)/test

View File

@@ -104,14 +104,6 @@ jobs:
testExecutable: './bin/llvm-lit'
testParameters: '-q --xunit-xml-output=lld_test_output.xml ./tools/lld/test'
testOutputFile: lld_test_output.xml
- task: CopyFiles@2
displayName: Copy FileCheck for Publishing
inputs:
CleanTargetFolder: false
SourceFolder: llvm/build/bin
Contents: FileCheck
TargetFolder: $(Build.BinariesDirectory)/llvm/bin
retryCount: 3
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
componentName: device-libs

View File

@@ -1,167 +0,0 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- python3-pip
- name: pipModules
type: object
default:
- astunparse==1.6.2
- colorlover
- dash>=1.12.0
- matplotlib
- numpy>=1.17.5
- pandas>=1.4.3
- pymongo
- pyyaml
- tabulate
- tqdm
- dash-svg
- dash-bootstrap-components
- kaleido
- setuptools
- plotille
- mock
- pytest
- pytest-cov
- pytest-xdist
- name: rocmDependencies
type: object
default:
- clr
- llvm-project
- rocm-cmake
- rocm-core
- rocminfo
- ROCR-Runtime
- rocprofiler
- rocprofiler-register
- roctracer
jobs:
- job: omniperf
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
gfx90a:
JOB_GPU_TARGET: gfx90a
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
# CI case: download latest default branch build
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
# manual build case: triggered by ROCm/ROCm repo
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: omniperf_testing
dependsOn: omniperf
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
- name: PYTHON_VERSION
value: 3.10
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: Bash@3
displayName: Add ROCm binaries to PATH
inputs:
targetType: inline
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
- task: Bash@3
displayName: Add ROCm compilers to PATH
inputs:
targetType: inline
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
extraBuildFlags: >-
-DCMAKE_HIP_ARCHITECTURES=$(JOB_GPU_TARGET)
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DCMAKE_BUILD_TYPE=Release
-DENABLE_TESTS=ON
-DINSTALL_TESTS=ON
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: omniperf
testDir: $(Build.BinariesDirectory)/libexec/omniperf
testExecutable: export OMNIPERF_ARCH_OVERRIDE="MI300X"; ctest
- task: Bash@3
displayName: Remove ROCm binaries from PATH
inputs:
targetType: inline
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/bin;;' -e 's;^/;;' -e 's;/$;;')"
- task: Bash@3
displayName: Remove ROCm compilers from PATH
inputs:
targetType: inline
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/llvm/bin;;' -e 's;^/;;' -e 's;/$;;')"

View File

@@ -1,141 +0,0 @@
# largely referenced from: https://github.com/ROCm/omnitrace/blob/main/.github/workflows/ubuntu-jammy.yml
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: aptPackages
type: object
default:
- autoconf
- autotools-dev
- bison
- build-essential
- bzip2
- clang
- cmake
- environment-modules
- g++-12
- libdrm-dev
- libfabric-dev
- libiberty-dev
- libpapi-dev
- libpfm4-dev
- libtool
- libopenmpi-dev
- m4
- openmpi-bin
- software-properties-common
- python3-pip
- texinfo
- zlib1g-dev
- name: pipModules
type: object
default:
- numpy
- perfetto
- dataclasses
- name: rocmDependencies
type: object
default:
- clr
- llvm-project
- rccl
- rocm-core
- rocm_smi_lib
- rocminfo
- ROCR-Runtime
- rocprofiler
- rocprofiler-register
- roctracer
jobs:
- job: omnitrace
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: ${{ variables.MEDIUM_BUILD_POOL }}
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
gfx90a:
JOB_GPU_TARGET: gfx90a
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
# CI case: download latest default branch build
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
# manual build case: triggered by ROCm/ROCm repo
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: Bash@3
displayName: ROCm symbolic link
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
- task: Bash@3
displayName: Add ROCm binaries to PATH
inputs:
targetType: inline
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
- task: Bash@3
displayName: Add ROCm compilers to PATH
inputs:
targetType: inline
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
# build flags reference: https://rocm.docs.amd.com/projects/omnitrace/en/latest/install/install.html
extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DOMNITRACE_BUILD_TESTING=ON
-DOMNITRACE_BUILD_DYNINST=ON
-DOMNITRACE_BUILD_LIBUNWIND=ON
-DDYNINST_BUILD_TBB=ON
-DDYNINST_BUILD_ELFUTILS=ON
-DDYNINST_BUILD_LIBIBERTY=ON
-DDYNINST_BUILD_BOOST=ON
-DOMNITRACE_USE_PAPI=ON
-DOMNITRACE_USE_MPI=ON
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
multithreadFlag: -- -j32
- task: Bash@3
displayName: Set up omnitrace env
inputs:
targetType: inline
script: source share/omnitrace/setup-env.sh
workingDirectory: build
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: omnitrace
- task: Bash@3
displayName: Remove ROCm binaries from PATH
inputs:
targetType: inline
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/bin;;' -e 's;^/;;' -e 's;/$;;')"
- task: Bash@3
displayName: Remove ROCm compilers from PATH
inputs:
targetType: inline
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/llvm/bin;;' -e 's;^/;;' -e 's;/$;;')"
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)

View File

@@ -31,20 +31,6 @@ parameters:
- HIPIFY
- aomp
- aomp-extras
- name: rocmTestDependencies
type: object
default:
- aomp
- aomp-extras
- clr
- HIPIFY
- llvm-project
- rocm-cmake
- rocm-core
- rocm_smi_lib
- rocminfo
- rocprofiler-register
- ROCR-Runtime
jobs:
- job: rccl
@@ -98,47 +84,3 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: rccl_testing
timeoutInMinutes: 120
dependsOn: rccl
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rccl
testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './rccl-UnitTests'
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'

View File

@@ -18,35 +18,16 @@ parameters:
- autoconf
- libtool
- pkg-config
- libdrm-dev
- libyaml-cpp-dev
- name: rocmDependencies
type: object
default:
- amdsmi
- clr
- llvm-project
- rocBLAS
- rocm-cmake
- llvm-project
- ROCR-Runtime
- clr
- rocminfo
- rocm_smi_lib
- ROCmValidationSuite
- rocprofiler
- rocprofiler-register
- ROCR-Runtime
- name: rocmTestDependencies
type: object
default:
- amdsmi
- clr
- llvm-project
- rocm-cmake
- rocminfo
- rocm_smi_lib
- ROCmValidationSuite
- rocprofiler
- rocprofiler-register
- ROCR-Runtime
jobs:
- job: rdc
@@ -56,12 +37,6 @@ jobs:
pool: ${{ variables.MEDIUM_BUILD_POOL }}
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
gfx90a:
JOB_GPU_TARGET: gfx90a
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
@@ -73,7 +48,6 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
# CI case: download latest default branch build
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
@@ -97,71 +71,11 @@ jobs:
-DBUILD_SHARED_LIBS=ON
-DCMAKE_INSTALL_LIBDIR=lib
-DCMAKE_BUILD_TYPE=Release
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DGRPC_ROOT="$(Build.SourcesDirectory)/bin"
-DBUILD_RVS=ON
-DBUILD_PROFILER=ON
-DBUILD_TESTS=ON
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: rdc_testing
dependsOn: rdc
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: Bash@3
displayName: Setup test environment
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo rm -rf /usr/sbin/rdcd
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rdcd /usr/sbin/rdcd
echo $(Agent.BuildDirectory)/rocm/lib/rdc/grpc/lib | sudo tee /etc/ld.so.conf.d/grpc.conf
sudo ldconfig -v
- task: Bash@3
displayName: Test rdc
inputs:
targetType: inline
script: >-
$(Agent.BuildDirectory)/rocm/share/rdc/rdctst_tests/rdctst
--batch_mode
--start_rdcd
--unauth_comm

View File

@@ -43,7 +43,6 @@ parameters:
- ROCR-Runtime
- rocRAND
- rocSPARSE
- roctracer
jobs:
- job: rocALUTION

View File

@@ -52,7 +52,6 @@ parameters:
- rocprofiler-register
- rocm_smi_lib
- ROCR-Runtime
- roctracer
jobs:
- job: rocBLAS

View File

@@ -105,9 +105,7 @@ jobs:
displayName: ROCm symbolic link
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
script: sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
installEnabled: false

View File

@@ -73,13 +73,6 @@ jobs:
# manual build case: triggered by ROCm/ROCm repo
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: Bash@3
displayName: 'ROCm symbolic link'
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
extraBuildFlags: >-
@@ -92,83 +85,3 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
publish: false
- task: Bash@3
displayName: Create wheel file
inputs:
targetType: inline
script: |
export ROCM_PATH=$(Agent.BuildDirectory)/rocm
export HIP_INCLUDE_DIRS=$(Agent.BuildDirectory)/rocm/include/hip
python3 setup.py bdist_wheel
workingDirectory: $(Build.SourcesDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
parameters:
sourceDir: $(Build.SourcesDirectory)/dist
contentsString: '*.whl'
targetDir: $(Build.ArtifactStagingDirectory)
clean: false
- task: PublishPipelineArtifact@1
displayName: 'wheel file Publish'
retryCountOnTaskFailure: 3
inputs:
targetPath: $(Build.ArtifactStagingDirectory)
- job: rocPyDecode_testing
dependsOn: rocPyDecode
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- task: Bash@3
displayName: Setup test environment
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
cd $(Build.SourcesDirectory)
sudo pip install .
cmake -DAMDGPU_TARGETS=$(JOB_GPU_TARGET) .
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rocPyDecode
testDir: $(Build.SourcesDirectory)
# sudo required for pip install but screws up permissions for next pipeline run
- task: Bash@3
displayName: Clean up test environment
inputs:
targetType: inline
script: |
sudo rm -rf $(Build.SourcesDirectory)/*

View File

@@ -44,7 +44,6 @@ parameters:
- rocprofiler-register
- ROCR-Runtime
- rocSPARSE
- roctracer
jobs:
- job: rocSOLVER

View File

@@ -40,7 +40,6 @@ parameters:
- rocminfo
- rocprofiler-register
- ROCR-Runtime
- roctracer
jobs:
- job: rocSPARSE

View File

@@ -16,10 +16,10 @@ parameters:
- googletest
- libfftw3-dev
- git
- libomp-dev
- name: rocmDependencies
type: object
default:
- aomp
- rocm-cmake
- llvm-project
- ROCR-Runtime
@@ -42,7 +42,6 @@ parameters:
- rocminfo
- rocprofiler-register
- ROCR-Runtime
- roctracer
jobs:
- job: rocWMMA

View File

@@ -1,95 +0,0 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- python3-pip
- libdrm-dev
- libdw-dev
- libelf-dev
- name: pipModules
type: object
default:
- black
- clang-format
- clang-tidy
- cmake
- cmake-format
- dataclasses
- numpy
- otf2
- pandas
- perfetto
- pycobertura
- pytest
- pyyaml
- name: rocmDependencies
type: object
default:
- clr
- llvm-project
- rccl
- rocm-cmake
- rocm-core
- rocminfo
- ROCR-Runtime
- rocprofiler-register
- roctracer
jobs:
- job: rocprofilersdk
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
gfx90a:
JOB_GPU_TARGET: gfx90a
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
# CI case: download latest default branch build
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
# manual build case: triggered by ROCm/ROCm repo
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DROCPROFILER_BUILD_TESTS=ON
-DROCPROFILER_BUILD_SAMPLES=OFF
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
multithreadFlag: -- -j2
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)

View File

@@ -92,65 +92,6 @@ jobs:
-DENABLE_LDCONFIG=OFF
-DUSE_PROF_API=1
-DGPU_TARGETS=$(JOB_GPU_TARGET)
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
multithreadFlag: -- -j32
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: rocprofiler_testing
dependsOn: rocprofiler
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- task: Bash@3
displayName: Setup test environment
inputs:
targetType: inline
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rocprofilerV1
testExecutable: LD_LIBRARY_PATH="$(Agent.BuildDirectory)/rocm/lib/rocprofiler:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1/test" ./run.sh
testDir: $(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1
testParameters: ''
testPublishResults: false
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rocprofilerV2
testExecutable: LD_LIBRARY_PATH="$(Agent.BuildDirectory)/rocm/lib/rocprofiler:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests" share/rocprofiler/tests/runUnitTests
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
testDir: $(Agent.BuildDirectory)/rocm

View File

@@ -9,39 +9,18 @@ parameters:
type: object
default:
- cmake
- libopencv-dev
- libsndfile1-dev
- libstdc++-12-dev
- imagemagick
- libomp-dev # needed to pass flag step
- ninja-build
- clang
- name: pipModules
type: object
default:
- openpyxl
- pandas
- sphinx
- name: rocmDependencies
type: object
default:
- aomp
- aomp # needed to pass build step
- clr
- half
- llvm-project
- rocminfo
- ROCR-Runtime
- name: rocmTestDependencies
type: object
default:
- aomp
- clr
- half
- hipTensor
- llvm-project
- rocm-cmake
- rocminfo
- rocprofiler-register
- ROCR-Runtime
jobs:
- job: rpp
@@ -90,92 +69,3 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- job: rpp_testing
dependsOn: rpp
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
- name: LD_LIBRARY_PATH
value: $(Agent.BuildDirectory)/rocm/lib;$(Agent.BuildDirectory)/rocm/llvm/lib
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
gpuTarget: $(JOB_GPU_TARGET)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
${{ if eq(parameters.checkoutRef, '') }}:
dependencySource: staging
${{ elseif ne(parameters.checkoutRef, '') }}:
dependencySource: tag-builds
# Dependencies from: https://github.com/ROCm/rpp/blob/develop/utilities/test_suite/README.md
- task: Bash@3
displayName: Build and install Turbo JPEG
inputs:
targetType: 'inline'
script: |
sudo apt-get install nasm
sudo apt-get install wget
git clone -b 3.0.2 https://github.com/libjpeg-turbo/libjpeg-turbo.git
cd libjpeg-turbo
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=RELEASE \
-DENABLE_STATIC=FALSE \
-DCMAKE_INSTALL_DEFAULT_LIBDIR=lib \
-DWITH_JPEG8=TRUE \
..
make -j$nproc
sudo make install
- task: Bash@3
displayName: Build and install Nifti
inputs:
targetType: 'inline'
script: |
git clone https://github.com/NIFTI-Imaging/nifti_clib.git
cd nifti_clib
mkdir build
cd build
cmake ..
sudo make -j$nproc install
- task: Bash@3
displayName: Build rpp tests
inputs:
targetType: 'inline'
script: |
sudo rm -rf /opt/rocm
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
mkdir rpp-tests
cd rpp-tests
cmake /opt/rocm/share/rpp/test \
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ \
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rpp
testExecutable: 'export PATH=$(Agent.BuildDirectory)/rocm/llvm/bin:$PATH; CC=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang CMAKE_VERBOSE_MAKEFILE=ON VERBOSE=1 ctest'
testDir: 'rpp-tests'
- script: sudo rm /opt/rocm

View File

@@ -62,8 +62,6 @@ parameters:
- ffmpeg
- libopenblas-dev
- liblapack-dev
- libswscale-dev
- libavformat-dev
- name: pipModules
type: object
default:
@@ -89,9 +87,6 @@ parameters:
# list for vision
- auditwheel
- future
- pytest
- pytest-azurepipelines
- pillow
# list from https://github.com/pytorch/builder/blob/main/manywheel/build_rocm.sh
- name: rocmDependencies
type: object
@@ -122,24 +117,6 @@ parameters:
- hipCUB
- rocThrust
- hipBLAS-common
- name: rocmTestDependencies
type: object
default:
- rocminfo
# Reference on what tests to run for torchvision found in private repo:
# https://github.com/ROCm/rocAutomation/blob/jenkins-pipelines/pytorch/pytorch_ci/test_pytorch_test1.sh#L54
# Will iterate through this list using pytest
- name: torchTestList
type: object
default:
- nn
- torch
# - cuda seg faults and might need cuda installed on test system
# - ops takes too long
- unary_ufuncs
- binary_ufuncs
- autograd
# - inductor/torchinductor takes too long
trigger: none
pr: none
@@ -323,10 +300,7 @@ jobs:
inputs:
targetType: inline
script: >-
TORCH_PACKAGE_NAME=torch.$(ROCM_BRANCH).$(JOB_GPU_TARGET)
TORCHVISION_PACKAGE_NAME=torchvision.$(ROCM_BRANCH).$(JOB_GPU_TARGET)
PYTORCH_VERSION=$(cat $(Build.SourcesDirectory)/pytorch/version.txt | cut -da -f1)post$(date -u +%Y%m%d)
BUILD_VERSION=$(cat $(Build.SourcesDirectory)/vision/version.txt | cut -da -f1)post$(date -u +%Y%m%d)
BUILD_VERSION=$(ROCM_BRANCH).$(JOB_GPU_TARGET)-$(cat $(Build.SourcesDirectory)/pytorch/version.txt | cut -da -f1)$(date -u +%Y%m%d)
python3 setup.py bdist_wheel
workingDirectory: $(Build.SourcesDirectory)/vision
- task: Bash@3
@@ -345,192 +319,3 @@ jobs:
retryCountOnTaskFailure: 3
inputs:
targetPath: $(Build.BinariesDirectory)
- job: torchvision_testing
dependsOn: pytorch
condition: succeeded()
variables:
- group: common
- template: /.azuredevops/variables-global.yml
- name: PYTORCH_TEST_WITH_ROCM
value: 1
pool: $(JOB_TEST_POOL)
workspace:
clean: all
strategy:
matrix:
gfx942:
JOB_GPU_TARGET: gfx942
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
steps:
- task: Bash@3
displayName: 'Register libjpeg-turbo packages'
inputs:
targetType: inline
script: |
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
wget -q -O- https://packagecloud.io/dcommander/libjpeg-turbo/gpgkey | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/libjpeg-turbo.gpg > /dev/null
echo "deb [signed-by=/etc/apt/trusted.gpg.d/libjpeg-turbo.gpg] https://packagecloud.io/dcommander/libjpeg-turbo/any/ any main" | sudo tee /etc/apt/sources.list.d/libjpeg-turbo.list
sudo apt update
apt-cache show libjpeg-turbo-official | grep Version
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: DownloadPipelineArtifact@2
displayName: 'Download Pipeline Wheel Files'
inputs:
itemPattern: '**/*$(JOB_GPU_TARGET)*.whl'
targetPath: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
dependencySource: staging
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET)
dependencySource: staging
skipLlvmSymlink: true
# get sources to run test scripts
- task: Bash@3
displayName: git clone upstream pytorch
inputs:
targetType: inline
script: git clone https://github.com/pytorch/pytorch.git --depth=1 --recurse-submodules
workingDirectory: $(Build.SourcesDirectory)
- task: Bash@3
displayName: git clone pytorch vision
inputs:
targetType: inline
script: git clone https://github.com/pytorch/vision.git --depth=1 --recurse-submodules
workingDirectory: $(Build.SourcesDirectory)
- task: Bash@3
displayName: Install Wheel Files
inputs:
targetType: inline
script: find . -name "*.whl" -exec pip install --no-index --find-links=. --no-dependencies -v {} \;
workingDirectory: $(Agent.BuildDirectory)
- task: Bash@3
displayName: Show Updated pip List
inputs:
targetType: inline
script: pip list -v
workingDirectory: $(Agent.BuildDirectory)
- task: Bash@3
displayName: Add ROCm binaries to PATH
inputs:
targetType: inline
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
- task: Bash@3
displayName: Add Python site-packages binaries to path
inputs:
targetType: inline
script: |
USER_BASE=$(python3 -m site --user-base)
echo "##vso[task.prependpath]$USER_BASE/bin"
- task: Bash@3
displayName: Add torch libs to ldconfig
inputs:
targetType: inline
script: |
echo $(python3 -m site --user-site)/torch/lib | sudo tee /etc/ld.so.conf.d/torch.conf
sudo ldconfig -v
ldconfig -p
# https://pytorch.org/get-started/locally/#linux-verification
# https://rocm.docs.amd.com/projects/install-on-linux/en/latest/how-to/3rd-party/pytorch-install.html#testing-the-pytorch-installation
- task: Bash@3
displayName: Simple Import Torch Tests
inputs:
targetType: inline
script: |
python3 -c 'import torch' 2> /dev/null && echo 'Success' || echo 'Failure'
python3 -c 'import torch; print(torch.cuda.is_available())'
python3 -c 'import torch; x = torch.rand(5, 3); print(x)'
# Test artifact build script has too many if statements for different environments
# Based off the snippet of interest for this environment, with some adjustments
# https://github.com/pytorch/pytorch/blob/main/.ci/pytorch/build.sh#L335-L375
# Removing in-line comments since it does not fit with the yaml markup
- task: Bash@3
displayName: Build Pytorch Test Artifacts
continueOnError: true
inputs:
targetType: inline
script: |
CUSTOM_TEST_ARTIFACT_BUILD_DIR="build/custom_test_artifacts"
CUSTOM_TEST_USE_ROCM=ON
CUSTOM_TEST_MODULE_PATH="${PWD}/cmake/public"
mkdir -pv "${CUSTOM_TEST_ARTIFACT_BUILD_DIR}"
CUSTOM_OP_BUILD="${CUSTOM_TEST_ARTIFACT_BUILD_DIR}/custom-op-build"
CUSTOM_OP_TEST="${PWD}/test/custom_operator"
python --version
SITE_PACKAGES="$(python -c 'import site; print(";".join([x for x in site.getsitepackages()] + [x + "/torch" for x in site.getsitepackages()]))')"
mkdir -p "$CUSTOM_OP_BUILD"
pushd "$CUSTOM_OP_BUILD"
cmake "$CUSTOM_OP_TEST" -DCMAKE_PREFIX_PATH="$SITE_PACKAGES" -DPython_EXECUTABLE="$(which python)" \
-DCMAKE_MODULE_PATH="$CUSTOM_TEST_MODULE_PATH" -DUSE_ROCM="$CUSTOM_TEST_USE_ROCM"
make VERBOSE=1
popd
JIT_HOOK_BUILD="${CUSTOM_TEST_ARTIFACT_BUILD_DIR}/jit-hook-build"
JIT_HOOK_TEST="$PWD/test/jit_hooks"
python --version
SITE_PACKAGES="$(python -c 'import site; print(";".join([x for x in site.getsitepackages()] + [x + "/torch" for x in site.getsitepackages()]))')"
mkdir -p "$JIT_HOOK_BUILD"
pushd "$JIT_HOOK_BUILD"
cmake "$JIT_HOOK_TEST" -DCMAKE_PREFIX_PATH="$SITE_PACKAGES" -DPython_EXECUTABLE="$(which python)" \
-DCMAKE_MODULE_PATH="$CUSTOM_TEST_MODULE_PATH" -DUSE_ROCM="$CUSTOM_TEST_USE_ROCM"
make VERBOSE=1
popd
CUSTOM_BACKEND_BUILD="${CUSTOM_TEST_ARTIFACT_BUILD_DIR}/custom-backend-build"
CUSTOM_BACKEND_TEST="${PWD}/test/custom_backend"
python --version
mkdir -p "$CUSTOM_BACKEND_BUILD"
pushd "$CUSTOM_BACKEND_BUILD"
cmake "$CUSTOM_BACKEND_TEST" -DCMAKE_PREFIX_PATH="$SITE_PACKAGES" -DPython_EXECUTABLE="$(which python)" \
-DCMAKE_MODULE_PATH="$CUSTOM_TEST_MODULE_PATH" -DUSE_ROCM="$CUSTOM_TEST_USE_ROCM"
make VERBOSE=1
popd
workingDirectory: $(Build.SourcesDirectory)/pytorch
- ${{ each torchTest in parameters.torchTestList }}:
- task: Bash@3
displayName: Test ${{ torchTest }}
continueOnError: true
inputs:
targetType: inline
workingDirectory: $(Build.SourcesDirectory)/pytorch
${{ if contains(torchTest, '/') }}:
script: pytest test/${{ split(torchTest, '/')[0] }}/test_${{ split(torchTest, '/')[1] }}.py
${{ else }}:
script: pytest test/test_${{ torchTest }}.py
# Reference on what tests to run for torchvision found in private repo:
# https://github.com/ROCm/rocAutomation/blob/jenkins-pipelines/pytorch/pytorch_ci/test_torchvision.sh#L51
- task: Bash@3
displayName: Test vision/transforms
continueOnError: true
inputs:
targetType: inline
script: pytest test/test_transforms.py
workingDirectory: $(Build.SourcesDirectory)/vision
- task: Bash@3
displayName: Uninstall Wheel Files
inputs:
targetType: inline
script: find . -name "*.whl" -exec pip uninstall -y {} \;
workingDirectory: $(Agent.BuildDirectory)
- task: Bash@3
displayName: Remove Python site-packages binaries from path
inputs:
targetType: inline
script: |
USER_BASE=$(python3 -m site --user-base)
echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$USER_BASE/bin;;' -e 's;^/;;' -e 's;/$;;')"
- task: Bash@3
displayName: Remove ROCm binaries from PATH
inputs:
targetType: inline
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/bin;;' -e 's;^/;;' -e 's;/$;;')"

View File

@@ -1,5 +1,5 @@
parameters:
# currently excludes clr
# currently excludes clr and rocm-examples
- name: rocmDependencies
type: object
default:
@@ -10,7 +10,6 @@ parameters:
- composable_kernel
- half
- HIP
- hip-tests
- hipBLAS
- hipBLAS-common
- hipBLASLt
@@ -26,7 +25,6 @@ parameters:
- llvm-project
- MIOpen
- MIVisionX
- omniperf
- rccl
- rdc
- rocAL
@@ -38,7 +36,6 @@ parameters:
- ROCgdb
- rocm-cmake
- rocm-core
- rocm-examples
- rocminfo
- rocMLIR
- ROCmValidationSuite
@@ -46,9 +43,7 @@ parameters:
- rocm_smi_lib
- rocPRIM
- rocprofiler-register
- rocprofiler-sdk
- rocprofiler
- rocPyDecode
- ROCR-Runtime
- rocRAND
- rocr_debug_agent
@@ -102,7 +97,6 @@ jobs:
dependencyList: ${{ parameters.rocmDependencies }}
dependencySource: staging
skipLibraryLinking: true
skipLlvmSymlink: true
gpuTarget: $(JOB_GPU_TARGET)
- script: df -h
displayName: System disk space after ROCm

View File

@@ -1,46 +0,0 @@
import os
import requests
import hashlib
import sys
def download_dotfile(url, file_path):
response = requests.get(url)
if response.status_code == 200:
with open(file_path, 'wb') as f:
f.write(response.content)
else:
raise Exception(f"Failed to download file from {url}. Status code: {response.status_code}")
def hash_file(file_path):
sha256_hash = hashlib.sha256()
with open(file_path, 'rb') as f:
for byte_block in iter(lambda: f.read(4096), b""):
sha256_hash.update(byte_block)
return sha256_hash.hexdigest()
def compare_files(local_file, downloaded_file):
local_hash = hash_file(local_file)
downloaded_hash = hash_file(downloaded_file)
return local_hash == downloaded_hash
def main():
script_directory = os.path.dirname(os.path.abspath(__file__))
local_dotfile = os.path.join(script_directory, 'input.dot')
downloaded_dotfile = os.path.join(script_directory, 'dependency_graph.dot')
url = 'https://raw.githubusercontent.com/ROCm/ROCm/refs/heads/generatedependencygraph/.azuredevops/scripts/dependency_graph.dot'
try:
download_dotfile(url, downloaded_dotfile)
if compare_files(local_dotfile, downloaded_dotfile):
print("The local DOT file and the downloaded DOT file are the same.")
else:
print("The local DOT file and the downloaded DOT file are different.")
# Exit with a non-zero status to signal failed/unstable build on Jenkins
# to trigger post-build email
sys.exit(1)
except Exception as e:
print(f"Error: {e}")
if __name__ == "__main__":
main()

View File

@@ -1,149 +0,0 @@
import os
import yaml
from graphviz import Digraph
# Set DEBUG to False for normal output, True for debug output
DEBUG = False
def debug_print(message):
if DEBUG:
print(message)
import os
import yaml
def extract_dependencies(exclude_nodes=[]):
dependencies = {}
debug_print("Extracting dependencies from YAML files...")
# Define a mapping of specific filenames to component names
component_name_mapping = {
'HIP.yml': 'clr', # Remap HIP.yml to clr in graph
}
script_directory = os.path.dirname(os.path.abspath(__file__))
yaml_directory = os.path.join(script_directory, '..', 'components')
for filename in os.listdir(yaml_directory):
if filename.endswith(".yaml") or filename.endswith(".yml"):
debug_print(f"Processing file: {filename}")
try:
with open(os.path.join(yaml_directory, filename), 'r') as file:
data = yaml.safe_load(file) or {}
parameters = data.get('parameters', [])
# Check for both 'rocmDependencies' and 'rocmDependenciesAMD'
rocm_dependencies = next((param['default'] for param in parameters if param['name'] == 'rocmDependencies' or param['name'] == 'rocmDependenciesAMD'), [])
test_dependencies = next((param['default'] for param in parameters if param['name'] == 'rocmTestDependencies'), [])
unique_dependencies = list(set(rocm_dependencies + test_dependencies))
unique_dependencies = [dep for dep in unique_dependencies if dep not in exclude_nodes]
# Use the mapped component name if it exists
component_name = component_name_mapping.get(filename, os.path.splitext(filename)[0])
dependencies[component_name] = {
'dependencies': unique_dependencies
}
debug_print(f"Found unique dependencies for {component_name}: {unique_dependencies}")
except Exception as e:
print(f"Error processing {filename}: {e}")
return dependencies
def simplify_dependencies(graph):
simplified_graph = {}
for component, deps in graph.items():
if component not in simplified_graph:
simplified_graph[component] = set(deps) # Use a set for uniqueness
for dep in deps:
if dep in graph: # If the dependency has its own dependencies
for sub_dep in graph[dep]:
simplified_graph[component].discard(sub_dep) # Remove transitive dependencies
# Convert sets back to lists
for component in simplified_graph:
simplified_graph[component] = list(simplified_graph[component])
return simplified_graph
def build_dependency_graph(dependencies, exclude_nodes=None):
if exclude_nodes is None:
exclude_nodes = []
graph = {}
debug_print("Building dependency graph...")
for component, deps in dependencies.items():
if component in exclude_nodes:
continue # Skip excluded components
# Ensure uniqueness and prevent self-dependency
all_deps = [dep for dep in set(deps['dependencies']) if dep != component and dep not in exclude_nodes]
graph[component] = all_deps
debug_print(f"{component} -> {all_deps}")
# Simplify the dependencies to remove transitive dependencies
simplified_graph = simplify_dependencies(graph)
return simplified_graph
def build_full_dependency_tree(graph):
tree = {}
debug_print("Building full dependency tree...")
def dfs(component, visited):
if component in visited:
return
visited.add(component)
for dep in graph.get(component, []):
# Prevent self-dependency in the tree
if dep != component:
if dep not in tree:
tree[dep] = []
if component not in tree[dep]: # Prevent duplicates
tree[dep].append(component)
dfs(dep, visited)
for component in graph.keys():
dfs(component, set())
return tree
def visualize_graph(graph):
dot = Digraph()
# sort edges for consistent dot file hash
for component in sorted(graph):
for dep in sorted(graph[component]):
dot.edge(component, dep)
script_directory = os.path.dirname(os.path.abspath(__file__))
# make an input dot file for comparisons
dot_file_path = os.path.join(script_directory, 'input.dot')
with open(dot_file_path, 'w') as f:
f.write(dot.source)
dot.render(os.path.join(script_directory, 'dependency_graph'), format='png', cleanup=True) # Save as PNG
def main():
exclude_deps = ['rocm-examples']
dependencies = extract_dependencies(exclude_nodes=exclude_deps)
if not dependencies:
debug_print("No dependencies found.")
return
graph = build_dependency_graph(dependencies, exclude_nodes=exclude_deps)
full_tree = build_full_dependency_tree(graph)
print("Dependency tree:")
print(full_tree)
# Call this function after building the graph
visualize_graph(full_tree)
if __name__ == "__main__":
main()

View File

@@ -1,94 +0,0 @@
digraph {
AMDMIGraphX -> MIVisionX
HIPIFY -> rccl
MIOpen -> AMDMIGraphX
MIVisionX -> rocAL
"ROCR-Runtime" -> clr
"ROCR-Runtime" -> rocminfo
ROCdbgapi -> ROCgdb
ROCdbgapi -> rocprofiler
ROCdbgapi -> rocr_debug_agent
ROCgdb -> aomp
ROCmValidationSuite -> rdc
amdsmi -> aomp
amdsmi -> rdc
aomp -> hipBLASLt
aomp -> rccl
aomp -> rocFFT
aomp -> rpp
"aomp-extras" -> rccl
"aomp-extras" -> rocBLAS
clr -> ROCdbgapi
clr -> composable_kernel
clr -> half
clr -> "hip-tests"
clr -> "hipBLAS-common"
clr -> rocDecode
clr -> rocMLIR
clr -> rocPRIM
clr -> rocRAND
clr -> rocm_bandwidth_test
clr -> roctracer
composable_kernel -> MIOpen
composable_kernel -> hipTensor
half -> MIOpen
half -> rpp
hipBLAS -> MIOpen
hipBLAS -> hipfort
"hipBLAS-common" -> hipBLASLt
hipBLASLt -> rocBLAS
hipFFT -> hipfort
hipRAND -> ROCmValidationSuite
hipRAND -> rocFFT
hipRAND -> rocThrust
hipSOLVER -> hipfort
hipSPARSE -> hipSPARSELt
hipSPARSE -> rocSOLVER
hipTensor -> rpp
"llvm-project" -> "ROCR-Runtime"
"llvm-project" -> "aomp-extras"
rccl -> omnitrace
rccl -> "rocprofiler-sdk"
rocBLAS -> ROCmValidationSuite
rocBLAS -> rocSPARSE
rocBLAS -> rocWMMA
rocDecode -> MIVisionX
rocDecode -> rocPyDecode
rocFFT -> hipFFT
rocMLIR -> MIOpen
rocPRIM -> hipCUB
rocPRIM -> rocSPARSE
rocPRIM -> rocThrust
rocRAND -> MIOpen
rocRAND -> hipRAND
rocRAND -> rocALUTION
rocSOLVER -> hipBLAS
rocSOLVER -> hipSOLVER
rocSPARSE -> hipSPARSE
rocSPARSE -> rocALUTION
"rocm-cmake" -> "llvm-project"
"rocm-core" -> aomp
"rocm-core" -> rocDecode
"rocm-core" -> rocprofiler
rocm_smi_lib -> "ROCR-Runtime"
rocminfo -> ROCdbgapi
rocminfo -> composable_kernel
rocminfo -> half
rocminfo -> "hip-tests"
rocminfo -> "hipBLAS-common"
rocminfo -> rocDecode
rocminfo -> rocMLIR
rocminfo -> rocPRIM
rocminfo -> rocRAND
rocminfo -> rocm_bandwidth_test
rocminfo -> roctracer
rocprofiler -> hipfort
rocprofiler -> omniperf
rocprofiler -> omnitrace
rocprofiler -> rdc
"rocprofiler-register" -> "ROCR-Runtime"
roctracer -> aomp
roctracer -> rocprofiler
roctracer -> "rocprofiler-sdk"
rpp -> MIVisionX
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 475 KiB

View File

@@ -1,29 +0,0 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: checkoutRef
type: string
default: refs/tags/$(LATEST_RELEASE_TAG)
resources:
repositories:
- repository: pipelines_repo
type: github
endpoint: ROCm
name: ROCm/ROCm
- repository: release_repo
type: github
endpoint: ROCm
name: ROCm/omniperf
ref: ${{ parameters.checkoutRef }}
trigger: none
pr: none
jobs:
- template: ${{ variables.CI_COMPONENT_PATH }}/omniperf.yml
parameters:
checkoutRepo: release_repo
checkoutRef: ${{ parameters.checkoutRef }}

View File

@@ -1,29 +0,0 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: checkoutRef
type: string
default: refs/tags/$(LATEST_RELEASE_TAG)
resources:
repositories:
- repository: pipelines_repo
type: github
endpoint: ROCm
name: ROCm/ROCm
- repository: release_repo
type: github
endpoint: ROCm
name: ROCm/omnitrace
ref: ${{ parameters.checkoutRef }}
trigger: none
pr: none
jobs:
- template: ${{ variables.CI_COMPONENT_PATH }}/omnitrace.yml
parameters:
checkoutRepo: release_repo
checkoutRef: ${{ parameters.checkoutRef }}

View File

@@ -1,29 +0,0 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: checkoutRef
type: string
default: refs/tags/$(LATEST_RELEASE_TAG)
resources:
repositories:
- repository: pipelines_repo
type: github
endpoint: ROCm
name: ROCm/ROCm
- repository: release_repo
type: github
endpoint: ROCm
name: ROCm/rocprofiler-sdk
ref: ${{ parameters.checkoutRef }}
trigger: none
pr: none
jobs:
- template: ${{ variables.CI_COMPONENT_PATH }}/rocprofiler-sdk.yml
parameters:
checkoutRepo: release_repo
checkoutRef: ${{ parameters.checkoutRef }}

View File

@@ -29,7 +29,6 @@ parameters:
composable_kernel: develop
half: rocm
HIP: amd-staging
hip-tests: amd-staging
hipBLAS: develop
hipBLASLt: develop
hipBLAS-common: develop
@@ -45,7 +44,6 @@ parameters:
llvm-project: amd-staging
MIOpen: develop
MIVisionX: develop
omniperf: amd-staging
rccl: develop
rdc: develop
rocAL: develop
@@ -64,10 +62,8 @@ parameters:
rocm_bandwidth_test: master
rocm_smi_lib: develop
rocPRIM: develop
rocprofiler-register: amd-staging
rocprofiler-sdk: amd-staging
rocprofiler-register: amd-mainline
rocprofiler: amd-staging
rocPyDecode: develop
ROCR-Runtime: amd-staging
rocRAND: develop
rocr_debug_agent: amd-staging
@@ -80,17 +76,12 @@ parameters:
- name: allowPartiallySucceededBuilds
type: object
default:
- amdsmi
- aomp
- HIPIFY
- MIVisionX
- omniperf
- rccl
- rdc
- rocm-cmake
- amdsmi
- HIPIFY
- rocm_smi_lib
- rocFFT
- rpp
- MIVisionX
# BELOW REQUIRED IF useDefaultBranch false
- name: branchName
type: string

View File

@@ -11,9 +11,6 @@ parameters:
- name: installDir
type: string
default: '$(Build.BinariesDirectory)'
- name: makeCallPrefix
type: string
default: ''
steps:
- task: Bash@3
@@ -26,7 +23,7 @@ steps:
displayName: '${{ parameters.componentName }} make'
inputs:
targetType: inline
script: ${{ parameters.makeCallPrefix }} make -j$(nproc)
script: make -j$(nproc)
workingDirectory: ${{ parameters.buildDir }}
- task: Bash@3
displayName: '${{ parameters.componentName }} make install'

View File

@@ -8,13 +8,13 @@ parameters:
- name: repositoryUrl
type: object
default:
staging: https://repo.radeon.com/rocm/apt/6.2/pool/main/h/hsa-amd-aqlprofile
tag-builds: https://repo.radeon.com/rocm/apt/6.2/pool/main/h/hsa-amd-aqlprofile
staging: https://repo.radeon.com/rocm/misc/aqlprofile/ubuntu-22.04
tag-builds: https://repo.radeon.com/rocm/apt/6.1/pool/main/h/hsa-amd-aqlprofile
- name: packageName
type: object
default:
staging: hsa-amd-aqlprofile_1.0.0.60200.60200-66~22.04_amd64.deb
tag-builds: hsa-amd-aqlprofile_1.0.0.60200.60200-66~22.04_amd64.deb
staging: hsa-amd-aqlprofile_1.0.0.60200.60200-crdnnh.14213~22.04_amd64.deb
tag-builds: hsa-amd-aqlprofile_1.0.0.60100.60100-82~22.04_amd64.deb
steps:
- task: Bash@3

View File

@@ -34,4 +34,4 @@ steps:
displayName: 'pip install ...'
inputs:
targetType: inline
script: pip install -v ${{ join(' ', parameters.pipModules) }}
script: pip install ${{ join(' ', parameters.pipModules) }}

View File

@@ -37,7 +37,6 @@ parameters:
composable_kernel: $(COMPOSABLE_KERNEL_PIPELINE_ID)
half: $(HALF_PIPELINE_ID)
HIP: $(HIP_PIPELINE_ID)
hip-tests: $(HIP_TESTS_PIPELINE_ID)
hipBLAS: $(HIPBLAS_PIPELINE_ID)
hipBLAS-common: $(HIPBLAS_COMMON_PIPELINE_ID)
hipBLASLt: $(HIPBLASLT_PIPELINE_ID)
@@ -53,7 +52,6 @@ parameters:
llvm-project: $(LLVM_PROJECT_PIPELINE_ID)
MIOpen: $(MIOpen_PIPELINE_ID)
MIVisionX: $(MIVISIONX_PIPELINE_ID)
omniperf: $(OMNIPERF_PIPELINE_ID)
rccl: $(RCCL_PIPELINE_ID)
rdc: $(RDC_PIPELINE_ID)
rocAL: $(ROCAL_PIPELINE_ID)
@@ -73,9 +71,7 @@ parameters:
rocm_smi_lib: $(ROCM_SMI_LIB_PIPELINE_ID)
rocPRIM: $(ROCPRIM_PIPELINE_ID)
rocprofiler-register: $(ROCPROFILER_REGISTER_PIPELINE_ID)
rocprofiler-sdk: $(ROCPROFILER_SDK_PIPELINE_ID)
rocprofiler: $(ROCPROFILER_PIPELINE_ID)
rocPyDecode: $(ROCPYDECODE_PIPELINE_ID)
ROCR-Runtime: $(ROCR_RUNTIME_PIPELINE_ID)
rocRAND: $(ROCRAND_PIPELINE_ID)
rocr_debug_agent: $(ROCR_DEBUG_AGENT_PIPELINE_ID)
@@ -97,7 +93,6 @@ parameters:
composable_kernel: $(COMPOSABLE_KERNEL_TAGGED_PIPELINE_ID)
half: $(HALF_TAGGED_PIPELINE_ID)
HIP: $(HIP_TAGGED_PIPELINE_ID)
hip-tests: $(HIP_TESTS_TAGGED_PIPELINE_ID)
hipBLAS: $(HIPBLAS_TAGGED_PIPELINE_ID)
hipBLAS-common: $(HIPBLAS_COMMON_TAGGED_PIPELINE_ID)
hipBLASLt: $(HIPBLASLT_TAGGED_PIPELINE_ID)
@@ -113,7 +108,6 @@ parameters:
llvm-project: $(LLVM_PROJECT_TAGGED_PIPELINE_ID)
MIOpen: $(MIOpen_TAGGED_PIPELINE_ID)
MIVisionX: $(MIVISIONX_TAGGED_PIPELINE_ID)
omniperf: $(OMNIPERF_TAGGED_PIPELINE_ID)
rccl: $(RCCL_TAGGED_PIPELINE_ID)
rdc: $(RDC_TAGGED_PIPELINE_ID)
rocAL: $(ROCAL_TAGGED_PIPELINE_ID)
@@ -133,9 +127,7 @@ parameters:
rocm_smi_lib: $(ROCM_SMI_LIB_TAGGED_PIPELINE_ID)
rocPRIM: $(ROCPRIM_TAGGED_PIPELINE_ID)
rocprofiler-register: $(ROCPROFILER_REGISTER_TAGGED_PIPELINE_ID)
rocprofiler-sdk: $(ROCPROFILER_SDK_TAGGED_PIPELINE_ID)
rocprofiler: $(ROCPROFILER_TAGGED_PIPELINE_ID)
rocPyDecode: $(ROCPYDECODE_TAGGED_PIPELINE_ID)
ROCR-Runtime: $(ROCR_RUNTIME_TAGGED_PIPELINE_ID)
rocRAND: $(ROCRAND_TAGGED_PIPELINE_ID)
rocr_debug_agent: $(ROCR_DEBUG_AGENT_TAGGED_PIPELINE_ID)
@@ -180,9 +172,7 @@ parameters:
- rocFFT
- rocm-examples
- rocPRIM
- rocprofiler-sdk
- rocprofiler
- rocPyDecode
- rocRAND
- rocSOLVER
- rocSPARSE
@@ -196,7 +186,6 @@ parameters:
- hipSPARSE
- MIOpen
- MIVision
- omniperf
- rocAL
- ROCmValidationSuite

View File

@@ -79,10 +79,6 @@ variables:
value: 93
- name: HIP_TAGGED_PIPELINE_ID
value: 31
- name: HIP_TESTS_PIPELINE_ID
value: 233
- name: HIP_TESTS_TAGGED_PIPELINE_ID
value: 220
- name: HIPBLAS_COMMON_PIPELINE_ID
value: 223
- name: HIPBLAS_COMMON_TAGGED_PIPELINE_ID
@@ -163,10 +159,6 @@ variables:
value: 80
- name: MIVISIONX_TAGGED_PIPELINE_ID
value: 18
- name: OMNIPERF_PIPELINE_ID
value: 241
- name: OMNIPERF_TAGGED_PIPELINE_ID
value: 242
- name: RCCL_GFX942_TEST_PIPELINE_ID
value: 184
- name: RCCL_PIPELINE_ID
@@ -227,10 +219,6 @@ variables:
value: 22
- name: ROCM_EXAMPLES_GFX942_TEST_PIPELINE_ID
value: 204
- name: ROCM_EXAMPLES_PIPELINE_ID
value: 216
- name: ROCM_EXAMPLES_TAGGED_PIPELINE_ID
value: 245
- name: ROCM_SMI_LIB_PIPELINE_ID
value: 96
- name: ROCM_SMI_LIB_TAGGED_PIPELINE_ID
@@ -255,22 +243,14 @@ variables:
value: 20
- name: ROCPROFILER_GFX942_TEST_PIPELINE_ID
value: 190
- name: ROCPROFILER_PIPELINE_ID
value: 143
- name: ROCPROFILER_REGISTER_PIPELINE_ID
value: 1
- name: ROCPROFILER_REGISTER_TAGGED_PIPELINE_ID
value: 25
- name: ROCPROFILER_SDK_PIPELINE_ID
value: 246
- name: ROCPROFILER_SDK_TAGGED_PIPELINE_ID
value: 234
- name: ROCPROFILER_PIPELINE_ID
value: 143
- name: ROCPROFILER_TAGGED_PIPELINE_ID
value: 28
- name: ROCPYDECODE_PIPELINE_ID
value: 239
- name: ROCPYDECODE_TAGGED_PIPELINE_ID
value: 232
- name: ROCR_DEBUG_AGENT_PIPELINE_ID
value: 136
- name: ROCR_DEBUG_AGENT_TAGGED_PIPELINE_ID

View File

@@ -53,7 +53,6 @@ CSC
CSE
CSV
CSn
CTest
CTests
CU
CUDA
@@ -388,7 +387,6 @@ UAC
UC
UCC
UCX
UE
UIF
UMC
USM
@@ -457,7 +455,6 @@ blit
bootloader
boson
bosons
br
buildable
bursty
bzip
@@ -490,7 +487,6 @@ cuLIB
cuRAND
cuSOLVER
cuSPARSE
customizations
cTDP
dataset
datasets
@@ -586,7 +582,6 @@ invariants
invocating
ipo
kdb
kfd
latencies
libfabric
libjpeg
@@ -656,7 +651,6 @@ quasirandom
queueing
rccl
rdc
rdma
reStructuredText
redirections
refactorization
@@ -699,7 +693,6 @@ rocsolver
rocsparse
rocthrust
roctracer
rst
runtime
runtimes
sL

View File

@@ -50,7 +50,7 @@ The following example shows how to use the repo tool to download the ROCm source
```bash
mkdir -p ~/ROCm/
cd ~/ROCm/
~/bin/repo init -u http://github.com/ROCm/ROCm.git -b roc-6.2.x
~/bin/repo init -u http://github.com/ROCm/ROCm.git -b roc-6.0.x
~/bin/repo sync
```
@@ -76,7 +76,7 @@ The Build time will reduce significantly if we limit the GPU Architecture/s agai
mkdir -p ~/WORKSPACE/ # Or any folder name other than WORKSPACE
cd ~/WORKSPACE/
export ROCM_VERSION=6.2.2 # Or 6.2.0 or 6.2.1
export ROCM_VERSION=6.2.0
~/bin/repo init -u http://github.com/ROCm/ROCm.git -b roc-6.2.x -m tools/rocm-build/rocm-${ROCM_VERSION}.xml
~/bin/repo sync
@@ -199,4 +199,4 @@ cmake --build build --target=doc
## Older ROCm releases
For release information for older ROCm releases, refer to the
[ROCm release history](https://rocm.docs.amd.com/en/latest/release/versions.html).
[CHANGELOG](./CHANGELOG.md).

2069
RELEASE.md

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="rocm-org" fetch="https://github.com/ROCm/" />
<default revision="refs/tags/rocm-6.2.2"
<default revision="refs/tags/rocm-6.2.0"
remote="rocm-org"
sync-c="true"
sync-j="4" />

View File

@@ -91,7 +91,8 @@ additional licenses. Please review individual repositories for more information.
Open sourced ROCm components are released via public GitHub
repositories, packages on [https://repo.radeon.com](https://repo.radeon.com) and other distribution channels.
Proprietary products are only available on [https://repo.radeon.com](https://repo.radeon.com).
Proprietary products are only available on [https://repo.radeon.com](https://repo.radeon.com). Currently, only
one component of ROCm, `rocm-llvm-alt` is governed by a proprietary license.
Proprietary components are organized in a proprietary subdirectory in the package
repositories to distinguish from open sourced packages.

View File

@@ -1,117 +0,0 @@
ROCm Version,6.2.2,6.2.1,6.2.0, 6.1.2, 6.1.1, 6.1.0, 6.0.2, 6.0.0
:ref:`Operating systems & kernels <OS-kernel-versions>`,"Ubuntu 24.04.1, 24.04","Ubuntu 24.04.1, 24.04",Ubuntu 24.04,,,,,
,"Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3, 22.04.2","Ubuntu 22.04.4, 22.04.3, 22.04.2"
,,,,"Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5"
,"RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2","RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2","RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2","RHEL 9.3, 9.2","RHEL 9.3, 9.2"
,"RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8"
,"SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4"
,,,,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9
,Oracle Linux 8.9 [#oracle89-past-60]_,Oracle Linux 8.9 [#oracle89-past-60]_,Oracle Linux 8.9 [#oracle89-past-60]_,Oracle Linux 8.9 [#oracle89-past-60]_,Oracle Linux 8.9 [#oracle89-past-60]_,,,
,.. _architecture-support-compatibility-matrix-past-60:,,,,,,,
:doc:`Architecture <rocm-install-on-linux:reference/system-requirements>`,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3
,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2
,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA
,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3
,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2
,.. _gpu-support-compatibility-matrix-past-60:,,,,,,,
:doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>`,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100
,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030
,gfx942 [#mi300_622-past-60]_,gfx942 [#mi300_621-past-60]_,gfx942 [#mi300_620-past-60]_, gfx942 [#mi300_612-past-60]_, gfx942 [#mi300_611-past-60]_, gfx942 [#mi300_610-past-60]_, gfx942 [#mi300_602-past-60]_, gfx942 [#mi300_600-past-60]_
,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a
,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908
,,,,,,,,
FRAMEWORK SUPPORT,.. _framework-support-compatibility-matrix-past-60:,,,,,,,
:doc:`PyTorch <rocm-install-on-linux:install/3rd-party/pytorch-install>`,"2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13"
:doc:`TensorFlow <rocm-install-on-linux:install/3rd-party/tensorflow-install>`,"2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.14.0, 2.13.1, 2.12.1","2.14.0, 2.13.1, 2.12.1"
:doc:`JAX <rocm-install-on-linux:install/3rd-party/jax-install>`,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26
`ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.14.1,1.14.1
,,,,,,,,
THIRD PARTY COMMS,.. _thirdpartycomms-support-compatibility-matrix-past-60:,,,,,,,
`UCC <https://github.com/ROCm/ucc>`_,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.2.0,>=1.2.0
`UCX <https://github.com/ROCm/ucx>`_,>=1.15.0,>=1.15.0,>=1.15.0,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1
,,,,,,,,
THIRD PARTY ALGORITHM,.. _thirdpartyalgorithm-support-compatibility-matrix-past-60:,,,,,,,
Thrust,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1
CUB,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1
,,,,,,,,
KFD & USER SPACE [#kfd_support-past-60]_,.. _kfd-userspace-support-compatibility-matrix-past-60:,,,,,,,
Tested user space versions,"6.1.x, 6.0.x","6.1.x, 6.0.x","6.1.x, 6.0.x","6.2.x, 6.0.x, 5.7.x","6.2.x, 6.0.x, 5.7.x","6.2.x, 6.0.x, 5.7.x","6.2.x, 6.0.x, 5.7.x, 5.6.x","6.2.x, 6.0.x, 5.7.x, 5.6.x"
,,,,,,,,
ML & COMPUTER VISION,.. _mllibs-support-compatibility-matrix-past-60:,,,,,,,
:doc:`Composable Kernel <composable_kernel:index>`,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0
:doc:`MIGraphX <amdmigraphx:index>`,2.10.0,2.10.0,2.10.0,2.9.0,2.9.0,2.9.0,2.8.0,2.8.0
:doc:`MIOpen <miopen:index>`,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`MIVisionX <mivisionx:index>`,3.0.0,3.0.0,3.0.0,2.5.0,2.5.0,2.5.0,2.5.0,2.5.0
:doc:`rocAL <rocal:index>`,2.0.0,2.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
:doc:`rocDecode <rocdecode:index>`,0.6.0,0.6.0,0.6.0,0.6.0,0.5.0,0.5.0,N/A,N/A
:doc:`rocPyDecode <rocpydecode:index>`,0.1.0,0.1.0,0.1.0,N/A,N/A,N/A,N/A,N/A
:doc:`RPP <rpp:index>`,1.8.0,1.8.0,1.8.0,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0
,,,,,,,,
COMMUNICATION,.. _commlibs-support-compatibility-matrix-past-60:,,,,,,,
:doc:`RCCL <rccl:index>`,2.20.5,2.20.5,2.20.5,2.18.6,2.18.6,2.18.6,2.18.3,2.18.3
,,,,,,,,
MATH LIBS,.. _mathlibs-support-compatibility-matrix-past-60:,,,,,,,
`half <https://github.com/ROCm/half>`_ ,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0
:doc:`hipBLAS <hipblas:index>`,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.0.0,2.0.0
:doc:`hipBLASLt <hipblaslt:index>`,0.8.0,0.8.0,0.8.0,0.7.0,0.7.0,0.7.0,0.6.0,0.6.0
:doc:`hipFFT <hipfft:index>`,1.0.15,1.0.15,1.0.14,1.0.14,1.0.14,1.0.14,1.0.13,1.0.13
:doc:`hipFORT <hipfort:index>`,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0
:doc:`hipRAND <hiprand:index>`,2.11.0,2.11.0,2.11.0,2.10.16,2.10.16,2.10.16,2.10.16,2.10.16
:doc:`hipSOLVER <hipsolver:index>`,2.2.0,2.2.0,2.2.0,2.1.1,2.1.1,2.1.0,2.0.0,2.0.0
:doc:`hipSPARSE <hipsparse:index>`,3.1.1,3.1.1,3.1.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0
:doc:`hipSPARSELt <hipsparselt:index>`,0.2.1,0.2.1,0.2.1,0.2.0,0.1.0,0.1.0,0.1.0,0.1.0
:doc:`rocALUTION <rocalution:index>`,3.2.0,3.2.0,3.2.0,3.1.1,3.1.1,3.1.1,3.0.3,3.0.3
:doc:`rocBLAS <rocblas:index>`,4.2.1,4.2.1,4.2.0,4.1.2,4.1.0,4.1.0,4.0.0,4.0.0
:doc:`rocFFT <rocfft:index>`,1.0.29,1.0.29,1.0.28,1.0.27,1.0.27,1.0.26,1.0.25,1.0.23
:doc:`rocRAND <rocrand:index>`,3.1.0,3.1.0,3.1.0,3.0.1,3.0.1,3.0.1,3.0.0,2.10.17
:doc:`rocSOLVER <rocsolver:index>`,3.26.0,3.26.0,3.26.0,3.25.0,3.25.0,3.25.0,3.24.0,3.24.0
:doc:`rocSPARSE <rocsparse:index>`,3.2.0,3.2.0,3.2.0,3.1.2,3.1.2,3.1.2,3.0.2,3.0.2
:doc:`rocWMMA <rocwmma:index>`,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0,1.4.0,1.3.0,1.3.0
`Tensile <https://github.com/ROCm/Tensile>`_,4.40.0,4.40.0,4.40.0,4.40.0,4.40.0,4.40.0,4.39.0,4.39.0
,,,,,,,,
PRIMITIVES,.. _primitivelibs-support-compatibility-matrix-past-60:,,,,,,,
:doc:`hipCUB <hipcub:index>`,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`hipTensor <hiptensor:index>`,1.3.0,1.3.0,1.3.0,1.2.0,1.2.0,1.2.0,1.1.0,1.1.0
:doc:`rocPRIM <rocprim:index>`,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`rocThrust <rocthrust:index>`,3.1.0,3.1.0,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0
,,,,,,,,
SUPPORT LIBS,,,,,,,,
`hipother <https://github.com/ROCm/hipother>`_,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
`rocm-core <https://github.com/ROCm/rocm-core>`_,6.2.2,6.2.1,6.2.0,6.1.2,6.1.1,6.1.0,6.0.2,6.0.0
`ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_,20240607.4.05,20240607.4.05,20240607.1.4246,20240125.5.08,20240125.5.08,20240125.3.30,20231016.2.245,20231016.2.245
,,,,,,,,
SYSTEM MGMT TOOLS,.. _tools-support-compatibility-matrix-past-60:,,,,,,,
:doc:`AMD SMI <amdsmi:index>`,24.6.3,24.6.3,24.6.2,24.5.1,24.5.1,24.4.1,23.4.2,23.4.2
:doc:`ROCm Data Center Tool <rdc:index>`,1.0.0,1.0.0,1.0.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0
:doc:`rocminfo <rocminfo:index>`,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
:doc:`ROCm SMI <rocm_smi_lib:index>`,7.3.0,7.3.0,7.3.0,7.2.0,7.0.0,7.0.0,6.0.2,6.0.0
:doc:`ROCm Validation Suite <rocmvalidationsuite:index>`,rocm-6.2.2,rocm-6.2.1,rocm-6.2.0,rocm-6.1.2,rocm-6.1.1,rocm-6.1.0,rocm-6.0.2,rocm-6.0.0
,,,,,,,,
PERFORMANCE TOOLS,,,,,,,,
:doc:`Omniperf <omniperf:index>`,2.0.1,2.0.1,2.0.1,N/A,N/A,N/A,N/A,N/A
:doc:`Omnitrace <omnitrace:index>`,1.11.2,1.11.2,1.11.2,N/A,N/A,N/A,N/A,N/A
:doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>`,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0
:doc:`ROCProfiler <rocprofiler:index>`,2.0.60202,2.0.60201,2.0.60200,2.0.60102,2.0.60101,2.0.60100,2.0.60002,2.0.60000
:doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`,0.4.0,0.4.0,0.4.0,N/A,N/A,N/A,N/A,N/A
:doc:`ROCTracer <roctracer:index>`,4.1.60202,4.1.60201,4.1.60200,4.1.60102,4.1.60101,4.1.60100,4.1.60002,4.1.60000
,,,,,,,,
DEVELOPMENT TOOLS,,,,,,,,
:doc:`HIPIFY <hipify:index>`,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
:doc:`ROCm CMake <rocmcmakebuildtools:index>`,0.13.0,0.13.0,0.13.0,0.12.0,0.12.0,0.12.0,0.11.0,0.11.0
:doc:`ROCdbgapi <rocdbgapi:index>`,0.76.0,0.76.0,0.76.0,0.71.0,0.71.0,0.71.0,0.71.0,0.71.0
:doc:`ROCm Debugger (ROCgdb) <rocgdb:index>`,14.2.0,14.2.0,14.2.0,14.1.0,14.1.0,14.1.0,13.2.0,13.2.0
`rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_,0.4.0,0.4.0,0.4.0,0.3.0,0.3.0,0.3.0,N/A,N/A
:doc:`ROCr Debug Agent <rocr_debug_agent:index>`,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3
,,,,,,,,
COMPILERS,.. _compilers-support-compatibility-matrix-past-60:,,,,,,,
`clang-ocl <https://github.com/ROCm/clang-ocl>`_,N/A,N/A,N/A,0.5.0,0.5.0,0.5.0,0.5.0,0.5.0
:doc:`hipCC <hipcc:index>`,1.1.1,1.1.1,1.1.1,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
`Flang <https://github.com/ROCm/flang>`_,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
:doc:`llvm-project <llvm-project:index>`,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
`OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
,,,,,,,,
RUNTIMES,.. _runtime-support-compatibility-matrix-past-60:,,,,,,,
:doc:`AMD CLR <hip:understand/amd_clr>`,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
:doc:`HIP <hip:index>`,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
`OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0
:doc:`ROCR-Runtime <rocr-runtime:index>`,1.14.0,1.14.0,1.13.0,1.13.0,1.13.0,1.13.0,1.12.0,1.12.0
1 ROCm Version 6.2.2 6.2.1 6.2.0 6.1.2 6.1.1 6.1.0 6.0.2 6.0.0
2 :ref:`Operating systems & kernels <OS-kernel-versions>` Ubuntu 24.04.1, 24.04 Ubuntu 24.04.1, 24.04 Ubuntu 24.04
3 Ubuntu 22.04.5, 22.04.4 Ubuntu 22.04.5, 22.04.4 Ubuntu 22.04.5, 22.04.4 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3, 22.04.2 Ubuntu 22.04.4, 22.04.3, 22.04.2
4 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5
5 RHEL 9.4, 9.3 RHEL 9.4, 9.3 RHEL 9.4, 9.3 RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2 RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2 RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2 RHEL 9.3, 9.2 RHEL 9.3, 9.2
6 RHEL 8.10, 8.9 RHEL 8.10, 8.9 RHEL 8.10, 8.9 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8
7 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4
8 CentOS 7.9 CentOS 7.9 CentOS 7.9 CentOS 7.9 CentOS 7.9
9 Oracle Linux 8.9 [#oracle89-past-60]_ Oracle Linux 8.9 [#oracle89-past-60]_ Oracle Linux 8.9 [#oracle89-past-60]_ Oracle Linux 8.9 [#oracle89-past-60]_ Oracle Linux 8.9 [#oracle89-past-60]_
10 .. _architecture-support-compatibility-matrix-past-60:
11 :doc:`Architecture <rocm-install-on-linux:reference/system-requirements>` CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3
12 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2
13 CDNA CDNA CDNA CDNA CDNA CDNA CDNA CDNA
14 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3
15 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2
16 .. _gpu-support-compatibility-matrix-past-60:
17 :doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>` gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100
18 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030
19 gfx942 [#mi300_622-past-60]_ gfx942 [#mi300_621-past-60]_ gfx942 [#mi300_620-past-60]_ gfx942 [#mi300_612-past-60]_ gfx942 [#mi300_611-past-60]_ gfx942 [#mi300_610-past-60]_ gfx942 [#mi300_602-past-60]_ gfx942 [#mi300_600-past-60]_
20 gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a
21 gfx908 gfx908 gfx908 gfx908 gfx908 gfx908 gfx908 gfx908
22
23 FRAMEWORK SUPPORT .. _framework-support-compatibility-matrix-past-60:
24 :doc:`PyTorch <rocm-install-on-linux:install/3rd-party/pytorch-install>` 2.3, 2.2, 2.1, 2.0, 1.13 2.3, 2.2, 2.1, 2.0, 1.13 2.3, 2.2, 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13
25 :doc:`TensorFlow <rocm-install-on-linux:install/3rd-party/tensorflow-install>` 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.14.0, 2.13.1, 2.12.1 2.14.0, 2.13.1, 2.12.1
26 :doc:`JAX <rocm-install-on-linux:install/3rd-party/jax-install>` 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26
27 `ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_ 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.14.1 1.14.1
28
29 THIRD PARTY COMMS .. _thirdpartycomms-support-compatibility-matrix-past-60:
30 `UCC <https://github.com/ROCm/ucc>`_ >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.2.0 >=1.2.0
31 `UCX <https://github.com/ROCm/ucx>`_ >=1.15.0 >=1.15.0 >=1.15.0 >=1.14.1 >=1.14.1 >=1.14.1 >=1.14.1 >=1.14.1
32
33 THIRD PARTY ALGORITHM .. _thirdpartyalgorithm-support-compatibility-matrix-past-60:
34 Thrust 2.2.0 2.2.0 2.2.0 2.1.0 2.1.0 2.1.0 2.0.1 2.0.1
35 CUB 2.2.0 2.2.0 2.2.0 2.1.0 2.1.0 2.1.0 2.0.1 2.0.1
36
37 KFD & USER SPACE [#kfd_support-past-60]_ .. _kfd-userspace-support-compatibility-matrix-past-60:
38 Tested user space versions 6.1.x, 6.0.x 6.1.x, 6.0.x 6.1.x, 6.0.x 6.2.x, 6.0.x, 5.7.x 6.2.x, 6.0.x, 5.7.x 6.2.x, 6.0.x, 5.7.x 6.2.x, 6.0.x, 5.7.x, 5.6.x 6.2.x, 6.0.x, 5.7.x, 5.6.x
39
40 ML & COMPUTER VISION .. _mllibs-support-compatibility-matrix-past-60:
41 :doc:`Composable Kernel <composable_kernel:index>` 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0
42 :doc:`MIGraphX <amdmigraphx:index>` 2.10.0 2.10.0 2.10.0 2.9.0 2.9.0 2.9.0 2.8.0 2.8.0
43 :doc:`MIOpen <miopen:index>` 3.2.0 3.2.0 3.2.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
44 :doc:`MIVisionX <mivisionx:index>` 3.0.0 3.0.0 3.0.0 2.5.0 2.5.0 2.5.0 2.5.0 2.5.0
45 :doc:`rocAL <rocal:index>` 2.0.0 2.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
46 :doc:`rocDecode <rocdecode:index>` 0.6.0 0.6.0 0.6.0 0.6.0 0.5.0 0.5.0 N/A N/A
47 :doc:`rocPyDecode <rocpydecode:index>` 0.1.0 0.1.0 0.1.0 N/A N/A N/A N/A N/A
48 :doc:`RPP <rpp:index>` 1.8.0 1.8.0 1.8.0 1.5.0 1.5.0 1.5.0 1.4.0 1.4.0
49
50 COMMUNICATION .. _commlibs-support-compatibility-matrix-past-60:
51 :doc:`RCCL <rccl:index>` 2.20.5 2.20.5 2.20.5 2.18.6 2.18.6 2.18.6 2.18.3 2.18.3
52
53 MATH LIBS .. _mathlibs-support-compatibility-matrix-past-60:
54 `half <https://github.com/ROCm/half>`_ 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0
55 :doc:`hipBLAS <hipblas:index>` 2.2.0 2.2.0 2.2.0 2.1.0 2.1.0 2.1.0 2.0.0 2.0.0
56 :doc:`hipBLASLt <hipblaslt:index>` 0.8.0 0.8.0 0.8.0 0.7.0 0.7.0 0.7.0 0.6.0 0.6.0
57 :doc:`hipFFT <hipfft:index>` 1.0.15 1.0.15 1.0.14 1.0.14 1.0.14 1.0.14 1.0.13 1.0.13
58 :doc:`hipFORT <hipfort:index>` 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0
59 :doc:`hipRAND <hiprand:index>` 2.11.0 2.11.0 2.11.0 2.10.16 2.10.16 2.10.16 2.10.16 2.10.16
60 :doc:`hipSOLVER <hipsolver:index>` 2.2.0 2.2.0 2.2.0 2.1.1 2.1.1 2.1.0 2.0.0 2.0.0
61 :doc:`hipSPARSE <hipsparse:index>` 3.1.1 3.1.1 3.1.1 3.0.1 3.0.1 3.0.1 3.0.0 3.0.0
62 :doc:`hipSPARSELt <hipsparselt:index>` 0.2.1 0.2.1 0.2.1 0.2.0 0.1.0 0.1.0 0.1.0 0.1.0
63 :doc:`rocALUTION <rocalution:index>` 3.2.0 3.2.0 3.2.0 3.1.1 3.1.1 3.1.1 3.0.3 3.0.3
64 :doc:`rocBLAS <rocblas:index>` 4.2.1 4.2.1 4.2.0 4.1.2 4.1.0 4.1.0 4.0.0 4.0.0
65 :doc:`rocFFT <rocfft:index>` 1.0.29 1.0.29 1.0.28 1.0.27 1.0.27 1.0.26 1.0.25 1.0.23
66 :doc:`rocRAND <rocrand:index>` 3.1.0 3.1.0 3.1.0 3.0.1 3.0.1 3.0.1 3.0.0 2.10.17
67 :doc:`rocSOLVER <rocsolver:index>` 3.26.0 3.26.0 3.26.0 3.25.0 3.25.0 3.25.0 3.24.0 3.24.0
68 :doc:`rocSPARSE <rocsparse:index>` 3.2.0 3.2.0 3.2.0 3.1.2 3.1.2 3.1.2 3.0.2 3.0.2
69 :doc:`rocWMMA <rocwmma:index>` 1.5.0 1.5.0 1.5.0 1.4.0 1.4.0 1.4.0 1.3.0 1.3.0
70 `Tensile <https://github.com/ROCm/Tensile>`_ 4.40.0 4.40.0 4.40.0 4.40.0 4.40.0 4.40.0 4.39.0 4.39.0
71
72 PRIMITIVES .. _primitivelibs-support-compatibility-matrix-past-60:
73 :doc:`hipCUB <hipcub:index>` 3.2.0 3.2.0 3.2.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
74 :doc:`hipTensor <hiptensor:index>` 1.3.0 1.3.0 1.3.0 1.2.0 1.2.0 1.2.0 1.1.0 1.1.0
75 :doc:`rocPRIM <rocprim:index>` 3.2.0 3.2.0 3.2.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
76 :doc:`rocThrust <rocthrust:index>` 3.1.0 3.1.0 3.0.1 3.0.1 3.0.1 3.0.1 3.0.0 3.0.0
77
78 SUPPORT LIBS
79 `hipother <https://github.com/ROCm/hipother>`_ 6.2.41134 6.2.41134 6.2.41133 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
80 `rocm-core <https://github.com/ROCm/rocm-core>`_ 6.2.2 6.2.1 6.2.0 6.1.2 6.1.1 6.1.0 6.0.2 6.0.0
81 `ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_ 20240607.4.05 20240607.4.05 20240607.1.4246 20240125.5.08 20240125.5.08 20240125.3.30 20231016.2.245 20231016.2.245
82
83 SYSTEM MGMT TOOLS .. _tools-support-compatibility-matrix-past-60:
84 :doc:`AMD SMI <amdsmi:index>` 24.6.3 24.6.3 24.6.2 24.5.1 24.5.1 24.4.1 23.4.2 23.4.2
85 :doc:`ROCm Data Center Tool <rdc:index>` 1.0.0 1.0.0 1.0.0 0.3.0 0.3.0 0.3.0 0.3.0 0.3.0
86 :doc:`rocminfo <rocminfo:index>` 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
87 :doc:`ROCm SMI <rocm_smi_lib:index>` 7.3.0 7.3.0 7.3.0 7.2.0 7.0.0 7.0.0 6.0.2 6.0.0
88 :doc:`ROCm Validation Suite <rocmvalidationsuite:index>` rocm-6.2.2 rocm-6.2.1 rocm-6.2.0 rocm-6.1.2 rocm-6.1.1 rocm-6.1.0 rocm-6.0.2 rocm-6.0.0
89
90 PERFORMANCE TOOLS
91 :doc:`Omniperf <omniperf:index>` 2.0.1 2.0.1 2.0.1 N/A N/A N/A N/A N/A
92 :doc:`Omnitrace <omnitrace:index>` 1.11.2 1.11.2 1.11.2 N/A N/A N/A N/A N/A
93 :doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>` 1.4.0 1.4.0 1.4.0 1.4.0 1.4.0 1.4.0 1.4.0 1.4.0
94 :doc:`ROCProfiler <rocprofiler:index>` 2.0.60202 2.0.60201 2.0.60200 2.0.60102 2.0.60101 2.0.60100 2.0.60002 2.0.60000
95 :doc:`ROCprofiler-SDK <rocprofiler-sdk:index>` 0.4.0 0.4.0 0.4.0 N/A N/A N/A N/A N/A
96 :doc:`ROCTracer <roctracer:index>` 4.1.60202 4.1.60201 4.1.60200 4.1.60102 4.1.60101 4.1.60100 4.1.60002 4.1.60000
97
98 DEVELOPMENT TOOLS
99 :doc:`HIPIFY <hipify:index>` 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
100 :doc:`ROCm CMake <rocmcmakebuildtools:index>` 0.13.0 0.13.0 0.13.0 0.12.0 0.12.0 0.12.0 0.11.0 0.11.0
101 :doc:`ROCdbgapi <rocdbgapi:index>` 0.76.0 0.76.0 0.76.0 0.71.0 0.71.0 0.71.0 0.71.0 0.71.0
102 :doc:`ROCm Debugger (ROCgdb) <rocgdb:index>` 14.2.0 14.2.0 14.2.0 14.1.0 14.1.0 14.1.0 13.2.0 13.2.0
103 `rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_ 0.4.0 0.4.0 0.4.0 0.3.0 0.3.0 0.3.0 N/A N/A
104 :doc:`ROCr Debug Agent <rocr_debug_agent:index>` 2.0.3 2.0.3 2.0.3 2.0.3 2.0.3 2.0.3 2.0.3 2.0.3
105
106 COMPILERS .. _compilers-support-compatibility-matrix-past-60:
107 `clang-ocl <https://github.com/ROCm/clang-ocl>`_ N/A N/A N/A 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0
108 :doc:`hipCC <hipcc:index>` 1.1.1 1.1.1 1.1.1 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
109 `Flang <https://github.com/ROCm/flang>`_ 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
110 :doc:`llvm-project <llvm-project:index>` 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
111 `OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_ 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
112
113 RUNTIMES .. _runtime-support-compatibility-matrix-past-60:
114 :doc:`AMD CLR <hip:understand/amd_clr>` 6.2.41134 6.2.41134 6.2.41133 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
115 :doc:`HIP <hip:index>` 6.2.41134 6.2.41134 6.2.41133 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
116 `OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_ 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0
117 :doc:`ROCR-Runtime <rocr-runtime:index>` 1.14.0 1.14.0 1.13.0 1.13.0 1.13.0 1.13.0 1.12.0 1.12.0

View File

@@ -1,195 +1,144 @@
.. meta::
:description: ROCm compatibility matrix
:keywords: GPU, architecture, hardware, compatibility, system, requirements, components, libraries
:keywords: AMD, GPU, architecture, hardware, compatibility, requirements
**************************************************************************************
Compatibility matrix
**************************************************************************************
Use this matrix to view the ROCm compatibility and system requirements across successive major and minor releases.
Use this matrix to view the ROCm compatibility across successive major and minor releases.
You can also refer to the :ref:`past versions of ROCm compatibility matrix<past-rocm-compatibility-matrix>`.
.. note::
Like AMD Instinct accelerators, AMD Radeon and Radeon Pro GPUs can be used in environments for compute purposes (no display information or graphics). If using AMD Radeon or Radeon Pro GPUs with ROCm for graphics-related purposes (for example, display connected), review the `Compatibility matrices <https://rocm.docs.amd.com/projects/radeon/en/latest/docs/compatibility.html>`_ in the Use ROCm on Radeon GPU documentation to confirm system requirements.
.. |br| raw:: html
<br/>
.. container:: format-big-table
.. csv-table::
:header: "ROCm Version", "6.2.2", "6.2.1", "6.1.0"
:header: "ROCm Version", "6.2.0", "6.1.2", "6.0.0"
:stub-columns: 1
:ref:`Operating systems & kernels <OS-kernel-versions>`,"Ubuntu 24.04.1, 24.04","Ubuntu 24.04.1, 24.04",Ubuntu 24.04
,"Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.4, 22.04.3"
,,,"Ubuntu 20.04.6, 20.04.5"
,"RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4 [#red-hat94]_, 9.3, 9.2"
,"RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.9, 8.8"
,"SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP5, SP4"
,,,CentOS 7.9
,Oracle Linux 8.9 [#oracle89]_,Oracle Linux 8.9 [#oracle89]_,
,.. _architecture-support-compatibility-matrix:,,
:doc:`Operating Systems <rocm-install-on-linux:reference/system-requirements>`, "Ubuntu 24.04","",""
,"Ubuntu 22.04.5 [#Ubuntu220405]_, 22.04.4","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3"
,,"Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5"
,"RHEL 9.4, 9.3","RHEL 9.4 [#red-hat94]_, 9.3, 9.2","RHEL 9.3, 9.2"
,"RHEL 8.10, 8.9","RHEL 8.9, 8.8","RHEL 8.9, 8.8"
,"SLES 15 SP6, SP5","SLES 15 SP5, SP4","SLES 15 SP5, SP4"
,,CentOS 7.9,CentOS 7.9
,"Oracle Linux 8.9 [#oracle89]_","Oracle Linux 8.9 [#oracle89]_",""
,".. _architecture-support-compatibility-matrix:",,
:doc:`Architecture <rocm-install-on-linux:reference/system-requirements>`,CDNA3,CDNA3,CDNA3
,CDNA2,CDNA2,CDNA2
,CDNA,CDNA,CDNA
,RDNA3,RDNA3,RDNA3
,RDNA2,RDNA2,RDNA2
,.. _gpu-support-compatibility-matrix:,,
,".. _gpu-support-compatibility-matrix:",,
:doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>`,gfx1100,gfx1100,gfx1100
,gfx1030,gfx1030,gfx1030
,gfx942 [#mi300_622]_,gfx942 [#mi300_621]_, gfx942 [#mi300_610]_
,gfx942 [#mi300_620]_, gfx942 [#mi300_612]_, gfx942 [#mi300_600]_
,gfx90a,gfx90a,gfx90a
,gfx908,gfx908,gfx908
,,,
FRAMEWORK SUPPORT,.. _framework-support-compatibility-matrix:,,
:doc:`PyTorch <rocm-install-on-linux:install/3rd-party/pytorch-install>`,"2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.1, 2.0, 1.13"
:doc:`TensorFlow <rocm-install-on-linux:install/3rd-party/tensorflow-install>`,"2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.15, 2.14, 2.13"
FRAMEWORK SUPPORT,".. _framework-support-compatibility-matrix:",,
:doc:`PyTorch <rocm-install-on-linux:install/3rd-party/pytorch-install>`,"2.3, 2.2, 2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13"
:doc:`TensorFlow <rocm-install-on-linux:install/3rd-party/tensorflow-install>`,"2.16.1, 2.15.1, 2.14.1","2.15.0, 2.14.0, 2.13.1","2.14.0, 2.13.1, 2.12.1"
:doc:`JAX <rocm-install-on-linux:install/3rd-party/jax-install>`,0.4.26,0.4.26,0.4.26
`ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_,1.17.3,1.17.3,1.17.3
`ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_,1.17.3,1.17.3,1.14.1
,,,
THIRD PARTY COMMS,.. _thirdpartycomms-support-compatibility-matrix:,,
`UCC <https://github.com/ROCm/ucc>`_,>=1.3.0,>=1.3.0,>=1.3.0
`UCX <https://github.com/ROCm/ucx>`_,>=1.15.0,>=1.15.0,>=1.14.1
THIRD PARTY COMMS,".. _thirdpartycomms-support-compatibility-matrix:",,
`UCC <https://github.com/ROCm/ucc>`_,>=1.3.0,>=1.3.0,>=1.2.0
`UCX <https://github.com/ROCm/ucx>`_,>=1.15.0,>=1.14.1,>=1.14.1
,,,
THIRD PARTY ALGORITHM,.. _thirdpartyalgorithm-support-compatibility-matrix:,,
Thrust,2.2.0,2.2.0,2.1.0
CUB,2.2.0,2.2.0,2.1.0
THIRD PARTY ALGORITHM,".. _thirdpartyalgorithm-support-compatibility-matrix:",,
Thrust,2.2.0,2.1.0,2.0.1
CUB,2.2.0,2.1.0,2.0.1
,,,
KFD & USER SPACE [#kfd_support]_,.. _kfd-userspace-support-compatibility-matrix:,,
Tested user space versions,"6.1.x, 6.0.x","6.1.x, 6.0.x","6.2.x, 6.0.x, 5.7.x"
,,,
ML & COMPUTER VISION,.. _mllibs-support-compatibility-matrix:,,
ML & COMPUTER VISION,".. _mllibs-support-compatibility-matrix:",,
:doc:`Composable Kernel <composable_kernel:index>`,1.1.0,1.1.0,1.1.0
:doc:`MIGraphX <amdmigraphx:index>`,2.10.0,2.10.0,2.9.0
:doc:`MIOpen <miopen:index>`,3.2.0,3.2.0,3.1.0
:doc:`MIVisionX <mivisionx:index>`,3.0.0,3.0.0,2.5.0
:doc:`rocAL <rocal:index>`,2.0.0,2.0.0,1.0.0
:doc:`rocDecode <rocdecode:index>`,0.6.0,0.6.0,0.5.0
:doc:`rocPyDecode <rocpydecode:index>`,0.1.0,0.1.0,N/A
:doc:`RPP <rpp:index>`,1.8.0,1.8.0,1.5.0
:doc:`MIGraphX <amdmigraphx:index>`,2.10.0,2.9.0,2.8.0
:doc:`MIOpen <miopen:index>`,3.2.0,3.1.0,3.0.0
:doc:`MIVisionX <mivisionx:index>`,3.0.0,2.5.0,2.5.0
:doc:`RPP <rpp:index>`,1.8.0,1.5.0,1.4.0
:doc:`rocAL <rocal:index>`,1.0.0,1.0.0,1.0.0
:doc:`rocDecode <rocdecode:index>`,0.6.0,0.6.0,N/A
:doc:`rocPyDecode <rocpydecode:index>`,0.1.0,N/A,N/A
,,,
COMMUNICATION,.. _commlibs-support-compatibility-matrix:,,
:doc:`RCCL <rccl:index>`,2.20.5,2.20.5,2.18.6
COMMUNICATION,".. _commlibs-support-compatibility-matrix:",,
:doc:`RCCL <rccl:index>`,2.20.5,2.18.6,2.18.3
,,,
MATH LIBS,.. _mathlibs-support-compatibility-matrix:,,
MATH LIBS,".. _mathlibs-support-compatibility-matrix:",,
`half <https://github.com/ROCm/half>`_ ,1.12.0,1.12.0,1.12.0
:doc:`hipBLAS <hipblas:index>`,2.2.0,2.2.0,2.1.0
:doc:`hipBLASLt <hipblaslt:index>`,0.8.0,0.8.0,0.7.0
:doc:`hipFFT <hipfft:index>`,1.0.15,1.0.15,1.0.14
:doc:`hipBLAS <hipblas:index>`,2.2.0,2.1.0,2.0.0
:doc:`hipBLASLt <hipblaslt:index>`,0.8.0,0.7.0,0.6.0
:doc:`hipFFT <hipfft:index>`,1.0.14,1.0.14,1.0.13
:doc:`hipFORT <hipfort:index>`,0.4.0,0.4.0,0.4.0
:doc:`hipRAND <hiprand:index>`,2.11.0,2.11.0,2.10.16
:doc:`hipSOLVER <hipsolver:index>`,2.2.0,2.2.0,2.1.0
:doc:`hipSPARSE <hipsparse:index>`,3.1.1,3.1.1,3.0.1
:doc:`hipSPARSELt <hipsparselt:index>`,0.2.1,0.2.1,0.1.0
:doc:`rocALUTION <rocalution:index>`,3.2.0,3.2.0,3.1.1
:doc:`rocBLAS <rocblas:index>`,4.2.1,4.2.1,4.1.0
:doc:`rocFFT <rocfft:index>`,1.0.29,1.0.29,1.0.26
:doc:`rocRAND <rocrand:index>`,3.1.0,3.1.0,3.0.1
:doc:`rocSOLVER <rocsolver:index>`,3.26.0,3.26.0,3.25.0
:doc:`rocSPARSE <rocsparse:index>`,3.2.0,3.2.0,3.1.2
:doc:`rocWMMA <rocwmma:index>`,1.5.0,1.5.0,1.4.0
`Tensile <https://github.com/ROCm/Tensile>`_,4.40.0,4.40.0,4.40.0
:doc:`hipRAND <hiprand:index>`,2.11.0,2.10.16,2.10.16
:doc:`hipSOLVER <hipsolver:index>`,2.2.0,2.1.1,2.0.0
:doc:`hipSPARSE <hipsparse:index>`,3.1.1,3.0.1,3.0.0
:doc:`hipSPARSELt <hipsparselt:index>`,0.2.1,0.2.0,0.1.0
:doc:`rocALUTION <rocalution:index>`,3.2.0,3.1.1,3.0.3
:doc:`rocBLAS <rocblas:index>`,4.2.0,4.1.2,4.0.0
:doc:`rocFFT <rocfft:index>`,1.0.28,1.0.27,1.0.23
:doc:`rocRAND <rocrand:index>`,3.1.0,3.0.1,2.10.17
:doc:`rocSOLVER <rocsolver:index>`,3.26.0,3.25.0,3.24.0
:doc:`rocSPARSE <rocsparse:index>`,3.2.0,3.1.2,3.0.2
:doc:`rocWMMA <rocwmma:index>`,1.5.0,1.4.0,1.3.0
`Tensile <https://github.com/ROCm/Tensile>`_,4.40.0,4.40.0,4.39.0
,,,
PRIMITIVES,.. _primitivelibs-support-compatibility-matrix:,,
:doc:`hipCUB <hipcub:index>`,3.2.0,3.2.0,3.1.0
:doc:`hipTensor <hiptensor:index>`,1.3.0,1.3.0,1.2.0
:doc:`rocPRIM <rocprim:index>`,3.2.0,3.2.0,3.1.0
:doc:`rocThrust <rocthrust:index>`,3.1.0,3.1.0,3.0.1
PRIMITIVES,".. _primitivelibs-support-compatibility-matrix:",,
:doc:`hipCUB <hipcub:index>`,3.2.0,3.1.0,3.0.0
:doc:`hipTensor <hiptensor:index>`,1.3.0,1.2.0,1.1.0
:doc:`rocPRIM <rocprim:index>`,3.2.0,3.1.0,3.0.0
:doc:`rocThrust <rocthrust:index>`,3.0.1,3.0.1,3.0.0
,,,
SUPPORT LIBS,,,
`hipother <https://github.com/ROCm/hipother>`_,6.2.41134,6.2.41134,6.1.40091
`rocm-core <https://github.com/ROCm/rocm-core>`_,6.2.2,6.2.1,6.1.0
`ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_,20240607.4.05,20240607.4.05,20240125.3.30
`hipother <https://github.com/ROCm/hipother>`_,6.2.41133,6.1.40093,6.1.32830
`rocm-core <https://github.com/ROCm/rocm-core>`_,6.2.0,6.1.2,6.0.0
`ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_,20240607.1.4246,20240125.5.08,20231016.2.245
,,,
SYSTEM MGMT TOOLS,.. _tools-support-compatibility-matrix:,,
:doc:`AMD SMI <amdsmi:index>`,24.6.3,24.6.3,24.4.1
:doc:`ROCm Data Center Tool <rdc:index>`,1.0.0,1.0.0,0.3.0
SYSTEM MGMT TOOLS,".. _tools-support-compatibility-matrix:",,
:doc:`AMD SMI <amdsmi:index>`,24.6.2,24.5.1,23.4.2
:doc:`ROCm Data Center Tool <rdc:index>`,1.0.0,0.3.0,0.3.0
:doc:`rocminfo <rocminfo:index>`,1.0.0,1.0.0,1.0.0
:doc:`ROCm SMI <rocm_smi_lib:index>`,7.3.0,7.3.0,7.0.0
:doc:`ROCm Validation Suite <rocmvalidationsuite:index>`,rocm-6.2.2,rocm-6.2.1,rocm-6.1.0
:doc:`ROCm SMI <rocm_smi_lib:index>`,7.3.0,7.2.0,6.0.0
:doc:`ROCm Validation Suite <rocmvalidationsuite:index>`,rocm-6.2.0,rocm-6.1.2,rocm-6.0.0
,,,
PERFORMANCE TOOLS,,,
:doc:`Omniperf <omniperf:index>`,2.0.1,2.0.1,N/A
:doc:`Omnitrace <omnitrace:index>`,1.11.2,1.11.2,N/A
:doc:`Omniperf <omniperf:index>`,2.0.1,N/A,N/A
:doc:`Omnitrace <omnitrace:index>`,1.11.2,N/A,N/A
:doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>`,1.4.0,1.4.0,1.4.0
:doc:`ROCProfiler <rocprofiler:index>`,2.0.60202,2.0.60201,2.0.60100
:doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`,0.4.0,0.4.0,N/A
:doc:`ROCTracer <roctracer:index>`,4.1.60202,4.1.60201,4.1.60100
:doc:`ROCProfiler <rocprofiler:index>`,2.0.60200,2.0.60102,2.0.60000
:doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`,0.4.0,N/A,N/A
:doc:`ROCTracer <roctracer:index>`,4.1.60200,4.1.60102,4.1.60000
,,,
DEVELOPMENT TOOLS,,,
:doc:`HIPIFY <hipify:index>`,18.0.0.24355,18.0.0.24355,17.0.0.24103
:doc:`ROCm CMake <rocmcmakebuildtools:index>`,0.13.0,0.13.0,0.12.0
:doc:`ROCdbgapi <rocdbgapi:index>`,0.76.0,0.76.0,0.71.0
:doc:`ROCm Debugger (ROCgdb) <rocgdb:index>`,14.2.0,14.2.0,14.1.0
`rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_,0.4.0,0.4.0,0.3.0
:doc:`HIPIFY <hipify:index>`,18.0.0.24232,17.0.0.24193,17.0.0.23483
:doc:`ROCm CMake <rocmcmakebuildtools:index>`,0.13.0,0.12.0,0.11.0
:doc:`ROCdbgapi <rocdbgapi:index>`,0.76.0,0.71.0,0.71.0
:doc:`ROCm Debugger (ROCgdb) <rocgdb:index>`,14.2.0,14.1.0,13.2.0
`rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_,0.4.0,0.3.0,N/A
:doc:`ROCr Debug Agent <rocr_debug_agent:index>`,2.0.3,2.0.3,2.0.3
,,,
COMPILERS,.. _compilers-support-compatibility-matrix:,,
`clang-ocl <https://github.com/ROCm/clang-ocl>`_,N/A,N/A,0.5.0
:doc:`hipCC <hipcc:index>`,1.1.1,1.1.1,1.0.0
`Flang <https://github.com/ROCm/flang>`_,18.0.0.24355,18.0.0.24355,17.0.0.24103
:doc:`llvm-project <llvm-project:index>`,18.0.0.24355,18.0.0.24355,17.0.0.24103
`OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_,18.0.0.24355,18.0.0.24355,17.0.0.24103
COMPILERS,".. _compilers-support-compatibility-matrix:",,
`clang-ocl <https://github.com/ROCm/clang-ocl>`_,N/A,0.5.0,0.5.0
:doc:`hipCC <hipcc:index>`,1.1.1,1.0.0,1.0.0
`Flang <https://github.com/ROCm/flang>`_,18.0.0.24232,17.0.0.24193,17.0.0.23483
:doc:`llvm-project <llvm-project:index>`,18.0.0.24232,17.0.0.24193,17.0.0.23483
`OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_,18.0.0.24232,17.0.0.24193,17.0.0.23483
,,,
RUNTIMES,.. _runtime-support-compatibility-matrix:,,
:doc:`AMD CLR <hip:understand/amd_clr>`,6.2.41134,6.2.41134,6.1.40091
:doc:`HIP <hip:index>`,6.2.41134,6.2.41134,6.1.40091
RUNTIMES,".. _runtime-support-compatibility-matrix:",,
:doc:`AMD CLR <hip:understand/amd_clr>`,6.2.41133,6.1.40093,6.1.32830
:doc:`HIP <hip:index>`,6.2.41133,6.1.40093,6.1.32830
`OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_,2.0.0,2.0.0,2.0.0
:doc:`ROCR-Runtime <rocr-runtime:index>`,1.14.0,1.14.0,1.13.0
:doc:`ROCR-Runtime <rocr-runtime:index>`,1.13.0,1.13.0,1.12.0
.. rubric:: Footnotes
.. [#Ubuntu220405] Preview support of Ubuntu 22.04.5 only
.. [#red-hat94] RHEL 9.4 is supported only on AMD Instinct MI300A.
.. [#oracle89] Oracle Linux is supported only on AMD Instinct MI300X.
.. [#mi300_622] **For ROCm 6.2.2** - MI300X (gfx942) is supported on listed operating systems *except* Ubuntu 22.04.5 [6.8 HWE] and Ubuntu 22.04.4 [6.5 HWE].
.. [#mi300_621] **For ROCm 6.2.1** - MI300X (gfx942) is supported on listed operating systems *except* Ubuntu 22.04.5 [6.8 HWE] and Ubuntu 22.04.4 [6.5 HWE].
.. [#mi300_610] **For ROCm 6.1.0** - MI300A (gfx942) is supported on Ubuntu 22.04.4, RHEL 9.4, RHEL 9.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.4.
.. [#kfd_support] ROCm provides forward and backward compatibility between the Kernel Fusion Driver (KFD) and its user space software for +/- 2 releases. These are the compatibility combinations that are currently supported.
.. _OS-kernel-versions:
Operating systems and kernel versions
*************************************
Use this look up table to confirm which operating system and kernel versions are supported with ROCm.
.. csv-table::
:header: "OS", "Version", "Kernel"
:widths: 40, 20, 40
:stub-columns: 1
`Ubuntu <https://ubuntu.com/about/release-cycle#ubuntu-kernel-release-cycle>`_, 24.04.1, "6.8 GA"
, 24.04, "6.8 GA"
`Ubuntu <https://ubuntu.com/about/release-cycle#ubuntu-kernel-release-cycle>`_, 22.04.05, "5.15 GA, 6.8 HWE"
, 22.04.04, "5.15 GA, 6.5 HWE"
, 22.04.03, "5.15 GA, 6.2 HWE"
, 22.04.02, "5.15 GA, 5.19 HWE"
`Ubuntu <https://ubuntu.com/about/release-cycle#ubuntu-kernel-release-cycle>`_, 20.04.06, "5.15 HWE"
, 20.04.05, "5.15 HWE"
,,
`Red Hat Enterprise Linux (RHEL) <https://access.redhat.com/articles/3078#RHEL9>`_, 9.4, 5.14.0
,9.3, 5.14.0
,9.2, 5.14.0
,,
`Red Hat Enterprise Linux (RHEL) <https://access.redhat.com/articles/3078#RHEL8>`_, 8.10, 4.18.0
,8.9, 4.18.0
,8.8, 4.18.0
,,
`CentOS <https://access.redhat.com/articles/3078#RHEL7>`_, 7.9, 3.10
,,
`SUSE Linux Enterprise Server (SLES) <https://www.suse.com/support/kb/doc/?id=000019587#SLE15SP4>`_, 15 SP6, 6.4.0
,15 SP5, 5.14.21
,15 SP4, 5.14.21
,,
`Oracle Linux <https://blogs.oracle.com/scoter/post/oracle-linux-and-unbreakable-enterprise-kernel-uek-releases>`_, 8.9, 5.15.0
.. [#mi300_620] **For ROCm 6.2.0** - MI300X (gfx942) is supported on listed operating systems *except* Ubuntu 22.04.5 [6.8 HWE] and Ubuntu 22.04.4 [6.5 HWE].
.. [#mi300_612] **For ROCm 6.1.2** - MI300A (gfx942) is supported on Ubuntu 22.04.4, RHEL 9.4, RHEL 9.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.4 and Oracle Linux.
.. [#mi300_600] **For ROCm 6.0.0** - MI300A (gfx942) is supported on Ubuntu 22.04.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.3.
..
Footnotes and ref anchors in below historical tables should be appended with "-past-60", to differentiate from the
@@ -211,20 +160,20 @@ Expand for full historical view of:
You can `download the entire .csv <../downloads/compatibility-matrix-historical-6.0.csv>`_ for offline reference.
.. csv-table::
:file: compatibility-matrix-historical-6.0.csv
:file: ../data/reference/compatibility-matrix-historical-6.0.csv
:widths: 20,10,10,10,10,10,10
:header-rows: 1
:stub-columns: 1
.. rubric:: Footnotes
.. [#Ubuntu220405-past-60] Preview support of Ubuntu 22.04.5 only
.. [#red-hat94-past-60] RHEL 9.4 is supported only on AMD Instinct MI300A.
.. [#oracle89-past-60] Oracle Linux is supported only on AMD Instinct MI300X.
.. [#mi300_622-past-60] **For ROCm 6.2.2** - MI300X (gfx942) is supported on listed operating systems *except* Ubuntu 22.04.5 [6.8 HWE] and Ubuntu 22.04.4 [6.5 HWE].
.. [#mi300_621-past-60] **For ROCm 6.2.1** - MI300X (gfx942) is supported on listed operating systems *except* Ubuntu 22.04.5 [6.8 HWE] and Ubuntu 22.04.4 [6.5 HWE].
.. [#mi300_620-past-60] **For ROCm 6.2.0** - MI300X (gfx942) is supported on listed operating systems *except* Ubuntu 22.04.5 [6.8 HWE] and Ubuntu 22.04.4 [6.5 HWE].
.. [#mi300_612-past-60] **For ROCm 6.1.2** - MI300A (gfx942) is supported on Ubuntu 22.04.4, RHEL 9.4, RHEL 9.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.4 and Oracle Linux.
.. [#mi300_611-past-60] **For ROCm 6.1.1** - MI300A (gfx942) is supported on Ubuntu 22.04.4, RHEL 9.4, RHEL 9.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.4 and Oracle Linux.
.. [#mi300_610-past-60] **For ROCm 6.1.0** - MI300A (gfx942) is supported on Ubuntu 22.04.4, RHEL 9.4, RHEL 9.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.4.
.. [#mi300_602-past-60] **For ROCm 6.0.2** - MI300A (gfx942) is supported on Ubuntu 22.04.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.3.
.. [#mi300_600-past-60] **For ROCm 6.0.0** - MI300A (gfx942) is supported on Ubuntu 22.04.3, RHEL 8.9, and SLES 15 SP5. MI300X (gfx942) is only supported on Ubuntu 22.04.3.
.. [#kfd_support-past-60] ROCm provides forward and backward compatibility between the Kernel Fusion Driver (KFD) and its user space software for +/- 2 releases. These are the compatibility combinations that are currently supported.

View File

@@ -10,7 +10,7 @@ import shutil
shutil.copy2("../RELEASE.md", "./about/release-notes.md")
os.system("mkdir -p ../_readthedocs/html/downloads")
os.system("cp compatibility/compatibility-matrix-historical-6.0.csv ../_readthedocs/html/downloads/compatibility-matrix-historical-6.0.csv")
os.system("cp data/reference/compatibility-matrix-historical-6.0.csv ../_readthedocs/html/downloads/compatibility-matrix-historical-6.0.csv")
latex_engine = "xelatex"
latex_elements = {
@@ -30,15 +30,16 @@ if os.environ.get("READTHEDOCS", "") == "True":
project = "ROCm Documentation"
author = "Advanced Micro Devices, Inc."
copyright = "Copyright (c) 2024 Advanced Micro Devices, Inc. All rights reserved."
version = "6.2.2"
release = "6.2.2"
version = "6.2.0"
release = "6.2.0"
setting_all_article_info = True
all_article_info_os = ["linux", "windows"]
all_article_info_author = ""
# pages with specific settings
article_pages = [
{"file": "about/release-notes", "os": ["linux", "windows"], "date": "2024-09-27"},
{"file": "about/release-notes", "os": ["linux", "windows"], "date": "2024-08-02"},
{"file": "about/changelog", "os": ["linux", "windows"], "date": "2024-08-02"},
{"file": "how-to/deep-learning-rocm", "os": ["linux"]},
{"file": "how-to/rocm-for-ai/index", "os": ["linux"]},
{"file": "how-to/rocm-for-ai/install", "os": ["linux"]},

153
docs/contribute/building.md Normal file
View File

@@ -0,0 +1,153 @@
<head>
<meta charset="UTF-8">
<meta name="description" content="Building ROCm documentation">
<meta name="keywords" content="documentation, Visual Studio Code, GitHub, command line,
AMD, ROCm">
</head>
# Building documentation
You can build our documentation via GitHub (in a pull request) or locally (using the command line or
Visual Studio (VS) Code.
## GitHub
If you open a pull request on the `develop` branch of a ROCm repository and scroll to the bottom of
the page, there is a summary panel. Next to the line
`docs/readthedocs.com:advanced-micro-devices-demo`, there is a `Details` link. If you click this, it takes
you to the Read the Docs build for your pull request.
![Screenshot of the GitHub documentation build link](../data/contribute/github-docs-build.png)
If you don't see this line, click `Show all checks` to get an itemized view.
## Command line
You can build our documentation via the command line using Python.
See the `build.tools.python` setting in the [Read the Docs configuration file](https://github.com/ROCm/ROCm/blob/develop/.readthedocs.yaml) for the Python version used by Read the Docs to build documentation.
See the [Python requirements file](https://github.com/ROCm/ROCm/blob/develop/docs/sphinx/requirements.txt) for Python packages needed to build the documentation.
Use the Python Virtual Environment (`venv`) and run the following commands from the project root:
```sh
python3 -mvenv .venv
.venv/bin/python -m pip install -r docs/sphinx/requirements.txt
.venv/bin/python -m sphinx -T -E -b html -d _build/doctrees -D language=en docs _build/html
```
Navigate to `_build/html/index.html` and open this file in a web browser.
## Visual Studio Code
With the help of a few extensions, you can create a productive environment to author and test
documentation locally using Visual Studio (VS) Code. Follow these steps to configure VS Code:
1. Install the required extensions:
* Python: `(ms-python.python)`
* Live Server: `(ritwickdey.LiveServer)`
2. Add the following entries to `.vscode/settings.json`.
```json
{
"liveServer.settings.root": "/.vscode/build/html",
"liveServer.settings.wait": 1000,
"python.terminal.activateEnvInCurrentTerminal": true
}
```
* `liveServer.settings.root`: Sets the root of the output website for live previews. Must be changed
alongside the `tasks.json` command.
* `liveServer.settings.wait`: Tells the live server to wait with the update in order to give Sphinx time to
regenerate the site contents and not refresh before the build is complete.
* `python.terminal.activateEnvInCurrentTerminal`: Activates the automatic virtual environment, so you
can build the site from the integrated terminal.
3. Add the following tasks to `.vscode/tasks.json`.
```json
{
"version": "2.0.0",
"tasks": [
{
"label": "Build Docs",
"type": "process",
"windows": {
"command": "${workspaceFolder}/.venv/Scripts/python.exe"
},
"command": "${workspaceFolder}/.venv/bin/python3",
"args": [
"-m",
"sphinx",
"-j",
"auto",
"-T",
"-b",
"html",
"-d",
"${workspaceFolder}/.vscode/build/doctrees",
"-D",
"language=en",
"${workspaceFolder}/docs",
"${workspaceFolder}/.vscode/build/html"
],
"problemMatcher": [
{
"owner": "sphinx",
"fileLocation": "absolute",
"pattern": {
"regexp": "^(?:.*\\.{3}\\s+)?(\\/[^:]*|[a-zA-Z]:\\\\[^:]*):(\\d+):\\s+(WARNING|ERROR):\\s+(.*)$",
"file": 1,
"line": 2,
"severity": 3,
"message": 4
}
},
{
"owner": "sphinx",
"fileLocation": "absolute",
"pattern": {
"regexp": "^(?:.*\\.{3}\\s+)?(\\/[^:]*|[a-zA-Z]:\\\\[^:]*):{1,2}\\s+(WARNING|ERROR):\\s+(.*)$",
"file": 1,
"severity": 2,
"message": 3
}
}
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
```
> Implementation detail: two problem matchers were needed to be defined,
> because VS Code doesn't tolerate some problem information being potentially
> absent. While a single regex could match all types of errors, if a capture
> group remains empty (the line number doesn't show up in all warning/error
> messages) but the `pattern` references said empty capture group, VS Code
> discards the message completely.
4. Configure the Python virtual environment (`venv`).
From the Command Palette, run `Python: Create Environment`. Select `venv` environment and
`docs/sphinx/requirements.txt`.
5. Build the docs.
Launch the default build task using one of the following options:
* A hotkey (the default is `Ctrl+Shift+B`)
* Issuing the `Tasks: Run Build Task` from the Command Palette
6. Open the live preview.
Navigate to the site output within VS Code: right-click on `.vscode/build/html/index.html` and
select `Open with Live Server`. The contents should update on every rebuild without having to
refresh the browser.

View File

@@ -4,68 +4,113 @@
<meta name="keywords" content="ROCm, contributing, contribute, maintainer, contributor">
</head>
# Contributing to the ROCm documentation
# Contribute to ROCm documentation
The ROCm documentation, like all of ROCm, is open source and available on GitHub. You can contribute to the ROCm documentation by forking the appropriate repository, making your changes, and opening a pull request.
All ROCm projects are GitHub-based, so if you want to contribute, you can do so by:
To provide feedback on the ROCm documentation, including submitting an issue or suggesting a feature, see [Providing feedback about the ROCm documentation](./feedback.md).
* [Submitting a pull request in the appropriate GitHub repository](#submit-a-pull-request)
* [Creating an issue in the appropriate GitHub repository](#create-an-issue)
* [Suggesting a new feature](#suggest-a-new-feature)
## The ROCm repositories
```{important}
By creating a pull request (PR), you agree to allow your contribution to be licensed under the terms of the
LICENSE.txt file in the corresponding repository. Different repositories may use different licenses.
```
The repositories for ROCm and all ROCm components are available on GitHub.
## Submit a pull request
| Module | Documentation location |
| --- | --- |
| ROCm framework | [https://github.com/ROCm/ROCm/tree/develop/docs](https://github.com/ROCm/ROCm/tree/develop/docs) |
| ROCm installation for Linux | [https://github.com/ROCm/rocm-install-on-linux/tree/develop/docs](https://github.com/ROCm/rocm-install-on-linux/tree/develop/docs) |
| ROCm HIP SDK installation for Windows | [https://github.com/ROCm/rocm-install-on-windows/tree/develop/docs](https://github.com/ROCm/rocm-install-on-windows/tree/develop/docs) |
To make edits to our documentation via PR, follow these steps:
Individual components have their own repositories with their own documentation in their own `docs` folders.
1. Identify the repository and the file you want to update. For example, to update this page, you would
need to modify content located in this file:
`https://github.com/ROCm/ROCm/blob/develop/docs/contribute/contributing.md`
The sub-folders within the `docs` folders across ROCm are typically structured as follows:
2. (optional, but recommended) Fork the repository.
| Sub-folder name | Documentation type |
|-------|----------|
| `install` | Installation instructions, build instructions, and prerequisites |
| `conceptual` | Important concepts |
| `how-to` | How to implement specific use cases |
| `tutorials` | Tutorials |
| `reference` | API references and other reference resources |
3. Clone the repository locally and (optionally) add your fork. Select the green 'Code' button and copy
the URL (e.g., `git@github.com:ROCm/ROCm.git`).
## Editing and adding to the documentation
* From your terminal, run:
The ROCm documentation is written in [reStructuredText (rst)](https://www.sphinx-doc.org/en/master/usage/restructuredtext/index.html) and [Github-flavoured Markdown](https://github.github.com/gfm/), and follows the [Google developer documentation style guide](https://developers.google.com/style/highlights). reStructuredText is preferred when adding content to the documentation.
```bash
git clone git@github.com:ROCm/ROCm.git
```
To edit or add to the documentation:
* Optionally add your fork to this local copy of the repository by running:
1. Fork the repository you want to add to or edit.
2. Clone your fork locally.
3. Create a new local branch cut from the `develop` branch of the repository.
4. Make your changes to the documentation.
```bash
git add remote <name-of-my-fork> <git@github.com:my-username/ROCm.git>
```
5. Optionally, build the documentation locally before creating a pull request by running the following commands from within the `docs` folder:
To get the URL of your fork, go to your GitHub profile, select the fork and click the green 'Code'
button (the same process you followed to get the main GitHub repository URL).
4. Change directory into your local copy of the repository, and run ``git pull`` (or ``git pull origin develop``) to ensure your local copy has the most recent content.
5. Create and checkout a new branch using the following command:
```bash
git checkout -b <branch_name>
```
6. Change directory into the `./docs` folder and make any documentation changes locally using your preferred code editor. Follow the guidelines listed on the
[documentation structure](./doc-structure.md) page.
```{note}
Spell checking is performed for pull requests by {doc}`ROCm Docs Core<rocm-docs-core:index>`. To ensure your PR passes spell checking you might need at add new words or acronyms to the `.wordlist.txt` file as described in {doc}`Spell Check<rocm-docs-core:user_guide/spellcheck>`.
```
7. Optionally run a local test build of the documentation to ensure the content builds and looks as expected. In your terminal, run the following commands from within the `./docs` folder of your cloned repository:
```bash
pip3 install -r sphinx/requirements.txt # You only need to run this command once
python3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html
```
The output files will be located in the `docs/_build` folder. Open `docs/_build/html/index.html` to view the documentation.
The build output files are located in the `docs/_build` folder. To preview your build, open the index file
(`docs/_build/html/index.html`) file. For more information, see [Building documentation](building.md). To learn
more about our build tools, see [Documentation toolchain](toolchain.md).
For more information on ROCm build tools, see [Documentation toolchain](toolchain.md).
6. Push your changes. A GitHub link will be returned in the output of the `git push` command. Open this link in a browser to create the pull request.
8. Commit your changes and push them to GitHub by running:
The documentation is built as part of the checks on pull request, along with spell checking and linting. Scroll to the bottom of your pull request to view all the checks.
```bash
git add <path-to-my-modified-file> # To add all modified files, you can use: git add .
git commit -m "my-updates"
git push <name-of-my-fork>
```
Verify that the linking and spell checking have passed, and that the documentation was built successfully. New words or acronyms can be added to the [wordlist file](https://github.com/ROCm/rocm-docs-core/blob/develop/.wordlist.txt) as needed.
After pushing, you will get a GitHub link in the terminal output. Copy this link and paste it into a
browser to create your PR.
The Read The Docs build of your pull request can be accessed by clicking on the Details link next to the Read The Docs build check. Verify that your changes are in the build and look as expected.
## Create an issue
Your pull request will be reviewed by a member of the ROCm documentation team.
1. To create a new GitHub issue, select the 'Issues' tab in the appropriate repository
(e.g., https://github.com/ROCm/ROCm/issues).
2. Use the search bar to make sure the issue doesn't already exist.
3. If your issue is not already listed, select the green 'New issue' button to the right of the page. Select
the type of issue and fill in the resulting template.
See the [GitHub documentation](https://docs.github.com/en) for information on how to fork and clone a repository, and how to create and push a local branch.
### General issue guidelines
```{important}
By creating a pull request (PR), you agree to allow your contribution to be licensed under the terms of the
LICENSE.txt file in the corresponding repository. Different repositories can use different licenses.
```
* Use your best judgement for issue creation. If your issue is already listed, upvote the issue and
comment or post to provide additional details, such as how you reproduced this issue.
* If you're not sure if your issue is the same, err on the side of caution and file your issue.
You can add a comment to include the issue number (and link) for the similar issue. If we evaluate
your issue as being the same as the existing issue, we'll close the duplicate.
* If your issue doesn't exist, use the issue template to file a new issue.
* When filing an issue, be sure to provide as much information as possible, including script output so
we can collect information about your configuration. This helps reduce the time required to
reproduce your issue.
* Check your issue regularly, as we may require additional information to successfully reproduce the
issue.
## Suggest a new feature
Use the [GitHub Discussion forum](https://github.com/ROCm/ROCm/discussions)
(Ideas category) to propose new features. Our maintainers are happy to provide direction and
feedback on feature development.
## Future development workflow
The current ROCm development workflow is GitHub-based. If, in the future, we change this platform,
the tools and links may change. In this instance, we will update contribution guidelines accordingly.

View File

@@ -0,0 +1,219 @@
# Documentation structure
Our documentation follows the Pitchfork folder structure. Most documentation files are stored in the
`/docs` folder. Some special files (such as release, contributing, and changelog) are stored in the root
(`/`) folder.
All images are stored in the `/docs/data` folder. An image's file path mirrors that of the documentation
file where it is used.
Our naming structure uses kebab case; for example, `my-file-name.rst`.
## Supported formats and syntax
Our documentation includes both Markdown and RST files. We are gradually transitioning existing
Markdown to RST in order to more effectively meet our documentation needs. When contributing,
RST is preferred; if you must use Markdown, use GitHub-flavored Markdown.
We use [Sphinx Design](https://sphinx-design.readthedocs.io/en/latest/index.html) syntax and compile
our API references using [Doxygen](https://www.doxygen.nl/).
The following table shows some common documentation components and the syntax convention we
use for each:
<table>
<tr>
<th>Component</th>
<th>RST syntax</th>
</tr>
<tr>
<td>Code blocks</td>
<td>
```rst
.. code-block:: language-name
My code block.
```
</td>
</tr>
<tr>
<td>Cross-referencing internal files</td>
<td>
```rst
:doc:`Title <../path/to/file/filename>`
```
</td>
</tr>
<tr>
<td>External links</td>
<td>
```rst
`link name <URL>`_
```
</td>
</tr>
<tr>
<tr>
<td>Headings</td>
<td>
```rst
******************
Chapter title (H1)
******************
Section title (H2)
===============
Subsection title (H3)
---------------------
Sub-subsection title (H4)
^^^^^^^^^^^^^^^^^^^^
```
</td>
</tr>
<tr>
<td>Images</td>
<td>
```rst
.. image:: image1.png
```
</td>
</tr>
<tr>
<td>Internal links</td>
<td>
```rst
1. Add a tag to the section you want to reference:
.. _my-section-tag: section-1
Section 1
==========
2. Link to your tag:
As shown in :ref:`section-1`.
```
</td>
</tr>
<tr>
<tr>
<td>Lists</td>
<td>
```rst
# Ordered (numbered) list item
* Unordered (bulleted) list item
```
</td>
</tr>
<tr>
<tr>
<td>Math (block)</td>
<td>
```rst
.. math::
A = \begin{pmatrix}
0.0 & 1.0 & 1.0 & 3.0 \\
4.0 & 5.0 & 6.0 & 7.0 \\
\end{pmatrix}
```
</td>
</tr>
<tr>
<td>Math (inline)</td>
<td>
```rst
:math:`2 \times 2 `
```
</td>
</tr>
<tr>
<td>Notes</td>
<td>
```rst
.. note::
My note here.
```
</td>
</tr>
<tr>
<td>Tables</td>
<td>
```rst
.. csv-table:: Optional title here
:widths: 30, 70 #optional column widths
:header: "entry1 header", "entry2 header"
"entry1", "entry2"
```
</td>
</tr>
</table>
## Language and style
We use the
[Google developer documentation style guide](https://developers.google.com/style/highlights) to
guide our content.
Font size and type, page layout, white space control, and other formatting
details are controlled via
[rocm-docs-core](https://github.com/ROCm/rocm-docs-core). If you want to notify us
of any formatting issues, create a pull request in our
[rocm-docs-core](https://github.com/ROCm/rocm-docs-core) GitHub repository.
## Building our documentation
<!-- % TODO: Fix the link to be able to work at every files -->
To learn how to build our documentation, refer to
[Building documentation](./building.md).

View File

@@ -4,24 +4,12 @@
<meta name="keywords" content="documentation, pull request, GitHub, AMD, ROCm">
</head>
# Providing feedback about the ROCm documentation
# Providing feedback
Feedback about the ROCm documentation is welcome. You can provide feedback about the ROCm documentation either through GitHub Discussions or GitHub Issues.
Your feedback is welcome. You can provide feedback either through GitHub Discussions or GitHub Issues.
## Participating in discussions through GitHub Discussions
Use [GitHub Discussions](https://github.com/ROCm/ROCm/discussions) to ask questions, view announcements, and communicate with other members of the community.
You can ask questions, view announcements, suggest new features, and communicate with other members of the community through [GitHub Discussions](https://github.com/ROCm/ROCm/discussions).
Use [GitHub Issues](https://github.com/ROCm/ROCm/issues) to submit issues you find with ROCm or with the ROCm documentation.
## Submitting issues through GitHub Issues
You can submit issues through [GitHub Issues](https://github.com/ROCm/ROCm/issues).
When creating a new issue, follow the following guidelines:
1. Always do a search to see if the same issue already exists. If the issue already exists, upvote it, and comment or post to provide any additional details you might have.
2. If you find an issue that is similar to your issue, log your issue, then add a comment that includes a link to the similar issue, as well as its issue number.
3. Always provide as much information as possible. This helps reduce the time required to reproduce the issue.
After creating your issue, make sure to check it regularly for any requests for additional information.
For information about contributing content to the ROCm documentation, see [Contributing to the ROCm documentation](./contributing.md).
For information about contributing to the ROCm repository and creating a pull request (PR), see [Contributing](./contributing.md).

View File

@@ -6,47 +6,60 @@
# ROCm documentation toolchain
The ROCm documentation relies on several open source toolchains and sites.
Our documentation relies on several open source toolchains and sites.
## rocm-docs-core
## `rocm-docs-core`
[rocm-docs-core](https://github.com/ROCm/rocm-docs-core) is an AMD-maintained
project that applies customizations for the ROCm documentation. This project is the tool most ROCm repositories use as part of their documentation build pipeline. It is available as a [pip package on PyPI](https://pypi.org/project/rocm-docs-core/).
project that applies customization for our documentation. This project is the tool most ROCm
repositories use as part of the documentation build. It is also available as a
[pip package on PyPI](https://pypi.org/project/rocm-docs-core/).
See the user and developer guides for rocm-docs-core at
{doc}`rocm-docs-core documentation<rocm-docs-core:index>`.
## Sphinx
[Sphinx](https://www.sphinx-doc.org/en/master/) is a documentation generator originally used for Python. It is now widely used in the open source community.
[Sphinx](https://www.sphinx-doc.org/en/master/) is a documentation generator originally used for
Python. It is now widely used in the open source community.
### Sphinx External ToC
[Sphinx External ToC](https://sphinx-external-toc.readthedocs.io/en/latest/intro.html) is a Sphinx extension used for ROCm documentation navigation. This tool generates a navigation menu on the left
[Sphinx External ToC](https://sphinx-external-toc.readthedocs.io/en/latest/intro.html) is a Sphinx
extension used for ROCm documentation navigation. This tool generates a navigation menu on the left
based on a YAML file (`_toc.yml.in`) that contains the table of contents.
### Sphinx-book-theme
[Sphinx-book-theme](https://sphinx-book-theme.readthedocs.io/en/latest/) is a Sphinx theme that defines the base appearance for ROCm documentation. ROCm documentation applies some customization, such as a custom header and footer, on top of the Sphinx Book Theme.
[Sphinx-book-theme](https://sphinx-book-theme.readthedocs.io/en/latest/) is a Sphinx theme that
defines the base appearance for ROCm documentation. ROCm documentation applies some
customization, such as a custom header and footer on top of the Sphinx Book Theme.
### Sphinx Design
[Sphinx design](https://sphinx-design.readthedocs.io/en/latest/index.html) is a Sphinx extension that adds design functionality. ROCm documentation uses Sphinx Design for grids, cards, and synchronized tabs.
[Sphinx design](https://sphinx-design.readthedocs.io/en/latest/index.html) is a Sphinx extension that
adds design functionality. ROCm documentation uses Sphinx Design for grids, cards, and synchronized
tabs.
## Doxygen
[Doxygen](https://www.doxygen.nl/) is a documentation generator that extracts information from in-code comments. It is used for API documentation.
[Doxygen](https://www.doxygen.nl/) is a documentation generator that extracts information from inline
code. ROCm projects typically use Doxygen for public API documentation (unless the upstream project
uses a different tool).
## Breathe
[Breathe](https://www.breathe-doc.org/) is a Sphinx plugin for integrating Doxygen content.
[Breathe](https://www.breathe-doc.org/) is a Sphinx plugin to integrate Doxygen content.
## MyST
[Markedly Structured Text (MyST)](https://myst-tools.org/docs/spec) is an extended flavor of Markdown ([CommonMark](https://commonmark.org/)) influenced by reStructuredText (rst) and Sphinx. It is integrated into the ROCm documentation with the [`myst-parser`](https://myst-parser.readthedocs.io/en/latest/) Sphinx extension.
See the [MyST syntax cheat sheet](https://jupyterbook.org/en/stable/reference/cheatsheet.html) at the Jupyter Book site.
[Markedly Structured Text (MyST)](https://myst-tools.org/docs/spec) is an extended flavor of
Markdown ([CommonMark](https://commonmark.org/)) influenced by reStructuredText (RST) and
Sphinx. It's integrated into ROCm documentation by the Sphinx extension
[`myst-parser`](https://myst-parser.readthedocs.io/en/latest/).
A MyST syntax cheat sheet is available on the [Jupyter reference](https://jupyterbook.org/en/stable/reference/cheatsheet.html) site.
## Read the Docs
[Read the Docs](https://docs.readthedocs.io/en/stable/) is the service that builds and hosts the HTML version of the ROCm documentation.
[Read the Docs](https://docs.readthedocs.io/en/stable/) is the service that builds and hosts the HTML
documentation generated using Sphinx to our end users.

View File

@@ -0,0 +1,114 @@
ROCm Version,6.2.0, 6.1.2, 6.1.1, 6.1.0, 6.0.2, 6.0.0
:doc:`Operating Systems <rocm-install-on-linux:reference/system-requirements>`,Ubuntu 24.04,,,,,
,"Ubuntu 22.04.5 [#Ubuntu220405-past-60]_, 22.04.4","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3"
,,"Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5"
,"RHEL 9.4, 9.3","RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2","RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2","RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2","RHEL 9.3, 9.2","RHEL 9.3, 9.2"
,"RHEL 8.10, 8.9","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8"
,"SLES 15 SP6, SP5","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4"
,,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9
,Oracle Linux 8.9 [#oracle89-past-60]_,Oracle Linux 8.9 [#oracle89-past-60]_,Oracle Linux 8.9 [#oracle89-past-60]_,,,
,".. _architecture-support-compatibility-matrix-past-60:",,,,,
:doc:`Architecture <rocm-install-on-linux:reference/system-requirements>`,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3
,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2
,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA
,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3
,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2
,".. _gpu-support-compatibility-matrix-past-60:",,,,,
:doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>`,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100
,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030
,gfx942 [#mi300_620-past-60]_, gfx942 [#mi300_612-past-60]_, gfx942 [#mi300_611-past-60]_, gfx942 [#mi300_610-past-60]_, gfx942 [#mi300_602-past-60]_, gfx942 [#mi300_600-past-60]_
,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a
,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908
,,,,,,
FRAMEWORK SUPPORT,".. _framework-support-compatibility-matrix-past-60:",,,,,
:doc:`PyTorch <rocm-install-on-linux:install/3rd-party/pytorch-install>`,"2.3, 2.2, 2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13"
:doc:`TensorFlow <rocm-install-on-linux:install/3rd-party/tensorflow-install>`,"2.16.1, 2.15.1, 2.14.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.14.0, 2.13.1, 2.12.1","2.14.0, 2.13.1, 2.12.1"
:doc:`JAX <rocm-install-on-linux:install/3rd-party/jax-install>`,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26
`ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_,1.17.3,1.17.3,1.17.3,1.17.3,1.14.1,1.14.1
,,,,,,
THIRD PARTY COMMS,".. _thirdpartycomms-support-compatibility-matrix-past-60:",,,,,
`UCC <https://github.com/ROCm/ucc>`_,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.2.0,>=1.2.0
`UCX <https://github.com/ROCm/ucx>`_,>=1.15.0,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1
,,,,,,
THIRD PARTY ALGORITHM,".. _thirdpartyalgorithm-support-compatibility-matrix-past-60:",,,,,
Thrust,2.2.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1
CUB,2.2.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1
,,,,,,
ML & COMPUTER VISION,".. _mllibs-support-compatibility-matrix-past-60:",,,,,
:doc:`Composable Kernel <composable_kernel:index>`,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0
:doc:`MIGraphX <amdmigraphx:index>`,2.10.0,2.9.0,2.9.0,2.9.0,2.8.0,2.8.0
:doc:`MIOpen <miopen:index>`,3.2.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`MIVisionX <mivisionx:index>`,3.0.0,2.5.0,2.5.0,2.5.0,2.5.0,2.5.0
:doc:`RPP <rpp:index>`,1.8.0,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0
:doc:`rocAL <rocal:index>`,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
:doc:`rocDecode <rocdecode:index>`,0.6.0,0.6.0,0.5.0,0.5.0,N/A,N/A
:doc:`rocPyDecode <rocpydecode:index>`,0.1.0,N/A,N/A,N/A,N/A,N/A
,,,,,,
COMMUNICATION,".. _commlibs-support-compatibility-matrix-past-60:",,,,,
:doc:`RCCL <rccl:index>`,2.20.5,2.18.6,2.18.6,2.18.6,2.18.3,2.18.3
,,,,,,
MATH LIBS,".. _mathlibs-support-compatibility-matrix-past-60:",,,,,
`half <https://github.com/ROCm/half>`_ ,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0
:doc:`hipBLAS <hipblas:index>`,2.2.0,2.1.0,2.1.0,2.1.0,2.0.0,2.0.0
:doc:`hipBLASLt <hipblaslt:index>`,0.8.0,0.7.0,0.7.0,0.7.0,0.6.0,0.6.0
:doc:`hipFFT <hipfft:index>`,1.0.14,1.0.14,1.0.14,1.0.14,1.0.13,1.0.13
:doc:`hipFORT <hipfort:index>`,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0
:doc:`hipRAND <hiprand:index>`,2.11.0,2.10.16,2.10.16,2.10.16,2.10.16,2.10.16
:doc:`hipSOLVER <hipsolver:index>`,2.2.0,2.1.1,2.1.1,2.1.0,2.0.0,2.0.0
:doc:`hipSPARSE <hipsparse:index>`,3.1.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0
:doc:`hipSPARSELt <hipsparselt:index>`,0.2.1,0.2.0,0.1.0,0.1.0,0.1.0,0.1.0
:doc:`rocALUTION <rocalution:index>`,3.2.0,3.1.1,3.1.1,3.1.1,3.0.3,3.0.3
:doc:`rocBLAS <rocblas:index>`,4.2.0,4.1.2,4.1.0,4.1.0,4.0.0,4.0.0
:doc:`rocFFT <rocfft:index>`,1.0.28,1.0.27,1.0.27,1.0.26,1.0.25,1.0.23
:doc:`rocRAND <rocrand:index>`,3.1.0,3.0.1,3.0.1,3.0.1,3.0.0,2.10.17
:doc:`rocSOLVER <rocsolver:index>`,3.26.0,3.25.0,3.25.0,3.25.0,3.24.0,3.24.0
:doc:`rocSPARSE <rocsparse:index>`,3.2.0,3.1.2,3.1.2,3.1.2,3.0.2,3.0.2
:doc:`rocWMMA <rocwmma:index>`,1.5.0,1.4.0,1.4.0,1.4.0,1.3.0,1.3.0
`Tensile <https://github.com/ROCm/Tensile>`_,4.40.0,4.40.0,4.40.0,4.40.0,4.39.0,4.39.0
,,,,,,
PRIMITIVES,".. _primitivelibs-support-compatibility-matrix-past-60:",,,,,
:doc:`hipCUB <hipcub:index>`,3.2.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`hipTensor <hiptensor:index>`,1.3.0,1.2.0,1.2.0,1.2.0,1.1.0,1.1.0
:doc:`rocPRIM <rocprim:index>`,3.2.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`rocThrust <rocthrust:index>`,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0
,,,,,,
SUPPORT LIBS,,,,,,
`hipother <https://github.com/ROCm/hipother>`_,6.2.41133,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
`rocm-core <https://github.com/ROCm/rocm-core>`_,6.2.0,6.1.2,6.1.1,6.1.0,6.0.2,6.0.0
`ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_,20240607.1.4246,20240125.5.08,20240125.5.08,20240125.3.30,20231016.2.245,20231016.2.245
,,,,,,
SYSTEM MGMT TOOLS,".. _tools-support-compatibility-matrix-past-60:",,,,,
:doc:`AMD SMI <amdsmi:index>`,24.6.2,24.5.1,24.5.1,24.4.1,23.4.2,23.4.2
:doc:`ROCm Data Center Tool <rdc:index>`,1.0.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0
:doc:`rocminfo <rocminfo:index>`,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
:doc:`ROCm SMI <rocm_smi_lib:index>`,7.3.0,7.2.0,7.0.0,7.0.0,6.0.2,6.0.0
:doc:`ROCm Validation Suite <rocmvalidationsuite:index>`,rocm-6.2.0,rocm-6.1.2,rocm-6.1.1,rocm-6.1.0,rocm-6.0.2,rocm-6.0.0
,,,,,,
PERFORMANCE TOOLS,,,,,,
:doc:`Omniperf <omniperf:index>`,2.0.1,N/A,N/A,N/A,N/A,N/A
:doc:`Omnitrace <omnitrace:index>`,1.11.2,N/A,N/A,N/A,N/A,N/A
:doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>`,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0
:doc:`ROCProfiler <rocprofiler:index>`,2.0.60200,2.0.60102,2.0.60101,2.0.60100,2.0.60002,2.0.60000
:doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`,0.4.0,N/A,N/A,N/A,N/A,N/A
:doc:`ROCTracer <roctracer:index>`,4.1.60200,4.1.60102,4.1.60101,4.1.60100,4.1.60002,4.1.60000
,,,,,,
DEVELOPMENT TOOLS,,,,,,
:doc:`HIPIFY <hipify:index>`,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
:doc:`ROCm CMake <rocmcmakebuildtools:index>`,0.13.0,0.12.0,0.12.0,0.12.0,0.11.0,0.11.0
:doc:`ROCdbgapi <rocdbgapi:index>`,0.76.0,0.71.0,0.71.0,0.71.0,0.71.0,0.71.0
:doc:`ROCm Debugger (ROCgdb) <rocgdb:index>`,14.2.0,14.1.0,14.1.0,14.1.0,13.2.0,13.2.0
`rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_,0.4.0,0.3.0,0.3.0,0.3.0,N/A,N/A
:doc:`ROCr Debug Agent <rocr_debug_agent:index>`,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3
,,,,,,
COMPILERS,".. _compilers-support-compatibility-matrix-past-60:",,,,,
`clang-ocl <https://github.com/ROCm/clang-ocl>`_,N/A,0.5.0,0.5.0,0.5.0,0.5.0,0.5.0
:doc:`hipCC <hipcc:index>`,1.1.1,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
`Flang <https://github.com/ROCm/flang>`_,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
:doc:`llvm-project <llvm-project:index>`,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
`OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_,18.0.0.24232,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
,,,,,,
RUNTIMES,".. _runtime-support-compatibility-matrix-past-60:",,,,,
:doc:`AMD CLR <hip:understand/amd_clr>`,6.2.41133,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
:doc:`HIP <hip:index>`,6.2.41133,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
`OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0
:doc:`ROCR-Runtime <rocr-runtime:index>`,1.13.0,1.13.0,1.13.0,1.13.0,1.12.0,1.12.0
1 ROCm Version 6.2.0 6.1.2 6.1.1 6.1.0 6.0.2 6.0.0
2 :doc:`Operating Systems <rocm-install-on-linux:reference/system-requirements>` Ubuntu 24.04
3 Ubuntu 22.04.5 [#Ubuntu220405-past-60]_, 22.04.4 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3
4 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5
5 RHEL 9.4, 9.3 RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2 RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2 RHEL 9.4 [#red-hat94-past-60]_, 9.3, 9.2 RHEL 9.3, 9.2 RHEL 9.3, 9.2
6 RHEL 8.10, 8.9 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8
7 SLES 15 SP6, SP5 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4
8 CentOS 7.9 CentOS 7.9 CentOS 7.9 CentOS 7.9 CentOS 7.9
9 Oracle Linux 8.9 [#oracle89-past-60]_ Oracle Linux 8.9 [#oracle89-past-60]_ Oracle Linux 8.9 [#oracle89-past-60]_
10 .. _architecture-support-compatibility-matrix-past-60:
11 :doc:`Architecture <rocm-install-on-linux:reference/system-requirements>` CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3
12 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2
13 CDNA CDNA CDNA CDNA CDNA CDNA
14 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3
15 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2
16 .. _gpu-support-compatibility-matrix-past-60:
17 :doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>` gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100
18 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030
19 gfx942 [#mi300_620-past-60]_ gfx942 [#mi300_612-past-60]_ gfx942 [#mi300_611-past-60]_ gfx942 [#mi300_610-past-60]_ gfx942 [#mi300_602-past-60]_ gfx942 [#mi300_600-past-60]_
20 gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a
21 gfx908 gfx908 gfx908 gfx908 gfx908 gfx908
22
23 FRAMEWORK SUPPORT .. _framework-support-compatibility-matrix-past-60:
24 :doc:`PyTorch <rocm-install-on-linux:install/3rd-party/pytorch-install>` 2.3, 2.2, 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13 2.1, 2.0, 1.13
25 :doc:`TensorFlow <rocm-install-on-linux:install/3rd-party/tensorflow-install>` 2.16.1, 2.15.1, 2.14.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.14.0, 2.13.1, 2.12.1 2.14.0, 2.13.1, 2.12.1
26 :doc:`JAX <rocm-install-on-linux:install/3rd-party/jax-install>` 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26
27 `ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_ 1.17.3 1.17.3 1.17.3 1.17.3 1.14.1 1.14.1
28
29 THIRD PARTY COMMS .. _thirdpartycomms-support-compatibility-matrix-past-60:
30 `UCC <https://github.com/ROCm/ucc>`_ >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.2.0 >=1.2.0
31 `UCX <https://github.com/ROCm/ucx>`_ >=1.15.0 >=1.14.1 >=1.14.1 >=1.14.1 >=1.14.1 >=1.14.1
32
33 THIRD PARTY ALGORITHM .. _thirdpartyalgorithm-support-compatibility-matrix-past-60:
34 Thrust 2.2.0 2.1.0 2.1.0 2.1.0 2.0.1 2.0.1
35 CUB 2.2.0 2.1.0 2.1.0 2.1.0 2.0.1 2.0.1
36
37 ML & COMPUTER VISION .. _mllibs-support-compatibility-matrix-past-60:
38 :doc:`Composable Kernel <composable_kernel:index>` 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0
39 :doc:`MIGraphX <amdmigraphx:index>` 2.10.0 2.9.0 2.9.0 2.9.0 2.8.0 2.8.0
40 :doc:`MIOpen <miopen:index>` 3.2.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
41 :doc:`MIVisionX <mivisionx:index>` 3.0.0 2.5.0 2.5.0 2.5.0 2.5.0 2.5.0
42 :doc:`RPP <rpp:index>` 1.8.0 1.5.0 1.5.0 1.5.0 1.4.0 1.4.0
43 :doc:`rocAL <rocal:index>` 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
44 :doc:`rocDecode <rocdecode:index>` 0.6.0 0.6.0 0.5.0 0.5.0 N/A N/A
45 :doc:`rocPyDecode <rocpydecode:index>` 0.1.0 N/A N/A N/A N/A N/A
46
47 COMMUNICATION .. _commlibs-support-compatibility-matrix-past-60:
48 :doc:`RCCL <rccl:index>` 2.20.5 2.18.6 2.18.6 2.18.6 2.18.3 2.18.3
49
50 MATH LIBS .. _mathlibs-support-compatibility-matrix-past-60:
51 `half <https://github.com/ROCm/half>`_ 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0
52 :doc:`hipBLAS <hipblas:index>` 2.2.0 2.1.0 2.1.0 2.1.0 2.0.0 2.0.0
53 :doc:`hipBLASLt <hipblaslt:index>` 0.8.0 0.7.0 0.7.0 0.7.0 0.6.0 0.6.0
54 :doc:`hipFFT <hipfft:index>` 1.0.14 1.0.14 1.0.14 1.0.14 1.0.13 1.0.13
55 :doc:`hipFORT <hipfort:index>` 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0
56 :doc:`hipRAND <hiprand:index>` 2.11.0 2.10.16 2.10.16 2.10.16 2.10.16 2.10.16
57 :doc:`hipSOLVER <hipsolver:index>` 2.2.0 2.1.1 2.1.1 2.1.0 2.0.0 2.0.0
58 :doc:`hipSPARSE <hipsparse:index>` 3.1.1 3.0.1 3.0.1 3.0.1 3.0.0 3.0.0
59 :doc:`hipSPARSELt <hipsparselt:index>` 0.2.1 0.2.0 0.1.0 0.1.0 0.1.0 0.1.0
60 :doc:`rocALUTION <rocalution:index>` 3.2.0 3.1.1 3.1.1 3.1.1 3.0.3 3.0.3
61 :doc:`rocBLAS <rocblas:index>` 4.2.0 4.1.2 4.1.0 4.1.0 4.0.0 4.0.0
62 :doc:`rocFFT <rocfft:index>` 1.0.28 1.0.27 1.0.27 1.0.26 1.0.25 1.0.23
63 :doc:`rocRAND <rocrand:index>` 3.1.0 3.0.1 3.0.1 3.0.1 3.0.0 2.10.17
64 :doc:`rocSOLVER <rocsolver:index>` 3.26.0 3.25.0 3.25.0 3.25.0 3.24.0 3.24.0
65 :doc:`rocSPARSE <rocsparse:index>` 3.2.0 3.1.2 3.1.2 3.1.2 3.0.2 3.0.2
66 :doc:`rocWMMA <rocwmma:index>` 1.5.0 1.4.0 1.4.0 1.4.0 1.3.0 1.3.0
67 `Tensile <https://github.com/ROCm/Tensile>`_ 4.40.0 4.40.0 4.40.0 4.40.0 4.39.0 4.39.0
68
69 PRIMITIVES .. _primitivelibs-support-compatibility-matrix-past-60:
70 :doc:`hipCUB <hipcub:index>` 3.2.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
71 :doc:`hipTensor <hiptensor:index>` 1.3.0 1.2.0 1.2.0 1.2.0 1.1.0 1.1.0
72 :doc:`rocPRIM <rocprim:index>` 3.2.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
73 :doc:`rocThrust <rocthrust:index>` 3.0.1 3.0.1 3.0.1 3.0.1 3.0.0 3.0.0
74
75 SUPPORT LIBS
76 `hipother <https://github.com/ROCm/hipother>`_ 6.2.41133 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
77 `rocm-core <https://github.com/ROCm/rocm-core>`_ 6.2.0 6.1.2 6.1.1 6.1.0 6.0.2 6.0.0
78 `ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_ 20240607.1.4246 20240125.5.08 20240125.5.08 20240125.3.30 20231016.2.245 20231016.2.245
79
80 SYSTEM MGMT TOOLS .. _tools-support-compatibility-matrix-past-60:
81 :doc:`AMD SMI <amdsmi:index>` 24.6.2 24.5.1 24.5.1 24.4.1 23.4.2 23.4.2
82 :doc:`ROCm Data Center Tool <rdc:index>` 1.0.0 0.3.0 0.3.0 0.3.0 0.3.0 0.3.0
83 :doc:`rocminfo <rocminfo:index>` 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
84 :doc:`ROCm SMI <rocm_smi_lib:index>` 7.3.0 7.2.0 7.0.0 7.0.0 6.0.2 6.0.0
85 :doc:`ROCm Validation Suite <rocmvalidationsuite:index>` rocm-6.2.0 rocm-6.1.2 rocm-6.1.1 rocm-6.1.0 rocm-6.0.2 rocm-6.0.0
86
87 PERFORMANCE TOOLS
88 :doc:`Omniperf <omniperf:index>` 2.0.1 N/A N/A N/A N/A N/A
89 :doc:`Omnitrace <omnitrace:index>` 1.11.2 N/A N/A N/A N/A N/A
90 :doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>` 1.4.0 1.4.0 1.4.0 1.4.0 1.4.0 1.4.0
91 :doc:`ROCProfiler <rocprofiler:index>` 2.0.60200 2.0.60102 2.0.60101 2.0.60100 2.0.60002 2.0.60000
92 :doc:`ROCprofiler-SDK <rocprofiler-sdk:index>` 0.4.0 N/A N/A N/A N/A N/A
93 :doc:`ROCTracer <roctracer:index>` 4.1.60200 4.1.60102 4.1.60101 4.1.60100 4.1.60002 4.1.60000
94
95 DEVELOPMENT TOOLS
96 :doc:`HIPIFY <hipify:index>` 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
97 :doc:`ROCm CMake <rocmcmakebuildtools:index>` 0.13.0 0.12.0 0.12.0 0.12.0 0.11.0 0.11.0
98 :doc:`ROCdbgapi <rocdbgapi:index>` 0.76.0 0.71.0 0.71.0 0.71.0 0.71.0 0.71.0
99 :doc:`ROCm Debugger (ROCgdb) <rocgdb:index>` 14.2.0 14.1.0 14.1.0 14.1.0 13.2.0 13.2.0
100 `rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_ 0.4.0 0.3.0 0.3.0 0.3.0 N/A N/A
101 :doc:`ROCr Debug Agent <rocr_debug_agent:index>` 2.0.3 2.0.3 2.0.3 2.0.3 2.0.3 2.0.3
102
103 COMPILERS .. _compilers-support-compatibility-matrix-past-60:
104 `clang-ocl <https://github.com/ROCm/clang-ocl>`_ N/A 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0
105 :doc:`hipCC <hipcc:index>` 1.1.1 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
106 `Flang <https://github.com/ROCm/flang>`_ 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
107 :doc:`llvm-project <llvm-project:index>` 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
108 `OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_ 18.0.0.24232 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
109
110 RUNTIMES .. _runtime-support-compatibility-matrix-past-60:
111 :doc:`AMD CLR <hip:understand/amd_clr>` 6.2.41133 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
112 :doc:`HIP <hip:index>` 6.2.41133 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
113 `OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_ 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0
114 :doc:`ROCR-Runtime <rocr-runtime:index>` 1.13.0 1.13.0 1.13.0 1.13.0 1.12.0 1.12.0

View File

@@ -22,7 +22,7 @@ If youre new to ROCm, refer to the :doc:`ROCm quick start install guide for L
<rocm-install-on-linux:install/quick-start>`.
If youre using a Radeon GPU for graphics-accelerated applications, refer to the
`Radeon installation instructions <https://rocm.docs.amd.com/projects/radeon/en/docs-6.1.3/docs/install/native_linux/install-radeon.html>`_.
:doc:`Radeon installation instructions <radeon:docs/install/install-radeon>`.
ROCm supports multiple :doc:`installation methods <rocm-install-on-linux:install/install-overview>`:

View File

@@ -23,41 +23,57 @@ Installation instructions are available from:
ROCm documentation is organized into the following categories:
::::{grid} 1 2 2 2
:gutter: 3
:class-container: rocm-doc-grid
:::{grid-item-card} Compatibility
:class-body: rocm-card-banner rocm-hue-2
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ./data/banner-compatibility.jpg
:img-alt: Compatibility information
:padding: 2
* [Compatibility matrix](./compatibility/compatibility-matrix.rst)
* {doc}`Linux system requirements<rocm-install-on-linux:reference/system-requirements>`
* {doc}`Windows system requirements<rocm-install-on-windows:reference/system-requirements>`
* {doc}`Third-party support<rocm-install-on-linux:reference/3rd-party-support-matrix>`
* {doc}`User and kernel-space support matrix<rocm-install-on-linux:reference/user-kernel-space-compat-matrix>`
* {doc}`Docker image support matrix<rocm-install-on-linux:reference/docker-image-support-matrix>`
* {doc}`Use ROCm on Radeon GPUs<radeon:index>`
* {doc}`User/kernel space<rocm-install-on-linux:reference/user-kernel-space-compat-matrix>`
* {doc}`Docker<rocm-install-on-linux:reference/docker-image-support-matrix>`
* {doc}`OpenMP<llvm-project:conceptual/openmp>`
* [Precision support](./compatibility/precision-support.rst)
* {doc}`ROCm on Radeon GPUs<radeon:index>`
:::
:::{grid-item-card} How to
:class-body: rocm-card-banner rocm-hue-12
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ./data/banner-howto.jpg
:img-alt: How-to documentation
:padding: 2
* [Using ROCm for AI](./how-to/rocm-for-ai/index.rst)
* [Using ROCm for HPC](./how-to/rocm-for-hpc/index.rst)
* [Fine-tuning LLMs and inference optimization](./how-to/llm-fine-tuning-optimization/index.rst)
* [System optimization](./how-to/system-optimization/index.rst)
* [AMD Instinct MI300X](./how-to/system-optimization/mi300x.rst)
* [AMD Instinct MI300A](./how-to/system-optimization/mi300a.rst)
* [AMD Instinct MI200](./how-to/system-optimization/mi200.md)
* [AMD Instinct MI100](./how-to/system-optimization/mi100.md)
* [AMD Instinct RDNA2](./how-to/system-optimization/w6000-v620.md)
* [AMD Instinct MI300X tuning guides](./how-to/tuning-guides/mi300x/index.rst)
* [GPU cluster networking](https://rocm.docs.amd.com/projects/gpu-cluster-networking/en/latest/index.html)
* [System tuning](./how-to/tuning-guides/mi300x/system.rst)
* [Workload tuning](./how-to/tuning-guides/mi300x/workload.rst)
* [System debugging](./how-to/system-debugging.md)
* [Using MPI](./how-to/gpu-enabled-mpi.rst)
* [GPU-enabled MPI](./how-to/gpu-enabled-mpi.rst)
* [Using advanced compiler features](./conceptual/compiler-topics.md)
* [Setting the number of CUs](./how-to/setting-cus)
* [ROCm examples](https://github.com/amd/rocm-examples)
* [GitHub examples](https://github.com/amd/rocm-examples)
:::
:::{grid-item-card} Conceptual
:class-body: rocm-card-banner rocm-hue-8
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ./data/banner-conceptual.jpg
:img-alt: Conceptual documentation
:padding: 2
* [GPU architecture overview](./conceptual/gpu-arch.md)
* [GPU architecture](./conceptual/gpu-arch.md)
* [GPU memory](./conceptual/gpu-memory.md)
* [File structure (Linux FHS)](./conceptual/file-reorg.md)
* [GPU isolation techniques](./conceptual/gpu-isolation.md)
@@ -68,13 +84,21 @@ ROCm documentation is organized into the following categories:
:::
<!-- markdownlint-disable MD051 -->
:::{grid-item-card} Reference
:class-body: rocm-card-banner rocm-hue-6
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ./data/banner-reference.jpg
:img-alt: Reference documentation
:padding: 2
* [ROCm libraries](./reference/api-libraries.md)
* [ROCm tools, compilers, and runtimes](./reference/rocm-tools.md)
* [Accelerator and GPU hardware specifications](./reference/gpu-arch-specs.rst)
* [Precision support](./reference/precision-support.rst)
* [Libraries](./reference/api-libraries.md)
* [Artificial intelligence](#artificial-intelligence-apis)
* [C++ primitives](#cpp-primitives)
* [Communication](#communication-libraries)
* [Math](#math-apis)
* [Random number generators](#random-number-apis)
* [HIP runtime](#hip-runtime)
* [ROCm tools and compilers](./reference/rocm-tools.md)
* [GPU hardware specifications](./reference/gpu-arch-specs.rst)
:::
<!-- markdownlint-enable MD051 -->

View File

@@ -9,13 +9,15 @@
# ROCm libraries
::::{grid} 1 2 2 2
:gutter: 3
:class-container: rocm-doc-grid
(artificial-intelligence-apis)=
:::{grid-item-card} Machine Learning and Computer Vision
:class-body: rocm-card-banner rocm-hue-3
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-ai.jpg
:img-alt: Artificial intelligence APIs
:padding: 2
* {doc}`Composable Kernel <composable_kernel:index>`
* {doc}`MIGraphX <amdmigraphx:index>`
@@ -29,8 +31,11 @@
(cpp-primitives)=
:::{grid-item-card} Primitives
:class-body: rocm-card-banner rocm-hue-12
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-cpp-primitives.jpg
:img-alt: C++ primitives
:padding: 2
* {doc}`hipCUB <hipcub:index>`
* {doc}`hipTensor <hiptensor:index>`
@@ -40,16 +45,22 @@
(communication-libraries)=
:::{grid-item-card} Communication
:class-body: rocm-card-banner rocm-hue-7
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-communication.jpg
:img-alt: Communication APIs
:padding: 2
* {doc}`RCCL <rccl:index>`
:::
(math-apis)=
:::{grid-item-card} Math
:class-body: rocm-card-banner rocm-hue-6
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-math.jpg
:img-alt: Math APIs
:padding: 2
* [half](https://github.com/ROCm/half)
* {doc}`hipBLAS <hipblas:index>` / {doc}`rocBLAS <rocblas:index>`

View File

@@ -9,13 +9,15 @@
# ROCm tools, compilers, and runtimes
::::{grid} 1 2 2 2
:gutter: 3
:class-container: rocm-doc-grid
(system-tools)=
:::{grid-item-card} System Management
:class-body: rocm-card-banner rocm-hue-1
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-system.jpg
:img-alt: System tools
:padding: 2
* {doc}`AMD SMI <amdsmi:index>`
* {doc}`ROCm Data Center Tool <rdc:index>`
@@ -26,8 +28,11 @@
(performance-tools)=
:::{grid-item-card} Performance
:class-body: rocm-card-banner rocm-hue-6
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-performance.jpg
:img-alt: Performance tools
:padding: 2
* {doc}`Omniperf <omniperf:index>`
* {doc}`Omnitrace <omnitrace:index>`
@@ -35,12 +40,16 @@
* {doc}`ROCProfiler <rocprofiler:index>`
* {doc}`ROCprofiler-SDK <rocprofiler-sdk:index>`
* {doc}`ROCTracer <roctracer:index>`
* {doc}`TransferBench <transferbench:index>`
:::
(development-tools)=
:::{grid-item-card} Development
:class-body: rocm-card-banner rocm-hue-1
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-development.jpg
:img-alt: Development tools
:padding: 2
* {doc}`ROCm CMake <rocmcmakebuildtools:index>`
* {doc}`HIPIFY <hipify:index>`
@@ -51,8 +60,11 @@
(compilers)=
:::{grid-item-card} Compilers
:class-body: rocm-card-banner rocm-hue-8
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-compilers.jpg
:img-alt: Compilers
:padding: 2
* {doc}`ROCm Compilers <llvm-project:index>`
* {doc}`HIPCC <hipcc:index>`
@@ -61,8 +73,11 @@
(runtimes)=
:::{grid-item-card} Runtimes
:class-body: rocm-card-banner rocm-hue-12
:::{grid-item-card}
:class-card: sd-text-black
:img-top: ../data/reference/banner-runtimes.jpg
:img-alt: Runtimes
:padding: 2
* {doc}`AMD Common Language Runtime (CLR) <hip:understand/amd_clr>`
* {doc}`HIP <hip:index>`

View File

@@ -8,8 +8,6 @@
| Version | Release date |
| ------- | ------------ |
| [6.2.2](https://rocm.docs.amd.com/en/docs-6.2.2/) | September 27, 2024 |
| [6.2.1](https://rocm.docs.amd.com/en/docs-6.2.1/) | September 20, 2024 |
| [6.2.0](https://rocm.docs.amd.com/en/docs-6.2.0/) | August 2, 2024 |
| [6.1.2](https://rocm.docs.amd.com/en/docs-6.1.2/) | June 4, 2024 |
| [6.1.1](https://rocm.docs.amd.com/en/docs-6.1.1/) | May 8, 2024 |

View File

@@ -77,11 +77,9 @@ subtrees:
title: System tuning
- file: how-to/tuning-guides/mi300x/workload.rst
title: Workload tuning
- url: https://rocm.docs.amd.com/projects/gpu-cluster-networking/en/${branch}/index.html
title: GPU cluster networking
- file: how-to/system-debugging.md
- file: how-to/gpu-enabled-mpi.rst
title: Using MPI
- file: how-to/system-debugging.md
- file: conceptual/compiler-topics.md
title: Using advanced compiler features
subtrees:
@@ -102,17 +100,13 @@ subtrees:
- file: compatibility/compatibility-matrix.rst
title: Compatibility matrix
- url: https://rocm.docs.amd.com/projects/install-on-linux/en/${branch}/reference/system-requirements.html
title: Linux system requirements
title: Linux
- url: https://rocm.docs.amd.com/projects/install-on-windows/en/${branch}/reference/system-requirements.html
title: Windows system requirements
title: Windows
- file: compatibility/precision-support.rst
title: Precision support
- url: https://rocm.docs.amd.com/projects/install-on-linux/en/${branch}/reference/3rd-party-support-matrix.html
title: Third-party support
- url: https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/user-kernel-space-compat-matrix.html
title: User and kernel-space support matrix
- url: https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/docker-image-support-matrix.html
title: Docker image support matrix
- url: https://rocm.docs.amd.com/projects/radeon/en/latest/index.html
title: Use ROCm on Radeon GPUs
title: Third-party
- caption: Conceptual
entries:
@@ -169,18 +163,20 @@ subtrees:
title: ROCm tools, compilers, and runtimes
- file: reference/gpu-arch-specs.rst
title: Hardware specifications
- file: reference/precision-support.rst
title: Precision support
- caption: Contribute
entries:
- file: contribute/contributing.md
title: Contributing to the ROCm docmentation
title: Contribute to ROCm docs
subtrees:
- entries:
- file: contribute/doc-structure.md
title: Documentation structure
- file: contribute/toolchain.md
title: ROCm documentation toolchain
title: Documentation toolchain
- file: contribute/building.md
title: Build our documentation
- file: contribute/feedback.md
title: Providing feedback about the ROCm documentation
title: Provide feedback
- file: about/license.md
title: ROCm licenses
title: ROCm license

View File

@@ -1,2 +1,2 @@
rocm-docs-core==1.8.2
rocm-docs-core==1.7.2
sphinx-reredirects

View File

@@ -92,7 +92,7 @@ requests==2.32.3
# via
# pygithub
# sphinx
rocm-docs-core==1.8.2
rocm-docs-core==1.7.2
# via -r requirements.in
smmap==5.0.1
# via gitdb

View File

@@ -0,0 +1,54 @@
# Conceptual documentation
:::::{grid} 1 1 2 2
:gutter: 1
:::{grid-item-card}
**[Compiler nomenclature](./compiler-disambiguation.md)**
ROCm ships multiple compilers of varying origins and purposes. This article
disambiguates compiler naming used throughout the documentation.
:::
:::{grid-item-card}
**[Using CMake](./cmake-packages.rst)**
ROCm components ship with 1st party CMake support. This article details how that
support works and how to use it.
:::
:::{grid-item-card}
**[Linux folder structure reorganization](./file-reorg.md)**
ROCm™ packages have adopted the Linux foundation file system hierarchy standard
to ensure ROCm components follow open source conventions for Linux-based
distributions.
:::
:::{grid-item-card}
**[GPU isolation techniques](./gpu-isolation.md)**
Restricting the access of applications to a subset of GPUs, aka isolating GPUs
allows users to hide GPU resources from programs.
:::
:::{grid-item-card}
**[GPU architectures](./gpu-arch.md)**
AMD documentation around architectural details from both the CDNA and RDNA
product lines.
:::
:::{grid-item-card}
**[GPU memory](./gpu-memory.md)**
Learn about the different types of memory allocations.
:::
:::::

View File

@@ -0,0 +1 @@
# GPU Libraries

34
docs/temp/how-to-index.md Normal file
View File

@@ -0,0 +1,34 @@
# How-to documentation
:::::{grid} 1 1 2 2
:gutter: 1
:::{grid-item-card}
**[Tuning guides](./tuning-guides/index.md)**
Use case-specific system setup and tuning guides.
:::
:::{grid-item-card}
**[Deep-learning guide](./deep-learning-rocm.md)**
Installation of various deep learning frameworks and applications.
:::
:::{grid-item-card}
**[GPU-enabled MPI](./gpu-enabled-mpi.rst)**
This chapter exemplifies how to set up Open MPI with the ROCm platform.
:::
:::{grid-item-card}
**[System debugging guide](./system-debugging.md)**
Useful commands to debug misbehaving ROCm installations.
:::
:::::

View File

@@ -0,0 +1,30 @@
# ROCm tutorials
:::::{grid} 1 1 2 2
:gutter: 1
:::{grid-item-card}
**[Installing ROCm](./install/index.md)**
Learn how to install ROCm on Linux and Windows.
:::
:::{grid-item-card}
**[ROCm examples](https://github.com/amd/rocm-examples)**
Sample code demonstrating the HIP API and ROCm-accelerated domain libraries.
:::
:::{grid-item-card}
**Artificial intelligence**
Detailed walkthroughs of specific artificial intelligence use cases using ROCm acceleration.
* [Implementing Inception v3 on ROCm with PyTorch](../conceptual/ai-pytorch-inception.md)
* [Optimizing inference with MIGraphX](../conceptual/ai-migraphx-optimization.md)
:::
:::::

View File

@@ -0,0 +1 @@
# Kernel and User Space Compatibility

View File

@@ -0,0 +1 @@
# Packaging Guidelines

64
docs/temp/rocm-a-z.md Normal file
View File

@@ -0,0 +1,64 @@
# ROCm A-Z
:::{table}
:name: rocm-a-z
| ROCm product | Description |
| :---------------- | :------------ |
| [AMD Compute Language Runtimes (CLR)](https://github.com/ROCm/clr) | Contains source code for AMD's compute languages runtimes: {doc}`HIP <hip:index>` and OpenCL |
| [AMDMIGraphX](https://github.com/ROCm/AMDMIGraphX/) | A graph inference engine that accelerates machine learning model inference |
| [AOMP](https://github.com/ROCm/aomp/) | A scripted build of [LLVM](https://github.com/ROCm/llvm-project) and supporting software |
| [Asynchronous Task and Memory Interface (ATMI)](https://github.com/ROCm/atmi/) | A runtime framework for efficient task management in heterogeneous CPU-GPU systems |
| [Composable Kernel](https://rocm.docs.amd.com/projects/composable_kernel/en/latest/) | A library that aims to provide a programming model for writing performance critical kernels for machine learning workloads across multiple architectures |
| [Flang](https://github.com/ROCm/flang/) | An out-of-tree Fortran compiler targeting LLVM |
| [Half-precision floating point library (half)](https://github.com/ROCm/half/) | A C++ header-only library that provides an IEEE 754 conformant, 16-bit half-precision floating-point type along with corresponding arithmetic operators, type conversions, and common mathematical functions |
| {doc}`HIP <hip:index>` | AMDs GPU programming language extension and the GPU runtime |
| [hipBLAS](https://github.com/ROCm/hipBLAS/) | A BLAS-marshaling library that supports [rocBLAS](https://rocm.docs.amd.com/projects/rocBLAS/en/latest/) and cuBLAS backends |
| [HIPCC](https://rocm.docs.amd.com/projects/HIPCC/en/latest/) | A compiler driver utility that calls Clang or NVCC and passes the appropriate include and library options for the target compiler and HIP infrastructure |
| [hipCUB](https://rocm.docs.amd.com/projects/hipCUB/en/latest/) | A thin header-only wrapper library on top of [rocPRIM](https://rocm.docs.amd.com/projects/rocPRIM/en/latest/) or CUB that allows project porting using the CUB library to the HIP layer |
| [hipFFT](https://rocm.docs.amd.com/projects/hipFFT/en/latest/) | An FFT-marshalling library that supports rocFFT or cuFFT backends |
| [hipfort](https://rocm.docs.amd.com/projects/hipfort/en/latest/) | A Fortran interface library for accessing GPU Kernels |
| {doc}`HIPIFY <hipify:index>` | A set of tools for translating CUDA source code into portable HIP C++ |
| [hipify-clang](https://rocm.docs.amd.com/projects/HIPIFY/en/latest/hipify-clang.html) | A Clang-based tool for translating CUDA sources into HIP sources |
| [hipify-perl](https://rocm.docs.amd.com/projects/HIPIFY/en/latest/hipify-perl.html) | An autogenerated, perl-based script that translates CUDA source code into portable HIP C++ |
| [hipSOLVER](https://rocm.docs.amd.com/projects/hipSOLVER/en/latest/) | A LAPACK-marshalling library that supports [rocSOLVER](https://rocm.docs.amd.com/projects/rocSOLVER/en/latest/) and cuSOLVER backends |
| [hipSPARSE](https://rocm.docs.amd.com/projects/hipSPARSE/en/latest/) | A SPARSE-marshalling library that supports [rocSPARSE](https://rocm.docs.amd.com/projects/rocSPARSE/en/latest/) and cuSPARSE backends |
| [hipTensor](https://github.com/ROCm/hipTensor) | AMD's C++ library for accelerating tensor primitives based on the composable kernel library |
| [LLVM](https://github.com/ROCm/llvm-project) | A toolkit for the construction of highly optimized compilers, optimizers, and run-time environments |
| [MIGraphX](https://rocm.docs.amd.com/projects/AMDMIGraphX/en/latest/) | A graph inference engine that accelerates machine learning model inference |
| [MIOpen](https://rocm.docs.amd.com/projects/MIOpen/en/latest/) | An open source deep-learning library |
| [MIOpenGEMM](https://github.com/ROCm/MIOpenGEMM) | An OpenCL general matrix multiplication (GEMM) API and kernel generator |
| [MIOpenTensile](https://github.com/ROCm/MIOpenTensile) | Provides host-callable interfaces to Tensile library |
| [MIVisionX](https://rocm.docs.amd.com/projects/MIVisionX/en/latest/doxygen/html/index.html) | A set of comprehensive computer vision and machine learning libraries, utilities, and applications |
| [Radeon Compute Profiler (RCP)](https://github.com/GPUOpen-Tools/radeon_compute_profiler/) | A performance analysis tool that gathers data from the API run-time and GPU for OpenCL and ROCm/HSA applications |
| [RCCL](https://rocm.docs.amd.com/projects/rccl/en/latest/) | A standalone library that provides multi-GPU and multi-node collective communication primitives |
| [rocAL](https://rocm.docs.amd.com/projects/rocAL/en/latest/doxygen/html/index.html) | An augmentation library designed to decode and process images and videos |
| [rocALUTION](https://rocm.docs.amd.com/projects/rocALUTION/en/latest/) | A sparse linear algebra library for exploring fine-grained parallelism on ROCm runtime and toolchains |
| [RocBandwidthTest](https://github.com/ROCm/rocm_bandwidth_test/) | Captures the performance characteristics of buffer copying and kernel read/write operations |
| [rocBLAS](https://rocm.docs.amd.com/projects/rocBLAS/en/latest/)| A BLAS implementation (in the HIP programming language) on the ROCm runtime and toolchains |
| [rocFFT](https://rocm.docs.amd.com/projects/rocFFT/en/latest/) | A software library for computing fast Fourier transforms (FFTs) written in HIP |
| [ROCK-Kernel-Driver](https://github.com/ROCm/ROCK-Kernel-Driver/) | An AMDGPU Driver with KFD that is used by ROCm |
| [ROCm Augmentation Library (rocAL)](https://rocm.docs.amd.com/projects/rocAL/en/latest/doxygen/html/index.html) | An augmentation library designed to decode and process images and videos |
| [ROCmCC](https://rocm.docs.amd.com/en/latest/reference/rocmcc/rocmcc.html) | A Clang/LLVM-based compiler |
| [ROCm cmake](https://github.com/ROCm/rocm-cmake) | A collection of CMake modules for common build and development tasks |
| [ROCm Data Center Tool](https://rocm.docs.amd.com/projects/rdc/en/latest/) | Simplifies administration and addresses key infrastructure challenges in AMD GPUs in cluster and data-center environments |
| [ROCm Debug Agent Library (ROCdebug-agent)](https://github.com/ROCm/rocr_debug_agent/) | A library that can print the state of all AMD GPU wavefronts that caused a queue error by sending a SIGQUIT signal to the process while the program is running |
| [ROCm Debugger (ROCgdb)](https://rocm.docs.amd.com/projects/ROCgdb/en/latest/) | A source-level debugger for Linux, based on the GNU Debugger (GDB) |
| [ROCm Debugger API (ROCdbgapi)](https://rocm.docs.amd.com/projects/ROCdbgapi/en/latest/) | The ROCm debugger library |
| [rocminfo](https://github.com/ROCm/rocminfo/) | Reports system information |
| [ROCm SMI](https://github.com/ROCm/rocm_smi_lib/) | A C library for Linux that provides a user space interface for applications to monitor and control GPU applications |
| [ROCm Validation Suite](https://rocm.docs.amd.com/projects/ROCmValidationSuite/en/latest/) | A tool for detecting and troubleshooting common problems affecting AMD GPUs running in a high-performance computing environment |
| [rocPRIM](https://rocm.docs.amd.com/projects/rocPRIM/en/latest/) | A header-only library for HIP parallel primitives |
| [ROCProfiler](https://rocm.docs.amd.com/projects/rocprofiler/en/latest/profiler_home_page.html) | A profiling tool for HIP applications |
| [rocRAND](https://rocm.docs.amd.com/projects/rocRAND/en/latest/) | Provides functions that generate pseudorandom and quasirandom numbers |
| [ROCR-Runtime](https://github.com/ROCm/ROCR-Runtime/) | User-mode API interfaces and libraries necessary for host applications to launch compute kernels on available HSA ROCm kernel agents |
| [rocSOLVER](https://rocm.docs.amd.com/projects/rocSOLVER/en/latest/) | An implementation of LAPACK routines on the ROCm platform, implemented in the HIP programming language and optimized for AMDs latest discrete GPUs |
| [rocSPARSE](https://rocm.docs.amd.com/projects/rocSPARSE/en/latest/) | Exposes a common interface that provides BLAS for sparse computation implemented on ROCm runtime and toolchains (in the HIP programming language) |
| [rocThrust](https://rocm.docs.amd.com/projects/rocThrust/en/latest/) | A parallel algorithm library |
| [ROCT-Thunk-Interface](https://github.com/ROCm/ROCT-Thunk-Interface/) | User-mode API interfaces used to interact with the ROCk driver |
| [ROCTracer](https://rocm.docs.amd.com/projects/roctracer/en/latest/) | Intercepts runtime API calls and traces asynchronous activity |
| [rocWMMA](https://rocm.docs.amd.com/projects/rocWMMA/en/latest/index.html) | A C++ library for accelerating mixed-precision matrix multiply-accumulate (MMA) operations |
| [Tensile](https://github.com/ROCm/Tensile) | A tool for creating benchmark-driven backend libraries for GEMMs, GEMM-like problems, and general N-dimensional tensor contractions |
| [TransferBench](https://rocm.docs.amd.com/projects/TransferBench/en/latest/) | A utility to benchmark simultaneous transfers between user-specified devices (CPUs/GPUs) |
:::

View File

@@ -0,0 +1,50 @@
# Troubleshooting
**Q: What do I do if I get this error when trying to run PyTorch:**
```bash
hipErrorNoBinaryForGPU: Unable to find code object for all current devices!
```
Ans: The error denotes that the installation of PyTorch and/or other
dependencies or libraries do not support the current GPU.
**Workaround:**
To implement a workaround, follow these steps:
1. Confirm that the hardware supports the ROCm stack. Refer to
{ref}`linux-support` and {ref}`windows-support`.
2. Determine the gfx target.
```bash
rocminfo | grep gfx
```
3. Check if PyTorch is compiled with the correct gfx target.
```bash
TORCHDIR=$( dirname $( python3 -c 'import torch; print(torch.__file__)' ) )
roc-obj-ls -v $TORCHDIR/lib/libtorch_hip.so # check for gfx target
```
:::{note}
Recompile PyTorch with the right gfx target if compiling from the source if
the hardware is not supported. For wheels or Docker installation, contact
ROCm support [^ROCm_issues].
:::
**Q: Why am I unable to access Docker or GPU in user accounts?**
Ans: Ensure that the user is added to docker, video, and render Linux groups as
described in the ROCm Installation Guide at {ref}`linux_group_permissions`.
**Q: Can I install PyTorch directly on bare metal?**
Ans: Bare-metal installation of PyTorch is supported through wheels. Refer to
Option 2: Install PyTorch Using Wheels Package. See {doc}`PyTorch for ROCm<rocm-install-on-linux:pytorch-install>` for more information.
**Q: How do I profile PyTorch workloads?**
Ans: Use the PyTorch Profiler to profile GPU kernels on ROCm.

View File

@@ -119,6 +119,8 @@ Performance
":doc:`ROCProfiler <rocprofiler:index>`", "Profiling tool for HIP applications"
":doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`", "Toolkit for developing analysis tools for profiling and tracing GPU compute applications. This toolkit is in beta and subject to change"
":doc:`ROCTracer <roctracer:index>`", "Intercepts runtime API calls and traces asynchronous activity"
":doc:`TransferBench <transferbench:index>`", "Utility to benchmark simultaneous transfers between user-specified devices (CPUs or GPUs)"
Development
^^^^^^^^^^^

View File

@@ -20,16 +20,16 @@
* Run this for 5.6.0 (change for whatever version you require)
* `GITHUB_ACCESS_TOKEN=my_token_here`
To generate the changelog from 5.0.0 up to and including 6.2.0:
To generate the changelog from 5.0.0 up to and including 6.1.2:
```sh
python3 tag_script.py -t $GITHUB_ACCESS_TOKEN --no-release --no-pulls --starting-version=5.0.0 --compile_file ../../CHANGELOG.md --branch release/rocm-rel-6.2 6.2.0
python3 tag_script.py -t $GITHUB_ACCESS_TOKEN --no-release --no-pulls --do-previous --compile_file ../../CHANGELOG.md --branch release/rocm-rel-6.1 6.1.2
```
To generate the release notes only for 6.2.0:
To generate the release notes only for 6.1.2:
```sh
python3 tag_script.py -t $GITHUB_ACCESS_TOKEN --no-release --no-pulls --compile_file ../../RELEASE.md --branch release/rocm-rel-6.2 6.2.0
python3 tag_script.py -t $GITHUB_ACCESS_TOKEN --no-release --no-pulls --compile_file ../../RELEASE.md --branch release/rocm-rel-6.1 6.1.2
```
### Notes
@@ -37,7 +37,7 @@ python3 tag_script.py -t $GITHUB_ACCESS_TOKEN --no-release --no-pulls --compile_
> If branch cannot be found, edit default.xml at root.
> Sometimes the script doesn't know whether to include or exclude an entry for a specific release. Continue this part by accepting (Y) or rejecting (N) entries.
> The end result should be a newly generated changelog in the project root.
> If the `--starting-version` flag is not set, the script will not get changelogs from previous versions.
> Compiling the changelog without the `--do-previous`-flag will always think that all libraries are new since no previous version of said library has been parsed.
> Trying to run without a token is possible but GitHub enforces stricter rate limits and is therefore not advised.
* Copy over the first part of the changelog and replace the old release notes in RELEASE.md.

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="rocm-org" fetch="https://github.com/ROCm/" />
<default revision="refs/tags/rocm-6.2.2"
<default revision="refs/tags/rocm-6.1.1"
remote="rocm-org"
sync-c="true"
sync-j="4" />

View File

@@ -91,7 +91,7 @@ class TaggingArgs(argparse.Namespace):
return defaults + (self._exclude if self._exclude is not None else [])
def parse_arguments() -> TaggingArgs:
def parse_args() -> TaggingArgs:
"""Parse arguments."""
def add_arg_pair(
@@ -153,10 +153,7 @@ def parse_arguments() -> TaggingArgs:
)
add_arg_pair(parser, "release", "the tag & release.")
add_arg_pair(parser, "pulls", "the pull requests to internal repos.")
parser.add_argument(
"--starting-version",
help="The starting version for the autotag script.",
)
add_arg_pair(parser, "previous", " use previous versions as required.")
parser.add_argument(
"--manifest-url",
help="The url to download the manifest.xml file from.",
@@ -186,7 +183,7 @@ def parse_arguments() -> TaggingArgs:
def run_tagging():
"""Run the tagging/releasing process on each specified library."""
args = parse_arguments()
args = parse_args()
# Use the manifest included in the ROCm GitHub repository by default.
if args.manifest_url is None:
@@ -242,7 +239,7 @@ def run_tagging():
"compilers",
"runtimes",
]
projects = []
projects = [ ]
for project in manifest_tree.iterfind(".//project"):
if project.get("category") in included_categories:
projects.append(project)
@@ -253,8 +250,8 @@ def run_tagging():
entry.get("category"),
) for entry in projects)
# Get all the relevant ROCm releases
minimum_version = args.version if not args.starting_version else args.starting_version
# Get all the relevant ROCm releases, and only the last version if not doing previous.
minimum_version = "5.0.0" if args.previous else args.version
releases = release_bundle_factory.create_data_dict(args.version, component_information, minimum_version)
# Process the individual releases.
@@ -263,11 +260,10 @@ def run_tagging():
for (_, library) in release.libraries.items():
# Parse the changelog for each library and each version
try:
is_starting_version_set = True if args.starting_version else False
success = PROCESSORS[library.name](
library,
TEMPLATES[library.name],
is_starting_version_set,
args.previous,
Version(version) < Version(args.version)
)
except Exception as e:

View File

@@ -1,75 +1,58 @@
<!-- Do not edit this file! -->
<!-- This file is autogenerated with -->
# Release notes
<!-- Do not edit this file! This file is autogenerated with -->
<!-- tools/autotag/tag_script.py -->
<!-- Disable lints since this is an auto-generated file. -->
<!-- markdownlint-disable blanks-around-headers -->
<!-- markdownlint-disable no-duplicate-header -->
<!-- markdownlint-disable no-blanks-blockquote -->
<!-- markdownlint-disable ul-indent -->
<!-- markdownlint-disable no-trailing-spaces -->
{#-
<!-- Disable lints that conflict with jinja. -->
<!-- markdownlint-disable reference-links-images -->
<!-- markdownlint-disable no-missing-space-atx -->
<!-- spellcheck-disable -->
{%- for version, release in releases %}
# ROCm {{version}} release notes
#}
<!-- spellcheck-disable -->
This page contains the release notes for AMD ROCm™ Software.
{%- for version, release in releases %}
-------------------
## ROCm {{version}}
{{- "\n\n" -}}
{%- set highlights = "./highlights/" ~ version ~ ".md" %}
{%- include highlights ignore missing -%}
{{- "\n\n" -}}
{%- set support = "./support/" ~ version ~ ".md" %}
{%- include support ignore missing -%}
{{- "\n\n" -}}
## ROCm components
### Library changes in ROCm {{version}}
<div class="pst-scrollable-table-container">
<table id="rocm-rn-components" class="table">
<thead>
<tr>
<th>Category</th>
<th>Group</th>
<th>Name</th>
<th>Version</th>
<th></th>
</tr>
</thead>
<colgroup>
<col span="1">
<col span="1">
</colgroup>
<tbody>
| Category | Group | Name | Version | Repository |
|----------|-------|------|---------|------------|
{%- for lib_name in release.libraries %}
{%- set lib = release.libraries[lib_name] %}
{%- if rocm_ver_by_lib_ver[lib_name][lib.lib_version] == version and (prev_lib_ver[lib_name][lib.lib_version] | default([]) | length > 0) and lib.lib_version %}
<tr>
<th>{{ lib.category }}</th>
<th>{{ lib.group }}</th>
<td><a href="{{ lib.documentation_page }}">{{ lib_name }}</a></td>
<td>{{ prev_lib_ver[lib_name][lib.lib_version] }}&nbsp;&Rightarrow;&nbsp;<a href="{{ lib.release_url }}">{{ lib.lib_version }}</a></td>
<td><a href="{{ lib.repository_url }}"><i class="fab fa-github fa-lg"></i></a></td>
</tr>
| {{ lib.category }} | {{ lib.group }} | [{{ lib_name }}]({{ lib.documentation_page }}) | {{prev_lib_ver[lib_name][lib.lib_version]}} ⇒ [{{ lib.lib_version }}]({{ lib.release_url }}) | [ROCm/{{ lib_name }}]({{ lib.repository_url }}) |
{%- elif lib.lib_version %}
<tr>
<th>{{ lib.category }}</th>
<th>{{ lib.group }}</th>
<td><a href="{{ lib.documentation_page }}">{{ lib_name }}</a></td>
<td><a href="{{ lib.release_url }}">{{ lib.lib_version }}</a></td>
<td><a href="{{ lib.repository_url }}"><i class="fab fa-github fa-lg"></i></a></td>
</tr>
| {{ lib.category }} | {{ lib.group }} | [{{ lib_name }}]({{ lib.documentation_page }}) | [{{ lib.lib_version }}]({{ lib.release_url }}) | [ROCm/{{ lib_name }}]({{ lib.repository_url }}) |
{%- endif %}
{%- endfor %}{# lib_name in release.libraries #}
</tbody>
</table>
</div>
{%- endfor %}
{%- for lib_name, lib in release.libraries | dictsort %}
{%- if rocm_ver_by_lib_ver[lib_name][lib.lib_version] == version and lib.lib_version%}
### **{{lib_name}}** ({{ lib.lib_version }})
#### {{lib_name}}
{{lib.message}}
{%- for type, change in lib.data.changes.items() %}
#### {{type|title}}
##### {{type|title}}
{{change|trim|e}}
@@ -83,9 +66,6 @@
{%- set known_issues = "./known_issues/" ~ version ~ ".md" %}
{%- include known_issues ignore missing -%}
{{- "\n\n" -}}
{%- set resolved_issues = "./resolved_issues/" ~ version ~ ".md" %}
{%- include resolved_issues ignore missing -%}
{{- "\n\n" -}}
{%- set upcoming_changes = "./upcoming_changes/" ~ version ~ ".md" %}
{%- include upcoming_changes ignore missing -%}

View File

@@ -1,28 +1,3 @@
The release notes provide a comprehensive summary of changes since the previous ROCm release.
- [Release highlights](release-highlights)
- [Operating system and hardware support changes](operating-system-and-hardware-support-changes)
- [ROCm components versioning](rocm-components)
- [Detailed component changes](detailed-component-changes)
- [ROCm known issues](rocm-known-issues)
- [ROCm upcoming changes](rocm-upcoming-changes)
The [Compatibility matrix](https://rocm.docs.amd.com/en/docs-6.2.0/compatibility/compatibility-matrix.html)
provides an overview of operating system, hardware, ecosystem, and ROCm component support across ROCm releases.
Release notes for previous ROCm releases are available in earlier versions of the documentation.
See the [ROCm documentation release history](https://rocm.docs.amd.com/en/latest/release/versions.html).
## Release highlights
This section introduces notable new features and improvements in ROCm 6.2. See the
[Detailed component changes](#detailed-component-changes) for individual component changes.
### New components
ROCm 6.2.0 introduces the following new components to the ROCm software stack.

View File

@@ -1,58 +0,0 @@
The release notes provide a summary of notable changes since the previous ROCm release.
- [Release highlights](release-highlights)
- [Operating system and hardware support changes](operating-system-and-hardware-support-changes)
- [ROCm components versioning](rocm-components)
- [Detailed component changes](detailed-component-changes)
- [ROCm known issues](rocm-known-issues)
- [ROCm upcoming changes](rocm-upcoming-changes)
The [Compatibility matrix](https://rocm.docs.amd.com/en/docs-6.2.1/compatibility/compatibility-matrix.html)
provides the full list of supported hardware, operating systems, ecosystems, third-party components, and ROCm components for each ROCm release.
Release notes for previous ROCm releases are available in earlier versions of the documentation.
See the [ROCm documentation release history](https://rocm.docs.amd.com/en/latest/release/versions.html).
## Release highlights
The following are notable new features and improvements in ROCm 6.2.1. For changes to individual components, see [Detailed component changes](#detailed-component-changes).
### rocAL major version change
The new version of rocAL introduces many new features, but does not modify any of the existing public API functions. However, the version number was incremented from 1.3 to 2.0.
Applications linked to version 1.3 must be recompiled to link against version 2.0.
See [the rocAL detailed changes](#rocal-2-0-0) for more information.
### New support for FBGEMM (Facebook General Matrix Multiplication)
As of ROCm 6.2.1, ROCm supports Facebook General Matrix Multiplication (FBGEMM) and the related FBGEMM_GPU library.
FBGEMM is a low-precision, high-performance CPU kernel library for convolution and matrix multiplication. It is used for server-side inference and as a back end for PyTorch quantized operators. FBGEMM_GPU includes a collection of PyTorch GPU operator libraries for training and inference. For more information, see the ROCm [Model acceleration libraries guide](https://rocm.docs.amd.com/en/docs-6.2.1/how-to/llm-fine-tuning-optimization/model-acceleration-libraries.html)
and [PyTorch's FBGEMM GitHub repository](https://github.com/pytorch/FBGEMM).
### ROCm Offline Installer Creator changes
The [ROCm Offline Installer Creator 6.2.1](https://rocm.docs.amd.com/projects/install-on-linux/en/docs-6.2.1/install/rocm-offline-installer.html) introduces several new features and improvements including:
* Logging support for create and install logs
* More stringent checks for Linux versions and distributions
* Updated prerequisite repositories
* Fixed CTest issues
### ROCm documentation changes
There have been no changes to supported hardware or operating systems from ROCm 6.2.0 to ROCm 6.2.1.
* The Programming Model Reference and Understanding the Programming Model topics in HIP have been consolidated into one topic,
[HIP programming model (conceptual)](https://rocm.docs.amd.com/projects/HIP/en/docs-6.2.1/understand/programming_model.html).
* The [HIP virtual memory management](https://rocm.docs.amd.com/projects/HIP/en/docs-6.2.1/how-to/virtual_memory.html) and [HIP virtual memory management API](https://rocm.docs.amd.com/projects/HIP/en/docs-6.2.1/reference/virtual_memory_reference.html) topics have been added.
```{note}
The ROCm documentation, like all ROCm projects, is open source and available on GitHub. To contribute to ROCm documentation, see the [ROCm documentation contribution guidelines](https://rocm.docs.amd.com/en/latest/contribute/contributing.html).
```

View File

@@ -1,31 +0,0 @@
These release notes provide a summary of notable changes since the previous ROCm release.
```{note}
As ROCm 6.2.2 was released shortly after 6.2.1, the changes between these versions
are minimal. For a comprehensive overview of recent updates, the ROCm 6.2.1 release
notes are appended to the end of this document.
For detailed information about the changes in ROCm 6.2.1, refer to the appended
section: [ROCm 6.2.1 release notes](rocm-6-2-1-release-notes).
```
The [Compatibility matrix](https://rocm.docs.amd.com/en/docs-6.2.2/compatibility/compatibility-matrix.html)
provides the full list of supported hardware, operating systems, ecosystems, third-party components, and ROCm components
for each ROCm release.
Release notes for previous ROCm releases are available in earlier versions of the documentation.
See the [ROCm documentation release history](https://rocm.docs.amd.com/en/latest/release/versions.html).
## Release highlights
The following is a significant fix introduced in ROCm 6.2.2.
### Fixed Instinct MI300X error recovery failure
Improved the reliability of AMD Instinct MI300X accelerators in scenarios involving
uncorrectable errors. Previously, error recovery did not occur as expected,
potentially leaving the system in an undefined state. This fix ensures that error
recovery functions as expected, maintaining system stability.
See the [original issue](#instinct-mi300x-gpu-recovery-failure-on-uncorrectable-errors)
noted in the ROCm 6.2.1 release notes.

View File

@@ -1,86 +0,0 @@
## ROCm known issues
ROCm known issues are noted on {fab}`github` [GitHub](https://github.com/ROCm/ROCm/labels/Verified%20Issue). For known
issues related to individual components, review the [Detailed component changes](detailed-component-changes).
### Default processor affinity behavior for helper threads
Processor affinity is a critical setting to ensure that ROCm helper threads run on the correct cores. By default, ROCm
helper threads are spawned on all available cores, ignoring the parent threads processor affinity. This can lead to
threads competing for available cores, which may result in suboptimal performance. This behavior occurs by default if
the environment variable `HSA_OVERRIDE_CPU_AFFINITY_DEBUG` is not set or is set to `1`. If
`HSA_OVERRIDE_CPU_AFFINITY_DEBUG` is set to `0`, the ROCr runtime uses the parent process's core affinity mask when
creating helper threads. The parents affinity mask should then be set to account for the presence of additional threads
by ensuring the affinity mask contains enough cores. Depending on the affinity settings of the software environment,
batch system, launch commands like `numactl`/`taskset`, or explicit mask manipulation by the application itself, changing
the setting may be advantageous to performance.
To ensure the parent's core affinity mask is honored by the ROCm helper threads, set the
`HSA_OVERRIDE_CPU_AFFINITY_DEBUG` environment variable as follows:
```{code} shell
export HSA_OVERRIDE_CPU_AFFINITY_DEBUG=0
```
To ensure ROCm helper threads run on all available cores, set the `HSA_OVERRIDE_CPU_AFFINITY_DEBUG` environment variable
as follows:
``` shell
export HSA_OVERRIDE_CPU_AFFINITY_DEBUG=1
```
Or the default:
``` shell
unset HSA_OVERRIDE_CPU_AFFINITY_DEBUG
```
If unsure of the default processor affinity settings for your environment, run the following command from the shell:
``` shell
bash -c "echo taskset -p \$\$"
```
See [issue #3493](https://github.com/ROCm/ROCm/issues/3493) on GitHub.
### Display issues on servers with Instinct MI300-series accelerators when loading AMDGPU driver
AMD Instinct MI300-series accelerators and third-party GPUs such as the Matrox G200 have an issue impacting video
output. The issue was reproduced on a Dell server model PowerEdge XE9680. Servers from other vendors utilizing Matrox
G200 cards may be impacted as well. This issue was found with ROCm 6.2.0 but is present in older ROCm versions.
The AMDGPU driver shipped with ROCm interferes with the operation of the display card video output. On Dell systems,
this includes both the local video output and remote access via iDRAC. The display appears blank (black) after loading
the `amdgpu` driver modules. Video output impacts both terminal access when running in `runlevel 3` and GUI access when
running in `runlevel 5`. Server functionality can still be accessed via SSH or other remote connection methods.
See [issue #3494](https://github.com/ROCm/ROCm/issues/3494) on GitHub.
### KFDTest failure on Instinct MI300X with Oracle Linux 8.9
The `KFDEvictTest.QueueTest` is failing on the MI300X platform during KFD (Kernel Fusion Driver) tests, causing the full
suite to not execute properly. This issue is suspected to be hardware-related.
See [issue #3495](https://github.com/ROCm/ROCm/issues/3495) on GitHub.
### Bandwidth limitation in gang and non-gang modes on Instinct MI300A
Expected target peak non-gang performance (~60GB/s) and target peak gang performance (~90GB/s) are not achieved. Both gang
and non-gang performance are observed to be limited at 45GB/s.
This issue will be addressed in a future ROCm release.
See [issue #3496](https://github.com/ROCm/ROCm/issues/3496) on GitHub.
### rocm-llvm-alt
ROCm provides an optional package -- `rocm-llvm-alt` -- that provides a closed-source compiler for
users interested in additional closed-source CPU optimizations. This feature is not functional in
the ROCm 6.2.0 release. Users who attempt to invoke the closed-source compiler will experience an
LLVM consumer-producer mismatch and the compilation will fail. There is no workaround that allows
use of the closed-source compiler. It is recommended to compile using the default open-source
compiler, which generates high-quality AMD CPU and AMD GPU code.
See [issue #3492](https://github.com/ROCm/ROCm/issues/3492) on GitHub.

View File

@@ -1,14 +0,0 @@
## ROCm known issues
ROCm known issues are tracked on [GitHub](https://github.com/ROCm/ROCm/labels/Verified%20Issue). Known issues related to
individual components are listed in the [Detailed component changes](detailed-component-changes) section.
### Instinct MI300X GPU recovery failure on uncorrectable errors
For the AMD Instinct MI300X accelerator, GPU recovery resets triggered by uncorrectable errors (UE) might not complete
successfully, which can result in the system being left in an undefined state. A system reboot is needed to recover from
this state. Additionally, error logging might fail in these situations, hindering diagnostics.
This issue is under investigation and will be resolved in a future ROCm release.
See [issue #3766](https://github.com/ROCm/ROCm/issues/3766) on GitHub.

View File

@@ -1,5 +0,0 @@
## Operating system and hardware support changes
ROCm 6.2.1 adds support for Ubuntu 24.04.1 (kernel: 6.8 [GA]).
See the [Compatibility matrix](https://rocm.docs.amd.com/en/docs-6.2.1/compatibility/compatibility-matrix.html) for the full list of supported operating systems and hardware architectures.

View File

@@ -1,3 +1,85 @@
### Default processor affinity behavior for helper threads
Processor affinity is a critical setting to ensure that ROCm helper threads run on the correct cores. By default, ROCm
helper threads are spawned on all available cores, ignoring the parent threads processor affinity. This can lead to
threads competing for available cores, which may result in suboptimal performance. This behavior occurs by default if
the environment variable `HSA_OVERRIDE_CPU_AFFINITY_DEBUG` is not set or is set to `1`. If
`HSA_OVERRIDE_CPU_AFFINITY_DEBUG` is set to `0`, the ROCr runtime uses the parent process's core affinity mask when
creating helper threads. The parents affinity mask should then be set to account for the presence of additional threads
by ensuring the affinity mask contains enough cores. Depending on the affinity settings of the software environment,
batch system, launch commands like `numactl`/`taskset`, or explicit mask manipulation by the application itself, changing
the setting may be advantageous to performance.
To ensure the parent's core affinity mask is honored by the ROCm helper threads, set the
`HSA_OVERRIDE_CPU_AFFINITY_DEBUG` environment variable as follows:
```{code} shell
export HSA_OVERRIDE_CPU_AFFINITY_DEBUG=0
```
To ensure ROCm helper threads run on all available cores, set the `HSA_OVERRIDE_CPU_AFFINITY_DEBUG` environment variable
as follows:
``` shell
export HSA_OVERRIDE_CPU_AFFINITY_DEBUG=1
```
Or the default:
``` shell
unset HSA_OVERRIDE_CPU_AFFINITY_DEBUG
```
If unsure of the default processor affinity settings for your environment, run the following command from the shell:
``` shell
bash -c "echo taskset -p \$\$"
```
See [issue #3493](https://github.com/ROCm/ROCm/issues/3493) on GitHub.
### Display issues on servers with Instinct MI300-series accelerators when loading AMDGPU driver
AMD Instinct MI300-series accelerators and third-party GPUs such as the Matrox G200 have an issue impacting video
output. The issue was reproduced on a Dell server model PowerEdge XE9680. Servers from other vendors utilizing Matrox
G200 cards may be impacted as well. This issue was found with ROCm 6.2.0 but is present in older ROCm versions.
The AMDGPU driver shipped with ROCm interferes with the operation of the display card video output. On Dell systems,
this includes both the local video output and remote access via iDRAC. The display appears blank (black) after loading
the `amdgpu` driver modules. Video output impacts both terminal access when running in `runlevel 3` and GUI access when
running in `runlevel 5`. Server functionality can still be accessed via SSH or other remote connection methods.
See [issue #3494](https://github.com/ROCm/ROCm/issues/3494) on GitHub.
### KFDTest failure on Instinct MI300X with Oracle Linux 8.9
The `KFDEvictTest.QueueTest` is failing on the MI300X platform during KFD (Kernel Fusion Driver) tests, causing the full
suite to not execute properly. This issue is suspected to be hardware-related.
See [issue #3495](https://github.com/ROCm/ROCm/issues/3495) on GitHub.
### Bandwidth limitation in gang and non-gang modes on Instinct MI300A
Expected target peak non-gang performance (~60GB/s) and target peak gang performance (~90GB/s) are not achieved. Both gang
and non-gang performance are observed to be limited at 45GB/s.
This issue will be addressed in a future ROCm release.
See [issue #3496](https://github.com/ROCm/ROCm/issues/3496) on GitHub.
### rocm-llvm-alt
ROCm provides an optional package -- `rocm-llvm-alt` -- that provides a closed-source compiler for
users interested in additional closed-source CPU optimizations. This feature is not functional in
the ROCm 6.2.0 release. Users who attempt to invoke the closed-source compiler will experience an
LLVM consumer-producer mismatch and the compilation will fail. There is no workaround that allows
use of the closed-source compiler. It is recommended to compile using the default open-source
compiler, which generates high-quality AMD CPU and AMD GPU code.
See [issue #3492](https://github.com/ROCm/ROCm/issues/3492) on GitHub.
## ROCm upcoming changes
The section notes upcoming changes to the ROCm software stack. For upcoming changes related to individual components, review

View File

@@ -1,11 +0,0 @@
## ROCm upcoming changes
The following changes to the ROCm software stack are anticipated for future releases.
### rocm-llvm-alt
The `rocm-llvm-alt` package will be removed in an upcoming release. Users relying on the functionality provided by the closed-source compiler should transition to the open-source compiler. Once the `rocm-llvm-alt` package is removed, any compilation requesting functionality provided by the closed-source compiler will result in a Clang warning: "*[AMD] proprietary optimization compiler has been removed*".
### rccl-rdma-sharp-plugins
The RCCL plugin package, `rccl-rdma-sharp-plugins`, will be removed in an upcoming ROCm release.