summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorGanesh Kumar <46193450+gkathirv@users.noreply.github.com>2020-09-17 20:30:45 +0530
committerGitHub <noreply@github.com>2020-09-17 10:00:45 -0500
commit0f332c73a6835a2fe978e35d63ae13cc5b5212ff (patch)
tree07b3e1d94b641b3bec1bc55e1a90860839986d9d /var
parent91bd99b4b2fbc81123210881f243e0bd6d8445b2 (diff)
downloadspack-0f332c73a6835a2fe978e35d63ae13cc5b5212ff.tar.gz
spack-0f332c73a6835a2fe978e35d63ae13cc5b5212ff.tar.bz2
spack-0f332c73a6835a2fe978e35d63ae13cc5b5212ff.tar.xz
spack-0f332c73a6835a2fe978e35d63ae13cc5b5212ff.zip
Rocm 3.7 miopen, miopengemm, rocalution and rocm-opencl (#18690)
* ROCm 3.5 miopen recipe * fixing flake8 issues * cmake variant fix * min support fix * variant possible values * rocm3.7 change for miopen, rocalution and rocm-opencl * review comments
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/miopen-hip/package.py5
-rw-r--r--var/spack/repos/builtin/packages/miopen-opencl/package.py6
-rw-r--r--var/spack/repos/builtin/packages/miopengemm/package.py5
-rw-r--r--var/spack/repos/builtin/packages/rocalution/package.py15
-rw-r--r--var/spack/repos/builtin/packages/rocm-opencl/package.py18
5 files changed, 32 insertions, 17 deletions
diff --git a/var/spack/repos/builtin/packages/miopen-hip/package.py b/var/spack/repos/builtin/packages/miopen-hip/package.py
index 3a3dbf7f4f..890026e69d 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.5.0.tar.gz"
+ url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-3.7.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('3.7.0', sha256='f6a6ddd8d39bb76b7f7d91e68ade3b45e0201181145658c43b967065a354b103')
version('3.5.0', sha256='aa362e69c4dce7f5751f0ee04c745735ea5454c8101050e9b92cc60fa3c0fb82')
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
@@ -25,7 +26,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']:
+ for ver in ['3.5.0', '3.7.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/miopen-opencl/package.py b/var/spack/repos/builtin/packages/miopen-opencl/package.py
index 9f41f49126..af84fd6516 100644
--- a/var/spack/repos/builtin/packages/miopen-opencl/package.py
+++ b/var/spack/repos/builtin/packages/miopen-opencl/package.py
@@ -11,10 +11,11 @@ class MiopenOpencl(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.5.0.tar.gz"
+ url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-3.7.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('3.7.0', sha256='f6a6ddd8d39bb76b7f7d91e68ade3b45e0201181145658c43b967065a354b103')
version('3.5.0', sha256='aa362e69c4dce7f5751f0ee04c745735ea5454c8101050e9b92cc60fa3c0fb82')
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
@@ -25,7 +26,7 @@ class MiopenOpencl(CMakePackage):
depends_on('bzip2', type='link')
depends_on('sqlite', type='link')
depends_on('half', type='build')
- for ver in ['3.5.0']:
+ for ver in ['3.5.0', '3.7.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)
@@ -33,6 +34,7 @@ class MiopenOpencl(CMakePackage):
depends_on('rocm-opencl@' + ver, type='build', when='@' + ver)
depends_on('miopengemm@1.1.6:', type='link', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='link', when='@' + ver)
+ depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
def cmake_args(self):
args = [
diff --git a/var/spack/repos/builtin/packages/miopengemm/package.py b/var/spack/repos/builtin/packages/miopengemm/package.py
index 15e26051dc..1bc40504f6 100644
--- a/var/spack/repos/builtin/packages/miopengemm/package.py
+++ b/var/spack/repos/builtin/packages/miopengemm/package.py
@@ -20,5 +20,6 @@ class Miopengemm(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
depends_on('cmake@3:', type='build')
- depends_on('rocm-cmake@3.5:', type='build', when='@1.1.6')
- depends_on('rocm-opencl@3.5:', type='build', when='@1.1.6')
+ for ver in ['1.1.6']:
+ depends_on('rocm-cmake@' + '3.7.0', type='build', when='@' + ver)
+ depends_on('rocm-opencl@' + '3.7.0', type='build', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocalution/package.py b/var/spack/repos/builtin/packages/rocalution/package.py
index a79f81184a..0d90588d97 100644
--- a/var/spack/repos/builtin/packages/rocalution/package.py
+++ b/var/spack/repos/builtin/packages/rocalution/package.py
@@ -16,20 +16,22 @@ class Rocalution(CMakePackage):
other scientific software packages."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocALUTION"
- url = "https://github.com/ROCmSoftwarePlatform/rocALUTION/archive/rocm-3.5.0.tar.gz"
+ url = "https://github.com/ROCmSoftwarePlatform/rocALUTION/archive/rocm-3.7.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('3.7.0', sha256='4d6b20aaaac3bafb7ec084d684417bf578349203b0f9f54168f669e3ec5699f8')
version('3.5.0', sha256='be2f78c10c100d7fd9df5dd2403a44700219c2cbabaacf2ea50a6e2241df7bfe')
- depends_on('cmake@3.5.2', type='build')
- for ver in ['3.5.0']:
+ depends_on('cmake@3.5:', type='build')
+ for ver in ['3.5.0', '3.7.0']:
depends_on('hip@' + ver, when='@' + ver)
- depends_on('rocblas@' + ver, type='build', when='@' + ver)
- depends_on('rocsparse@' + ver, type='build', when='@' + ver)
+ depends_on('rocblas@' + ver, type='link', when='@' + ver)
+ depends_on('rocprim@' + ver, type='link', when='@' + ver)
+ depends_on('rocsparse@' + ver, type='link', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
- depends_on('rocprim@' + ver, type='build', when='@' + ver)
+ depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
patch('0001-fix-hip-build-error.patch')
@@ -38,7 +40,6 @@ class Rocalution(CMakePackage):
def cmake_args(self):
args = [
- '-DSUPPORT_OMP=ON',
'-DSUPPORT_HIP=ON',
'-DSUPPORT_MPI=OFF',
'-DBUILD_CLIENTS_SAMPLES=OFF'
diff --git a/var/spack/repos/builtin/packages/rocm-opencl/package.py b/var/spack/repos/builtin/packages/rocm-opencl/package.py
index e761e7481a..f677a38091 100644
--- a/var/spack/repos/builtin/packages/rocm-opencl/package.py
+++ b/var/spack/repos/builtin/packages/rocm-opencl/package.py
@@ -10,15 +10,25 @@ class RocmOpencl(CMakePackage):
"""OpenCL: Open Computing Language on ROCclr"""
homepage = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime"
- url = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/roc-3.5.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ def url_for_version(self, version):
+ if version == Version('3.5.0'):
+ return "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/roc-3.5.0.tar.gz"
+
+ url = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-{0}.tar.gz"
+ return url.format(version)
+
+ version('3.7.0', sha256='283e1dfe4c3d2e8af4d677ed3c20e975393cdb0856e3ccd77b9c7ed2a151650b')
version('3.5.0', sha256='511b617d5192f2d4893603c1a02402b2ac9556e9806ff09dd2a91d398abf39a0')
+
depends_on('cmake@3:', type='build')
- depends_on('rocclr@3.5.0', type='build', when='@3.5.0')
- depends_on('comgr@3.5.0', type='build', when='@3.5.0')
depends_on('mesa~llvm@18.3:', type='link')
+ for ver in ['3.5.0', '3.7.0']:
+ depends_on('rocclr@' + ver, type='build', when='@' + ver)
+ depends_on('comgr@' + ver, type='build', when='@' + ver)
+ depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
def flag_handler(self, name, flags):
# The includes are messed up in ROCm 3.5.0:
@@ -27,7 +37,7 @@ class RocmOpencl(CMakePackage):
# commented out. So instead we provide
# all the includes...
- if self.spec.satisfies('@3.5.0') and name in ('cflags', 'cxxflags'):
+ if name in ('cflags', 'cxxflags'):
rocclr = self.spec['rocclr'].prefix.include
extra_includes = [
'include',