From 5558bc2b50a13b7b51ac69cfd26142d2769ae684 Mon Sep 17 00:00:00 2001 From: Sreenivasa Murthy Kolam <67086238+srekolam@users.noreply.github.com> Date: Wed, 30 Sep 2020 15:27:40 -0700 Subject: rocm-3.8.0 updates for hipblas, rocsolver, miopen-hip, rocalution, rocmvalidationsuite (#19031) * rocm-3.8.0 updates for hipblas,rocsolver,rocm-opencl * rocm-3.8.0 updates to rocalution and rename and change rocmvalidationsuite * rocm-3.8.0 update to miopen-hip * Revert "rocm-3.8.0 updates for hipblas,rocsolver,rocm-opencl" This reverts commit 2542e8b1bede3d4e9e0ec1c3efd789f052826c21. * rocm-3.8.0 changes for rocsolver and hipblas --- .../repos/builtin/packages/hipblas/package.py | 12 +++-- .../repos/builtin/packages/miopen-hip/package.py | 5 +- .../repos/builtin/packages/rocalution/package.py | 3 +- ...-for-rocblas-rocm-smi-install-prefix-path.patch | 33 ++++++++++++++ .../packages/rocm-validation-suite/package.py | 53 ++++++++++++++++++++++ ...-for-rocblas-rocm-smi-install-prefix-path.patch | 33 -------------- .../packages/rocmvalidationsuite/package.py | 52 --------------------- .../repos/builtin/packages/rocsolver/package.py | 11 +++-- 8 files changed, 105 insertions(+), 97 deletions(-) create mode 100644 var/spack/repos/builtin/packages/rocm-validation-suite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch create mode 100644 var/spack/repos/builtin/packages/rocm-validation-suite/package.py delete mode 100644 var/spack/repos/builtin/packages/rocmvalidationsuite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch delete mode 100644 var/spack/repos/builtin/packages/rocmvalidationsuite/package.py diff --git a/var/spack/repos/builtin/packages/hipblas/package.py b/var/spack/repos/builtin/packages/hipblas/package.py index f63d5c3615..29e4dea0c0 100644 --- a/var/spack/repos/builtin/packages/hipblas/package.py +++ b/var/spack/repos/builtin/packages/hipblas/package.py @@ -12,19 +12,21 @@ class Hipblas(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/hipBLAS" git = "https://github.com/ROCmSoftwarePlatform/hipBLAS.git" - url = "https://github.com/ROCmSoftwarePlatform/hipBLAS/archive/rocm-3.5.0.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/hipBLAS/archive/rocm-3.8.0.tar.gz" + + version('3.8.0', sha256='33cb82e8b2658ae2096f39e41492ba8b6852ac37c26a730612b8642d9d29abe3') + version('3.7.0', sha256='9840a493ab4838c86696ceb33ce07c34b5f59f62db4f88cb3af62b69d84f8729') + version('3.5.0', sha256='d451da80beb048767da71a090afceed2e111d01b3e95a7044deada5054d6e7b1') maintainers = ['srekolam', 'arjun-raj-kuppala'] - for ver in ['3.5.0', '3.7.0']: + + for ver in ['3.5.0', '3.7.0', '3.8.0']: depends_on('hip@' + ver, when='@' + ver) depends_on('rocsolver@' + ver, type='build', when='@' + ver) depends_on('rocblas@' + ver, type='link', when='@' + ver) depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver) depends_on('comgr@' + ver, type='build', when='@' + ver) - version('3.7.0', sha256='9840a493ab4838c86696ceb33ce07c34b5f59f62db4f88cb3af62b69d84f8729') - version('3.5.0', sha256='d451da80beb048767da71a090afceed2e111d01b3e95a7044deada5054d6e7b1') - def cmake_args(self): args = [ '-DBUILD_CLIENTS_SAMPLES=OFF', diff --git a/var/spack/repos/builtin/packages/miopen-hip/package.py b/var/spack/repos/builtin/packages/miopen-hip/package.py index b86e55ad0f..30577f58e5 100644 --- a/var/spack/repos/builtin/packages/miopen-hip/package.py +++ b/var/spack/repos/builtin/packages/miopen-hip/package.py @@ -11,10 +11,11 @@ class MiopenHip(CMakePackage): """AMD's library for high performance machine learning primitives.""" homepage = "https://github.com/ROCmSoftwarePlatform/MIOpen" - url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-3.7.0.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-3.8.0.tar.gz" maintainers = ['srekolam', 'arjun-raj-kuppala'] + version('3.8.0', sha256='612b30d4a967bf18c7fa7aa3ef12ed558314ed04cee2775b842bf6a96cd7276f') version('3.7.0', sha256='f6a6ddd8d39bb76b7f7d91e68ade3b45e0201181145658c43b967065a354b103') version('3.5.0', sha256='aa362e69c4dce7f5751f0ee04c745735ea5454c8101050e9b92cc60fa3c0fb82') @@ -26,7 +27,7 @@ class MiopenHip(CMakePackage): depends_on('bzip2', type='link') depends_on('sqlite', type='link') depends_on('half', type='build') - for ver in ['3.5.0', '3.7.0']: + for ver in ['3.5.0', '3.7.0', '3.8.0']: depends_on('hip@' + ver, type='build', when='@' + ver) depends_on('rocm-cmake@' + ver, type='build', when='@' + ver) depends_on('comgr@' + ver, type='link', when='@' + ver) diff --git a/var/spack/repos/builtin/packages/rocalution/package.py b/var/spack/repos/builtin/packages/rocalution/package.py index 0d90588d97..93b729c7c5 100644 --- a/var/spack/repos/builtin/packages/rocalution/package.py +++ b/var/spack/repos/builtin/packages/rocalution/package.py @@ -20,11 +20,12 @@ class Rocalution(CMakePackage): maintainers = ['srekolam', 'arjun-raj-kuppala'] + version('3.8.0', sha256='39e64a29e75c4276163a93596436064c6338770ca72ce7f43711ed8285ed2de5') version('3.7.0', sha256='4d6b20aaaac3bafb7ec084d684417bf578349203b0f9f54168f669e3ec5699f8') version('3.5.0', sha256='be2f78c10c100d7fd9df5dd2403a44700219c2cbabaacf2ea50a6e2241df7bfe') depends_on('cmake@3.5:', type='build') - for ver in ['3.5.0', '3.7.0']: + for ver in ['3.5.0', '3.7.0', '3.8.0']: depends_on('hip@' + ver, when='@' + ver) depends_on('rocblas@' + ver, type='link', when='@' + ver) depends_on('rocprim@' + ver, type='link', when='@' + ver) diff --git a/var/spack/repos/builtin/packages/rocm-validation-suite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch b/var/spack/repos/builtin/packages/rocm-validation-suite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch new file mode 100644 index 0000000000..cc47c5e9d2 --- /dev/null +++ b/var/spack/repos/builtin/packages/rocm-validation-suite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch @@ -0,0 +1,33 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index fc4d98e..f1dea96 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -164,7 +164,7 @@ endif() + message (STATUS "CPACK_GENERATOR ${CPACK_GENERATOR}" ) + + if ( NOT DEFINED CMAKE_PACKAGING_INSTALL_PREFIX ) +- set (CMAKE_PACKAGING_INSTALL_PREFIX "/opt/rocm" ) ++ set (CMAKE_PACKAGING_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" ) + endif () + + ################################################################################ +@@ -369,16 +369,16 @@ if (RVS_ROCBLAS EQUAL 1) + set(ROCBLAS_INC_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-src/build/release/rocblas-install") + set(ROCBLAS_LIB_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-src/build/release/rocblas-install/lib/") + else() +- set(ROCBLAS_INC_DIR "${ROCM_PATH}/include") +- set(ROCBLAS_LIB_DIR "${ROCM_PATH}/lib") ++ set(ROCBLAS_INC_DIR "${ROCBLAS_DIR}/include") ++ set(ROCBLAS_LIB_DIR "${ROCBLAS_DIR}/lib") + endif() + + if (RVS_ROCMSMI EQUAL 1) + set(ROCM_SMI_INC_DIR "${CMAKE_BINARY_DIR}/rvs_smi-src/include") + set(ROCM_SMI_LIB_DIR "${CMAKE_BINARY_DIR}/rvs_smi-build") + else() +- set(ROCM_SMI_INC_DIR "${ROCM_PATH}/rocm_smi/include") +- set(ROCM_SMI_LIB_DIR "${ROCM_PATH}/rocm_smi/lib") ++ set(ROCM_SMI_INC_DIR "${ROCM_SMI_DIR}/include") ++ set(ROCM_SMI_LIB_DIR "${ROCM_SMI_DIR}/lib") + endif() + set(ROCM_SMI_LIB "rocm_smi64" CACHE STRING "rocm_smi library name") diff --git a/var/spack/repos/builtin/packages/rocm-validation-suite/package.py b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py new file mode 100644 index 0000000000..c6d1d42938 --- /dev/null +++ b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py @@ -0,0 +1,53 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + + +from spack import * + + +class RocmValidationSuite(CMakePackage): + """The ROCm Validation Suite (RVS) is a system administrators + and cluster manager's tool for detecting and troubleshooting + common problems affecting AMD GPU(s) running in a high-performance + computing environment, enabled using the ROCm software stack on a + compatible platform.""" + + homepage = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite" + url = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite/archive/rocm-3.8.0.tar.gz" + + maintainers = ['srekolam', 'arjun-raj-kuppala'] + + version('3.8.0', sha256='68f1c5102e5cbed205a0ecf5a01efbdccf480f7e484ab1e58cbc6bc03e428122') + version('3.7.0', sha256='bb42d7fb7ee877b80ce53b0cd1f04b0c8301197b6777d2edddcb44732bf8c9e2') + version('3.5.0', sha256='273e67ecce7e32939341679362b649f3361a36a22fab5f64cefe94b49e6f1e46') + + variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type') + + patch('001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch') + + depends_on('cmake@3.5:', type='build') + depends_on('zlib', type='link') + + def setup_build_environment(self, build_env): + spec = self.spec + build_env.set("HIPCC_PATH", spec['hip'].prefix) + + for ver in ['3.5.0', '3.7.0', '3.8.0']: + depends_on('hip@' + ver, type='build', when='@' + ver) + depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver) + depends_on('comgr@' + ver, type='build', when='@' + ver) + depends_on('hip-rocclr@' + ver, type='build', when='@' + ver) + depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver) + depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver) + depends_on('rocminfo@' + ver, type='build', when='@' + ver) + depends_on('rocblas@' + ver, type='link', when='@' + ver) + depends_on('rocm-smi-lib@' + ver, type='build', when='@' + ver) + + def cmake_args(self): + spec = self.spec + args = ['-DHIP_INC_DIR={0}'.format(spec['hip'].prefix), + '-DROCM_SMI_DIR={0}'.format(spec['rocm-smi-lib'].prefix), + '-DROCBLAS_DIR={0}'.format(spec['rocblas'].prefix)] + return args diff --git a/var/spack/repos/builtin/packages/rocmvalidationsuite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch b/var/spack/repos/builtin/packages/rocmvalidationsuite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch deleted file mode 100644 index cc47c5e9d2..0000000000 --- a/var/spack/repos/builtin/packages/rocmvalidationsuite/001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index fc4d98e..f1dea96 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -164,7 +164,7 @@ endif() - message (STATUS "CPACK_GENERATOR ${CPACK_GENERATOR}" ) - - if ( NOT DEFINED CMAKE_PACKAGING_INSTALL_PREFIX ) -- set (CMAKE_PACKAGING_INSTALL_PREFIX "/opt/rocm" ) -+ set (CMAKE_PACKAGING_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" ) - endif () - - ################################################################################ -@@ -369,16 +369,16 @@ if (RVS_ROCBLAS EQUAL 1) - set(ROCBLAS_INC_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-src/build/release/rocblas-install") - set(ROCBLAS_LIB_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-src/build/release/rocblas-install/lib/") - else() -- set(ROCBLAS_INC_DIR "${ROCM_PATH}/include") -- set(ROCBLAS_LIB_DIR "${ROCM_PATH}/lib") -+ set(ROCBLAS_INC_DIR "${ROCBLAS_DIR}/include") -+ set(ROCBLAS_LIB_DIR "${ROCBLAS_DIR}/lib") - endif() - - if (RVS_ROCMSMI EQUAL 1) - set(ROCM_SMI_INC_DIR "${CMAKE_BINARY_DIR}/rvs_smi-src/include") - set(ROCM_SMI_LIB_DIR "${CMAKE_BINARY_DIR}/rvs_smi-build") - else() -- set(ROCM_SMI_INC_DIR "${ROCM_PATH}/rocm_smi/include") -- set(ROCM_SMI_LIB_DIR "${ROCM_PATH}/rocm_smi/lib") -+ set(ROCM_SMI_INC_DIR "${ROCM_SMI_DIR}/include") -+ set(ROCM_SMI_LIB_DIR "${ROCM_SMI_DIR}/lib") - endif() - set(ROCM_SMI_LIB "rocm_smi64" CACHE STRING "rocm_smi library name") diff --git a/var/spack/repos/builtin/packages/rocmvalidationsuite/package.py b/var/spack/repos/builtin/packages/rocmvalidationsuite/package.py deleted file mode 100644 index 7f927e251d..0000000000 --- a/var/spack/repos/builtin/packages/rocmvalidationsuite/package.py +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other -# Spack Project Developers. See the top-level COPYRIGHT file for details. -# -# SPDX-License-Identifier: (Apache-2.0 OR MIT) - - -from spack import * - - -class Rocmvalidationsuite(CMakePackage): - """The ROCm Validation Suite (RVS) is a system administrators - and cluster manager's tool for detecting and troubleshooting - common problems affecting AMD GPU(s) running in a high-performance - computing environment, enabled using the ROCm software stack on a - compatible platform.""" - - homepage = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite" - url = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite/archive/rocm-3.7.0.tar.gz" - - maintainers = ['srekolam', 'arjun-raj-kuppala'] - - version('3.7.0', sha256='bb42d7fb7ee877b80ce53b0cd1f04b0c8301197b6777d2edddcb44732bf8c9e2') - version('3.5.0', sha256='273e67ecce7e32939341679362b649f3361a36a22fab5f64cefe94b49e6f1e46') - - variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type') - - patch('001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch') - - depends_on('cmake@3.5:', type='build') - depends_on('zlib', type='link') - - def setup_build_environment(self, build_env): - spec = self.spec - build_env.set("HIPCC_PATH", spec['hip'].prefix) - - for ver in ['3.5.0', '3.7.0']: - depends_on('hip@' + ver, type='build', when='@' + ver) - depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver) - depends_on('comgr@' + ver, type='build', when='@' + ver) - depends_on('hip-rocclr@' + ver, type='build', when='@' + ver) - depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver) - depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver) - depends_on('rocminfo@' + ver, type='build', when='@' + ver) - depends_on('rocblas@' + ver, type='link', when='@' + ver) - depends_on('rocm-smi-lib@' + ver, type='build', when='@' + ver) - - def cmake_args(self): - spec = self.spec - args = ['-DHIP_INC_DIR={0}'.format(spec['hip'].prefix), - '-DROCM_SMI_DIR={0}'.format(spec['rocm-smi-lib'].prefix), - '-DROCBLAS_DIR={0}'.format(spec['rocblas'].prefix)] - return args diff --git a/var/spack/repos/builtin/packages/rocsolver/package.py b/var/spack/repos/builtin/packages/rocsolver/package.py index e515e69897..cb708bfa47 100644 --- a/var/spack/repos/builtin/packages/rocsolver/package.py +++ b/var/spack/repos/builtin/packages/rocsolver/package.py @@ -12,18 +12,21 @@ class Rocsolver(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocSOLVER" git = "https://github.com/ROCmSoftwarePlatform/rocSOLVER.git" - url = "https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-3.5.0.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-3.8.0.tar.gz" maintainers = ['srekolam', 'arjun-raj-kuppala'] + version('3.8.0', sha256='72aa74284944d8b454088e8c8d74cf05464a4e2e46d33a57017ddd009113025e') version('3.7.0', sha256='8c1c630595952806e658c539fd0f3056bd45bafc22b57f0dd10141abefbe4595') version('3.5.0', sha256='d655e8c762fb9e123b9fd7200b4258512ceef69973de4d0588c815bc666cb358') depends_on('cmake@3:', type='build') - depends_on('numactl', when='@3.7.0') - depends_on('hsa-rocr-dev@3.7.0', type='build', when='@3.7.0') + depends_on('numactl', type='link', when='@3.7.0:') - for ver in ['3.5.0', '3.7.0']: + for ver in ['3.7.0', '3.8.0']: + depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver) + + for ver in ['3.5.0', '3.7.0', '3.8.0']: depends_on('hip@' + ver, type='build', when='@' + ver) depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver) depends_on('comgr@' + ver, type='build', when='@' + ver) -- cgit v1.2.3-70-g09d2