diff --git a/.github/workflows/build-libtorch-images.yml b/.github/workflows/build-libtorch-images.yml index f866b27ec..e5a19b560 100644 --- a/.github/workflows/build-libtorch-images.yml +++ b/.github/workflows/build-libtorch-images.yml @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-18.04 strategy: matrix: - rocm_version: ["5.1.1", "5.2"] + rocm_version: ["5.2", "5.3"] 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 27f0da234..c0ce4c8e8 100644 --- a/.github/workflows/build-manywheel-images.yml +++ b/.github/workflows/build-manywheel-images.yml @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-18.04 strategy: matrix: - rocm_version: ["5.1.1", "5.2"] + rocm_version: ["5.2", "5.3"] env: GPU_ARCH_TYPE: rocm GPU_ARCH_VERSION: ${{ matrix.rocm_version }} diff --git a/common/install_miopen.sh b/common/install_miopen.sh index 9f0759e84..92ffb35dc 100644 --- a/common/install_miopen.sh +++ b/common/install_miopen.sh @@ -88,6 +88,13 @@ fi git clone https://github.com/ROCmSoftwarePlatform/MIOpen -b ${MIOPEN_BRANCH} pushd MIOpen +# Don't build MLIR to save docker build time +# since we are disabling MLIR backend for MIOpen anyway +if [[ $ROCM_INT -ge 50400 ]] && [[ $ROCM_INT -lt 50500 ]]; then + sed -i '/rocMLIR/d' requirements.txt +elif [[ $ROCM_INT -ge 50200 ]] && [[ $ROCM_INT -lt 50400 ]]; then + sed -i '/llvm-project-mlir/d' requirements.txt +fi ## MIOpen minimum requirements cmake -P install_deps.cmake --minimum ## Build MIOpen @@ -99,12 +106,15 @@ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig CXX=${ROCM_INSTALL_PATH}/llvm/bin/clang -DCMAKE_PREFIX_PATH="${ROCM_INSTALL_PATH}/hip;${ROCM_INSTALL_PATH}" make MIOpen -j $(nproc) make -j $(nproc) package -yum install -y miopen-*.rpm -popd -rm -rf MIOpen -# Cleanup +# clean up since CI runner was running out of disk space +rm -rf /usr/local/cget +rm -rf /tmp/* yum clean all rm -rf /var/cache/yum rm -rf /var/lib/yum/yumdb rm -rf /var/lib/yum/history + +yum install -y miopen-*.rpm +popd +rm -rf MIOpen diff --git a/common/install_rocm.sh b/common/install_rocm.sh index a69d1767c..6fca6cfa1 100644 --- a/common/install_rocm.sh +++ b/common/install_rocm.sh @@ -33,7 +33,12 @@ install_ubuntu() { if [[ $(ver $ROCM_VERSION) -ge $(ver 4.5) ]]; then # Add amdgpu repository UBUNTU_VERSION_NAME=`cat /etc/os-release | grep UBUNTU_CODENAME | awk -F= '{print $2}'` - local amdgpu_baseurl="https://repo.radeon.com/amdgpu/${AMDGPU_VERSIONS[$ROCM_VERSION]}/ubuntu" + local amdgpu_baseurl + if [[ $(ver $ROCM_VERSION) -ge $(ver 5.3) ]]; then + amdgpu_baseurl="https://repo.radeon.com/amdgpu/${ROCM_VERSION}/ubuntu" + else + amdgpu_baseurl="https://repo.radeon.com/amdgpu/${AMDGPU_VERSIONS[$ROCM_VERSION]}/ubuntu" + fi echo "deb [arch=amd64] ${amdgpu_baseurl} ${UBUNTU_VERSION_NAME} main" > /etc/apt/sources.list.d/amdgpu.list fi @@ -83,7 +88,12 @@ install_centos() { if [[ $(ver $ROCM_VERSION) -ge $(ver 4.5) ]]; then # Add amdgpu repository - local amdgpu_baseurl="https://repo.radeon.com/amdgpu/${AMDGPU_VERSIONS[$ROCM_VERSION]}/rhel/7.9/main/x86_64" + local amdgpu_baseurl + if [[ $(ver $ROCM_VERSION) -ge $(ver 5.3) ]]; then + amdgpu_baseurl="https://repo.radeon.com/amdgpu/${ROCM_VERSION}/rhel/7.9/main/x86_64" + else + amdgpu_baseurl="https://repo.radeon.com/amdgpu/${AMDGPU_VERSIONS[$ROCM_VERSION]}/rhel/7.9/main/x86_64" + fi echo "[AMDGPU]" > /etc/yum.repos.d/amdgpu.repo echo "name=AMDGPU" >> /etc/yum.repos.d/amdgpu.repo echo "baseurl=${amdgpu_baseurl}" >> /etc/yum.repos.d/amdgpu.repo diff --git a/libtorch/Dockerfile b/libtorch/Dockerfile index 80b081e0e..aaa7b6d6b 100644 --- a/libtorch/Dockerfile +++ b/libtorch/Dockerfile @@ -77,13 +77,13 @@ RUN apt-get update -y && \ apt-get install python -y && \ apt-get clean -FROM rocm as rocm5.1.1 -RUN ROCM_VERSION=5.1.1 bash ./install_rocm.sh && rm install_rocm.sh +FROM rocm as rocm5.2 +RUN ROCM_VERSION=5.2 bash ./install_rocm.sh && rm install_rocm.sh RUN bash ./install_rocm_drm.sh && rm install_rocm_drm.sh RUN bash ./install_rocm_magma.sh && rm install_rocm_magma.sh -FROM rocm as rocm5.2 -RUN ROCM_VERSION=5.2 bash ./install_rocm.sh && rm install_rocm.sh +FROM rocm as rocm5.3 +RUN ROCM_VERSION=5.3 bash ./install_rocm.sh && rm install_rocm.sh RUN bash ./install_rocm_drm.sh && rm install_rocm_drm.sh RUN bash ./install_rocm_magma.sh && rm install_rocm_magma.sh diff --git a/libtorch/build_all_docker.sh b/libtorch/build_all_docker.sh index 5703ca41c..efc1d033f 100755 --- a/libtorch/build_all_docker.sh +++ b/libtorch/build_all_docker.sh @@ -8,6 +8,6 @@ for cuda_version in 11.7 11.6 11.5 11.3 10.2; do GPU_ARCH_TYPE=cuda GPU_ARCH_VERSION="${cuda_version}" "${TOPDIR}/libtorch/build_docker.sh" done -for rocm_version in 5.1.1 5.2; do +for rocm_version in 5.2 5.3; do GPU_ARCH_TYPE=rocm GPU_ARCH_VERSION="${rocm_version}" "${TOPDIR}/libtorch/build_docker.sh" done diff --git a/libtorch/build_docker.sh b/libtorch/build_docker.sh index fe441bb9a..bbf42b1d0 100755 --- a/libtorch/build_docker.sh +++ b/libtorch/build_docker.sh @@ -27,7 +27,7 @@ case ${GPU_ARCH_TYPE} in rocm) BASE_TARGET=rocm${GPU_ARCH_VERSION} DOCKER_TAG=rocm${GPU_ARCH_VERSION} - GPU_IMAGE=rocm/dev-ubuntu-18.04:${GPU_ARCH_VERSION} + GPU_IMAGE=rocm/dev-ubuntu-20.04:${GPU_ARCH_VERSION} PYTORCH_ROCM_ARCH="gfx900;gfx906;gfx908" ROCM_REGEX="([0-9]+)\.([0-9]+)[\.]?([0-9]*)" if [[ $GPU_ARCH_VERSION =~ $ROCM_REGEX ]]; then diff --git a/manywheel/build_all_docker.sh b/manywheel/build_all_docker.sh index d50eea49d..25f1c550c 100644 --- a/manywheel/build_all_docker.sh +++ b/manywheel/build_all_docker.sh @@ -14,7 +14,7 @@ for cuda_version in 11.5 11.3 10.2; do MANYLINUX_VERSION=2014 GPU_ARCH_TYPE=cuda GPU_ARCH_VERSION="${cuda_version}" "${TOPDIR}/manywheel/build_docker.sh" done -for rocm_version in 5.1.1 5.2; do +for rocm_version in 5.2 5.3; 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