diff --git a/.github/workflows/build-libtorch-images.yml b/.github/workflows/build-libtorch-images.yml index 16dc352dc..8c125cf77 100644 --- a/.github/workflows/build-libtorch-images.yml +++ b/.github/workflows/build-libtorch-images.yml @@ -52,7 +52,7 @@ jobs: runs-on: linux.12xlarge strategy: matrix: - rocm_version: ["5.7", "6.0"] + rocm_version: ["6.0", "6.1"] env: GPU_ARCH_TYPE: rocm GPU_ARCH_VERSION: ${{ matrix.rocm_version }} diff --git a/.github/workflows/build-manywheel-images.yml b/.github/workflows/build-manywheel-images.yml index c07973ae1..cf7d82828 100644 --- a/.github/workflows/build-manywheel-images.yml +++ b/.github/workflows/build-manywheel-images.yml @@ -79,7 +79,7 @@ jobs: runs-on: linux.12xlarge strategy: matrix: - rocm_version: ["5.7", "6.0"] + rocm_version: ["6.0", "6.1"] env: GPU_ARCH_TYPE: rocm GPU_ARCH_VERSION: ${{ matrix.rocm_version }} diff --git a/common/install_miopen.sh b/common/install_miopen.sh index 09ab251b7..3aef952ef 100644 --- a/common/install_miopen.sh +++ b/common/install_miopen.sh @@ -56,7 +56,10 @@ MIOPEN_CMAKE_COMMON_FLAGS=" -DMIOPEN_BUILD_DRIVER=OFF " # Pull MIOpen repo and set DMIOPEN_EMBED_DB based on ROCm version -if [[ $ROCM_INT -ge 60000 ]] && [[ $ROCM_INT -lt 60100 ]]; then +if [[ $ROCM_INT -ge 60100 ]] && [[ $ROCM_INT -lt 60200 ]]; then + echo "ROCm 6.1 MIOpen does not need any patches, do not build from source" + exit 0 +elif [[ $ROCM_INT -ge 60000 ]] && [[ $ROCM_INT -lt 60100 ]]; then echo "ROCm 6.0 MIOpen does not need any patches, do not build from source" exit 0 elif [[ $ROCM_INT -ge 50700 ]] && [[ $ROCM_INT -lt 60000 ]]; then diff --git a/manywheel/build_all_docker.sh b/manywheel/build_all_docker.sh index e5dae9d67..3e1059491 100644 --- a/manywheel/build_all_docker.sh +++ b/manywheel/build_all_docker.sh @@ -18,7 +18,7 @@ for cuda_version in 12.1 11.8; do MANYLINUX_VERSION=2014 GPU_ARCH_TYPE=cuda GPU_ARCH_VERSION="${cuda_version}" "${TOPDIR}/manywheel/build_docker.sh" done -for rocm_version in 5.7 6.0; do +for rocm_version in 6.0 6.1; do GPU_ARCH_TYPE=rocm GPU_ARCH_VERSION="${rocm_version}" "${TOPDIR}/manywheel/build_docker.sh" MANYLINUX_VERSION=2014 GPU_ARCH_TYPE=rocm GPU_ARCH_VERSION="${rocm_version}" "${TOPDIR}/manywheel/build_docker.sh" done diff --git a/manywheel/build_rocm.sh b/manywheel/build_rocm.sh index 6aad51db2..800539f8a 100755 --- a/manywheel/build_rocm.sh +++ b/manywheel/build_rocm.sh @@ -111,6 +111,10 @@ if [[ $ROCM_INT -ge 50400 ]]; then ROCM_SO_FILES+=("libhiprtc.so") fi +if [[ $ROCM_INT -ge 60100 ]]; then + ROCM_SO_FILES+=("librocprofiler-register.so") +fi + OS_NAME=`awk -F= '/^NAME/{print $2}' /etc/os-release` if [[ "$OS_NAME" == *"CentOS Linux"* ]]; then LIBGOMP_PATH="/usr/lib64/libgomp.so.1" @@ -119,6 +123,20 @@ if [[ "$OS_NAME" == *"CentOS Linux"* ]]; then LIBTINFO_PATH="/usr/lib64/libtinfo.so.5" LIBDRM_PATH="/opt/amdgpu/lib64/libdrm.so.2" LIBDRM_AMDGPU_PATH="/opt/amdgpu/lib64/libdrm_amdgpu.so.1" + if [[ $ROCM_INT -ge 60100 ]]; then + # Below libs are direct dependencies of libhipsolver + LIBSUITESPARSE_CONFIG_PATH="/lib64/libsuitesparseconfig.so.4" + LIBCHOLMOD_PATH="/lib64/libcholmod.so.2" + # Below libs are direct dependencies of libcholmod + LIBAMD_PATH="/lib64/libamd.so.2" + LIBCAMD_PATH="/lib64/libcamd.so.2" + LIBCCOLAMD_PATH="/lib64/libccolamd.so.2" + LIBCOLAMD_PATH="/lib64/libcolamd.so.2" + LIBSATLAS_PATH="/lib64/atlas/libsatlas.so.3" + # Below libs are direct dependencies of libsatlas + LIBGFORTRAN_PATH="/lib64/libgfortran.so.3" + LIBQUADMATH_PATH="/lib64/libquadmath.so.0" + fi MAYBE_LIB64=lib64 elif [[ "$OS_NAME" == *"Ubuntu"* ]]; then LIBGOMP_PATH="/usr/lib/x86_64-linux-gnu/libgomp.so.1" @@ -131,11 +149,34 @@ elif [[ "$OS_NAME" == *"Ubuntu"* ]]; then fi LIBDRM_PATH="/usr/lib/x86_64-linux-gnu/libdrm.so.2" LIBDRM_AMDGPU_PATH="/usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1" + if [[ $ROCM_INT -ge 60100 ]]; then + # Below libs are direct dependencies of libhipsolver + LIBCHOLMOD_PATH="/lib/x86_64-linux-gnu/libcholmod.so.3" + # Below libs are direct dependencies of libcholmod + LIBSUITESPARSE_CONFIG_PATH="/lib/x86_64-linux-gnu/libsuitesparseconfig.so.5" + LIBAMD_PATH="/lib/x86_64-linux-gnu/libamd.so.2" + LIBCAMD_PATH="/lib/x86_64-linux-gnu/libcamd.so.2" + LIBCCOLAMD_PATH="/lib/x86_64-linux-gnu/libccolamd.so.2" + LIBCOLAMD_PATH="/lib/x86_64-linux-gnu/libcolamd.so.2" + LIBMETIS_PATH="/lib/x86_64-linux-gnu/libmetis.so.5" + LIBLAPACK_PATH="/lib/x86_64-linux-gnu/liblapack.so.3" + LIBBLAS_PATH="/lib/x86_64-linux-gnu/libblas.so.3" + # Below libs are direct dependencies of libblas + LIBGFORTRAN_PATH="/lib/x86_64-linux-gnu/libgfortran.so.5" + LIBQUADMATH_PATH="/lib/x86_64-linux-gnu/libquadmath.so.0" + fi MAYBE_LIB64=lib fi OS_SO_PATHS=($LIBGOMP_PATH $LIBNUMA_PATH\ $LIBELF_PATH $LIBTINFO_PATH\ - $LIBDRM_PATH $LIBDRM_AMDGPU_PATH) + $LIBDRM_PATH $LIBDRM_AMDGPU_PATH\ + $LIBSUITESPARSE_CONFIG_PATH\ + $LIBCHOLMOD_PATH $LIBAMD_PATH\ + $LIBCAMD_PATH $LIBCCOLAMD_PATH\ + $LIBCOLAMD_PATH $LIBSATLAS_PATH\ + $LIBGFORTRAN_PATH $LIBQUADMATH_PATH\ + $LIBMETIS_PATH $LIBLAPACK_PATH\ + $LIBBLAS_PATH) OS_SO_FILES=() for lib in "${OS_SO_PATHS[@]}" do