From 358cc5ed1a2510d45e7342c651e7cc5d16448357 Mon Sep 17 00:00:00 2001 From: Sreenivasa Murthy Kolam <67086238+srekolam@users.noreply.github.com> Date: Tue, 7 Feb 2023 04:30:10 +0530 Subject: Update the ROCm packages for ROCm-5.4.0 release. (#35071) * initial commit for rocm-5.4.0 release * update the versions for more packages for 5.4.0 release * update the gallium patch for mesa for libllvm-15 for ROCm-5.4.0 release * update rocm-openmp-extras and rocwmma recipes for 5.4.0 release * fix build error for rocfft for 5.4.0 * address review comments for rocfft for 5.4.0 change * undo the removal of the older patch file * bump up the version for hipfft for 5.4.0 * fix the failure after the merge with develop * add recipes updates for 5.4.0 for migraphx.miopen-hip,miopen-opencl * address the review comments on the mesa patch.update the rdc package for 5.4.0 release * fix style errors --- var/spack/repos/builtin/packages/atmi/package.py | 4 +- var/spack/repos/builtin/packages/comgr/package.py | 4 +- var/spack/repos/builtin/packages/grpc/package.py | 1 + .../repos/builtin/packages/hip-rocclr/package.py | 3 + var/spack/repos/builtin/packages/hip/package.py | 5 + .../repos/builtin/packages/hipblas/package.py | 4 +- var/spack/repos/builtin/packages/hipcub/package.py | 4 +- var/spack/repos/builtin/packages/hipfft/package.py | 4 +- .../repos/builtin/packages/hipfort/package.py | 4 +- .../repos/builtin/packages/hipify-clang/package.py | 4 +- .../repos/builtin/packages/hipsolver/package.py | 2 + .../repos/builtin/packages/hipsparse/package.py | 5 +- .../repos/builtin/packages/hsa-rocr-dev/package.py | 4 +- .../repos/builtin/packages/hsakmt-roct/package.py | 3 +- .../repos/builtin/packages/llvm-amdgpu/package.py | 4 +- ...1-disable-gallivm-coroutine-for-libllvm15.patch | 206 +++++++++++++++++++++ .../disable-gallivm-coroutine-for-libllvm15.patch | 77 -------- var/spack/repos/builtin/packages/mesa/package.py | 6 +- .../repos/builtin/packages/migraphx/package.py | 4 +- ...en-hip-include-nlohmann-include-directory.patch | 12 ++ .../repos/builtin/packages/miopen-hip/package.py | 21 ++- .../builtin/packages/miopen-opencl/package.py | 12 +- .../repos/builtin/packages/miopengemm/package.py | 2 + .../repos/builtin/packages/mivisionx/package.py | 10 +- .../repos/builtin/packages/mlirmiopen/package.py | 24 ++- var/spack/repos/builtin/packages/rccl/package.py | 6 +- var/spack/repos/builtin/packages/rdc/package.py | 21 ++- .../repos/builtin/packages/rocalution/package.py | 7 +- .../repos/builtin/packages/rocblas/package.py | 5 +- .../0004-fix-missing-sqlite-include-paths.patch | 56 ++++++ var/spack/repos/builtin/packages/rocfft/package.py | 7 +- .../packages/rocm-bandwidth-test/package.py | 4 +- .../builtin/packages/rocm-clang-ocl/package.py | 4 +- .../repos/builtin/packages/rocm-cmake/package.py | 3 +- .../repos/builtin/packages/rocm-dbgapi/package.py | 4 +- .../builtin/packages/rocm-debug-agent/package.py | 5 +- .../builtin/packages/rocm-device-libs/package.py | 4 +- .../repos/builtin/packages/rocm-gdb/package.py | 4 +- .../repos/builtin/packages/rocm-opencl/package.py | 6 +- .../builtin/packages/rocm-openmp-extras/package.py | 10 +- .../repos/builtin/packages/rocm-smi-lib/package.py | 4 +- .../repos/builtin/packages/rocm-tensile/package.py | 5 +- .../packages/rocm-validation-suite/package.py | 5 +- .../repos/builtin/packages/rocminfo/package.py | 4 +- .../repos/builtin/packages/rocmlir/package.py | 68 +++++++ .../repos/builtin/packages/rocprim/package.py | 4 +- .../builtin/packages/rocprofiler-dev/package.py | 4 +- .../repos/builtin/packages/rocrand/package.py | 5 +- .../repos/builtin/packages/rocsolver/package.py | 4 +- .../repos/builtin/packages/rocsparse/package.py | 4 +- .../repos/builtin/packages/rocthrust/package.py | 4 +- .../builtin/packages/roctracer-dev-api/package.py | 3 +- .../builtin/packages/roctracer-dev/package.py | 4 +- .../repos/builtin/packages/rocwmma/package.py | 5 +- 54 files changed, 567 insertions(+), 131 deletions(-) create mode 100644 var/spack/repos/builtin/packages/mesa/0001-disable-gallivm-coroutine-for-libllvm15.patch delete mode 100644 var/spack/repos/builtin/packages/mesa/disable-gallivm-coroutine-for-libllvm15.patch create mode 100644 var/spack/repos/builtin/packages/miopen-hip/miopen-hip-include-nlohmann-include-directory.patch create mode 100644 var/spack/repos/builtin/packages/rocfft/0004-fix-missing-sqlite-include-paths.patch create mode 100644 var/spack/repos/builtin/packages/rocmlir/package.py diff --git a/var/spack/repos/builtin/packages/atmi/package.py b/var/spack/repos/builtin/packages/atmi/package.py index 4a144693c0..45ad9fe3d4 100644 --- a/var/spack/repos/builtin/packages/atmi/package.py +++ b/var/spack/repos/builtin/packages/atmi/package.py @@ -15,11 +15,12 @@ class Atmi(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/atmi" git = "https://github.com/RadeonOpenCompute/atmi.git" - url = "https://github.com/RadeonOpenCompute/atmi/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/atmi/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") + version("5.4.0", sha256="b5cce10d7099fecbb40a0d9c2f29a7675315471fe145212b375e37e4c8ba5618") version("5.3.3", sha256="cc1144e4939cea2944f6c72a21406b9dc5b56d933696494074c280df7469834a") version("5.3.0", sha256="dffc0eb0bc1617843e7f728dbd6c8b12326c5c8baa34369aa267aab40f5deb6a") version("5.2.3", sha256="5f66c59e668cf968e86b556a0a52ee0202d1b370d8406e291a874cbfd200ee17") @@ -130,6 +131,7 @@ class Atmi(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("comgr@" + ver, type="link", when="@" + ver) depends_on("hsa-rocr-dev@" + ver, type="link", when="@" + ver) diff --git a/var/spack/repos/builtin/packages/comgr/package.py b/var/spack/repos/builtin/packages/comgr/package.py index 8e6531bde4..cda42072c3 100644 --- a/var/spack/repos/builtin/packages/comgr/package.py +++ b/var/spack/repos/builtin/packages/comgr/package.py @@ -14,7 +14,7 @@ class Comgr(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport" git = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport.git" - url = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath", "haampie") @@ -22,6 +22,7 @@ class Comgr(CMakePackage): version("master", branch="amd-stg-open") + version("5.4.0", sha256="f4b83b27ff6195679d695c3f41fa25456e9c50bae6d978f46d3541b472aef757") version("5.3.3", sha256="6a4ef69e672a077b5909977248445f0eedf5e124af9812993a4d444be030c78b") version("5.3.0", sha256="072f849d79476d87d31d62b962e368762368d540a9da02ee2675963dc4942b2c") version("5.2.3", sha256="36d67dbe791d08ad0a02f0f3aedd46059848a0a232c5f999670103b0410c89dc") @@ -142,6 +143,7 @@ class Comgr(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: # llvm libs are linked statically, so this *could* be a build dep diff --git a/var/spack/repos/builtin/packages/grpc/package.py b/var/spack/repos/builtin/packages/grpc/package.py index 6c9ff36d8f..b197f8e077 100644 --- a/var/spack/repos/builtin/packages/grpc/package.py +++ b/var/spack/repos/builtin/packages/grpc/package.py @@ -13,6 +13,7 @@ class Grpc(CMakePackage): homepage = "https://grpc.io" url = "https://github.com/grpc/grpc/archive/v1.39.0.tar.gz" + version("1.44.0", sha256="8c05641b9f91cbc92f51cc4a5b3a226788d7a63f20af4ca7aaca50d92cc94a0d") version("1.39.0", sha256="b16992aa1c949c10d5d5ce2a62f9d99fa7de77da2943e643fb66dcaf075826d6") version("1.38.1", sha256="f60e5b112913bf776a22c16a3053cc02cf55e60bf27a959fd54d7aaf8e2da6e8") version("1.38.0", sha256="abd9e52c69000f2c051761cfa1f12d52d8b7647b6c66828a91d462e796f2aede") diff --git a/var/spack/repos/builtin/packages/hip-rocclr/package.py b/var/spack/repos/builtin/packages/hip-rocclr/package.py index bf4972e4f1..d8f9e53ccb 100644 --- a/var/spack/repos/builtin/packages/hip-rocclr/package.py +++ b/var/spack/repos/builtin/packages/hip-rocclr/package.py @@ -28,6 +28,7 @@ class HipRocclr(CMakePackage): version("master", branch="main") + version("5.4.0", sha256="46a1579310b3ab9dc8948d0fb5bed4c6b312f158ca76967af7ab69e328d43138") version("5.3.3", sha256="f8133a5934f9c53b253d324876d74f08a19e2f5b073bc94a62fe64b0d2183a18") version("5.3.0", sha256="2bf14116b5e2270928265f5d417b3d0f0f2e13cbc8ec5eb8c80d4d4a58ff7e94") version("5.2.3", sha256="0493c414d4db1af8e1eb30a651d9512044644244488ebb13478c2138a7612998") @@ -140,6 +141,7 @@ class HipRocclr(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("hsakmt-roct@" + ver, when="@" + ver) @@ -162,6 +164,7 @@ class HipRocclr(CMakePackage): # Add opencl sources thru the below for d_version, d_shasum in [ + ("5.4.0", "a294639478e76c75dac0e094b418f9bd309309b07faf6af126cdfad9aab3c5c7"), ("5.3.3", "cab394e6ef16c35bab8de29a66b96a7dc0e7d1297aaacba3718fa1d369233c9f"), ("5.3.0", "d251e2efe95dc12f536ce119b2587bed64bbda013969fa72be58062788044a9e"), ("5.2.3", "932ea3cd268410010c0830d977a30ef9c14b8c37617d3572a062b5d4595e2b94"), diff --git a/var/spack/repos/builtin/packages/hip/package.py b/var/spack/repos/builtin/packages/hip/package.py index 4913d37a26..d76e9ccf1f 100644 --- a/var/spack/repos/builtin/packages/hip/package.py +++ b/var/spack/repos/builtin/packages/hip/package.py @@ -26,6 +26,7 @@ class Hip(CMakePackage): version("master", branch="master") + version("5.4.0", sha256="e290f835d69ef23e8b5833a7e616b0a989ff89ada4412d9742430819546efc6c") version("5.3.3", sha256="51d4049dc37d261afb9e1270e60e112708ff06b470721ff21023e16e040e4403") version("5.3.0", sha256="05225832fb5a4d24f49a773ac27e315239943a6f24291a50d184e2913f2cdbe0") version("5.2.3", sha256="5b83d1513ea4003bfad5fe8fa741434104e3e49a87e1d7fad49e5a8c1d06e57b") @@ -160,6 +161,7 @@ class Hip(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hsakmt-roct@" + ver, when="@" + ver) depends_on("hsa-rocr-dev@" + ver, when="@" + ver) @@ -178,6 +180,7 @@ class Hip(CMakePackage): # Add hip-amd sources thru the below for d_version, d_shasum in [ + ("5.4.0", "c4b79738eb6e669160382b6c47d738ac59bd493fc681ca400ff012a2e8212955"), ("5.3.3", "36acce92af39b0fa06002e164f5a7f5a9c7daa19bf96645361325775a325499d"), ("5.3.0", "81e9bd5209a7b400c986f9bf1d7079bcf7169bbcb06fc4fe843644559a4d612e"), ("5.2.3", "5031d07554ce07620e24e44d482cbc269fa972e3e35377e935d2694061ff7c04"), @@ -203,6 +206,7 @@ class Hip(CMakePackage): ) # Add opencl sources thru the below for d_version, d_shasum in [ + ("5.4.0", "a294639478e76c75dac0e094b418f9bd309309b07faf6af126cdfad9aab3c5c7"), ("5.3.3", "cab394e6ef16c35bab8de29a66b96a7dc0e7d1297aaacba3718fa1d369233c9f"), ("5.3.0", "d251e2efe95dc12f536ce119b2587bed64bbda013969fa72be58062788044a9e"), ("5.2.3", "932ea3cd268410010c0830d977a30ef9c14b8c37617d3572a062b5d4595e2b94"), @@ -227,6 +231,7 @@ class Hip(CMakePackage): when="@{0}".format(d_version), ) for d_version, d_shasum in [ + ("5.4.0", "46a1579310b3ab9dc8948d0fb5bed4c6b312f158ca76967af7ab69e328d43138"), ("5.3.3", "f8133a5934f9c53b253d324876d74f08a19e2f5b073bc94a62fe64b0d2183a18"), ("5.3.0", "2bf14116b5e2270928265f5d417b3d0f0f2e13cbc8ec5eb8c80d4d4a58ff7e94"), ("5.2.3", "0493c414d4db1af8e1eb30a651d9512044644244488ebb13478c2138a7612998"), diff --git a/var/spack/repos/builtin/packages/hipblas/package.py b/var/spack/repos/builtin/packages/hipblas/package.py index 5aca4c7ddc..8f9c1ed231 100644 --- a/var/spack/repos/builtin/packages/hipblas/package.py +++ b/var/spack/repos/builtin/packages/hipblas/package.py @@ -14,7 +14,7 @@ class Hipblas(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/hipBLAS" git = "https://github.com/ROCmSoftwarePlatform/hipBLAS.git" - url = "https://github.com/ROCmSoftwarePlatform/hipBLAS/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/hipBLAS/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie") @@ -23,6 +23,7 @@ class Hipblas(CMakePackage): version("develop", branch="develop") version("master", branch="master") + version("5.4.0", sha256="341d61adff8d08cbf70aa07bd11a088bcd0687fc6156870a1aee9eff74f3eb4f") version("5.3.3", sha256="1ce093fc6bc021ad4fe0b0b93f9501038a7a5a16b0fd4fc485d65cbd220a195e") version("5.3.0", sha256="873d55749479873994679840906c4257316dfb09a6200411204ad4a8c2480565") version("5.2.3", sha256="4d66db9b000b6207b5270d90556b724bfdb08ebbfcc675f014287e0be7ee6344") @@ -153,6 +154,7 @@ class Hipblas(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocsolver@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hipcub/package.py b/var/spack/repos/builtin/packages/hipcub/package.py index 22514caf1a..847c35d41a 100644 --- a/var/spack/repos/builtin/packages/hipcub/package.py +++ b/var/spack/repos/builtin/packages/hipcub/package.py @@ -11,11 +11,12 @@ class Hipcub(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/hipCUB" git = "https://github.com/ROCmSoftwarePlatform/hipCUB.git" - url = "https://github.com/ROCmSoftwarePlatform/hipCUB/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/hipCUB/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") + version("5.4.0", sha256="78db2c2ea466a4c5d84beedc000ae934f6d0ff1793eae90bb8d02b2dbff8932c") version("5.3.3", sha256="b4fc3c05892729873dc098f111c31f83af7d33da572bdb7d87de100d4c238e6d") version("5.3.0", sha256="4016cfc240b3cc1a97b549ecc4a5b76369610d46247661834630846391e5fad2") version("5.2.3", sha256="cab929f10c649f8fd76df989a16d0cd9301bc6aaad91cd2f84498c831378d559") @@ -127,6 +128,7 @@ class Hipcub(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocprim@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hipfft/package.py b/var/spack/repos/builtin/packages/hipfft/package.py index 45236d6d20..c705eff781 100644 --- a/var/spack/repos/builtin/packages/hipfft/package.py +++ b/var/spack/repos/builtin/packages/hipfft/package.py @@ -16,13 +16,14 @@ class Hipfft(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/hipFFT" git = "https://github.com/ROCmSoftwarePlatform/hipFFT.git" - url = "https://github.com/ROCmSoftwarePlatform/hipfft/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/hipfft/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("renjithravindrankannath", "srekolam") version("master", branch="master") + version("5.4.0", sha256="d0a8e790182928b3d19774b8db1eece9b881a422f6a7055c051b12739fded624") version("5.3.3", sha256="fd1662cd5b1e1bce9db53b320c0fe614179cd196251efc2ef3365d38922b5cdc") version("5.3.0", sha256="ebbe2009b86b688809b6b4d5c3929fc589db455218d54a37790f21339147c5df") version("5.2.3", sha256="10be731fe91ede5e9f254f6eb3bc00b4dbeab449477f3cac03de358a7d0a6fa1") @@ -96,6 +97,7 @@ class Hipfft(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) depends_on("hip@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hipfort/package.py b/var/spack/repos/builtin/packages/hipfort/package.py index 80539c4639..0837ce641a 100644 --- a/var/spack/repos/builtin/packages/hipfort/package.py +++ b/var/spack/repos/builtin/packages/hipfort/package.py @@ -11,11 +11,12 @@ class Hipfort(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/hipfort" git = "https://github.com/ROCmSoftwarePlatform/hipfort.git" - url = "https://github.com/ROCmSoftwarePlatform/hipfort/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/hipfort/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath") + version("5.4.0", sha256="a781bc6d1dbb508a4bd6cc3df931696fac6c6361d4fd35efb12c9a04a72e112c") version("5.3.3", sha256="593be86502578b68215ffe767c26849fd27d4dbd92c8e76762275805f99e64f5") version("5.3.0", sha256="9e2aa142de45b2d2c29449d6f82293fb62844d511fbf51fa597845ba05c700fa") version("5.2.3", sha256="6648350ca4edc8757f0ae51d73a05a9a536808f19ad45f5b5ab84d420c72c9ec") @@ -115,6 +116,7 @@ class Hipfort(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, type="build", when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hipify-clang/package.py b/var/spack/repos/builtin/packages/hipify-clang/package.py index 16fa04612c..9fec1368a3 100644 --- a/var/spack/repos/builtin/packages/hipify-clang/package.py +++ b/var/spack/repos/builtin/packages/hipify-clang/package.py @@ -12,13 +12,14 @@ class HipifyClang(CMakePackage): homepage = "https://github.com/ROCm-Developer-Tools/HIPIFY" git = "https://github.com/ROCm-Developer-Tools/HIPIFY.git" - url = "https://github.com/ROCm-Developer-Tools/HIPIFY/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/HIPIFY/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") version("master", branch="master") + version("5.4.0", sha256="9f51eb280671ae7f7e14eb593ee3ef099899221c4bdccfbdb7a78681ad17f37f") version("5.3.3", sha256="9d08e2896e52c10a0a189a5407567043f2510adc7bf618591c97a22a23699691") version("5.3.0", sha256="7674900d2b9319d91fa8f469252c5acb5bedf339142417cdcb64f33ee8482e00") version("5.2.3", sha256="1314a37ab544b68fd51858b77d2d4b30ecff82ef3f90de6e80891a95f6749849") @@ -131,6 +132,7 @@ class HipifyClang(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("llvm-amdgpu@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hipsolver/package.py b/var/spack/repos/builtin/packages/hipsolver/package.py index a1c63e254d..e1a2c4f857 100644 --- a/var/spack/repos/builtin/packages/hipsolver/package.py +++ b/var/spack/repos/builtin/packages/hipsolver/package.py @@ -27,6 +27,7 @@ class Hipsolver(CMakePackage): version("develop", branch="develop") version("master", branch="master") + version("5.4.0", sha256="d53d81c55b458ba5e6ea0ec6bd24bcc79ab06789730391da82d8c33b936339d9") version("5.3.3", sha256="f5a487a1c7225ab748996ac4d837ac7ab26b43618c4ed97a124f8fac1d67786e") version("5.3.0", sha256="6e920a59ddeefd52c9a6d164c33bc097726529e1ede3c417c711697956655b15") version("5.2.3", sha256="a57d883fdd09c6c7f9856fcfcabee6fa7ff9beed33d2f1a465bf28d38ea6f364") @@ -84,6 +85,7 @@ class Hipsolver(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocblas@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hipsparse/package.py b/var/spack/repos/builtin/packages/hipsparse/package.py index 97027f7d3f..51bbbd88aa 100644 --- a/var/spack/repos/builtin/packages/hipsparse/package.py +++ b/var/spack/repos/builtin/packages/hipsparse/package.py @@ -14,12 +14,13 @@ class Hipsparse(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/hipSPARSE" git = "https://github.com/ROCmSoftwarePlatform/hipSPARSE.git" - url = "https://github.com/ROCmSoftwarePlatform/hipSPARSE/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/hipSPARSE/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie") libraries = ["libhipsparse"] + version("5.4.0", sha256="47420d38483c8124813b744971e428a0352c83d9b62a5a50f74ffa8f9b785b20") version("5.3.3", sha256="d96d0e47594ab12e8c380da2300704c105736a0771940d7d2fae666f2869e457") version("5.3.0", sha256="691b32b916952ed9af008aa29f60cc190322b73cfc098bb2eda3ff68c89c7b35") version("5.2.3", sha256="f70d3deff13188adc4105ef3ead53510e4b54075b9ffcfe3d3355d90d4b6eadd") @@ -130,6 +131,7 @@ class Hipsparse(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) depends_on("hip@" + ver, when="@" + ver) @@ -154,6 +156,7 @@ class Hipsparse(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocprim@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py b/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py index ba8d1aa834..f4f919fe6d 100644 --- a/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py +++ b/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py @@ -17,7 +17,7 @@ class HsaRocrDev(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/ROCR-Runtime" git = "https://github.com/RadeonOpenCompute/ROCR-Runtime.git" - url = "https://github.com/RadeonOpenCompute/ROCR-Runtime/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/ROCR-Runtime/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath", "haampie") @@ -25,6 +25,7 @@ class HsaRocrDev(CMakePackage): version("master", branch="master") + version("5.4.0", sha256="476cd18500cc227d01f6b44c00c7adc8574eb8234b6b4daefc219650183fa090") version("5.3.3", sha256="aca88d90f169f35bd65ce3366b8670c7cdbe3abc0a2056eab805d0192cfd7130") version("5.3.0", sha256="b51dbedbe73390e0be748b92158839c82d7fa0e514fede60aa7696dc498facf0") version("5.2.3", sha256="978de85d3455207bb82bef2254a4624e9116b1258a8c164d7a7e21a644eff12f") @@ -144,6 +145,7 @@ class HsaRocrDev(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("hsakmt-roct@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/hsakmt-roct/package.py b/var/spack/repos/builtin/packages/hsakmt-roct/package.py index b33da741e0..e916b5b567 100644 --- a/var/spack/repos/builtin/packages/hsakmt-roct/package.py +++ b/var/spack/repos/builtin/packages/hsakmt-roct/package.py @@ -14,13 +14,14 @@ class HsakmtRoct(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface" git = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface.git" - url = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "arjun-raj-kuppala", "renjithravindrankannath") version("master", branch="master") + version("5.4.0", sha256="690a78a6e67ae2b3f518dbc4a1e267237d6a342e1063b31eef297f4a04d780f8") version("5.3.3", sha256="b5350de915997ed48072b37a21c2c44438028255f6cc147c25a196ad383c52e7") version("5.3.0", sha256="c150be3958fd46e57bfc9db187819ec34b1db8f0cf9b69f8c3f8915001800ab8") version("5.2.3", sha256="8d313b8fd945a8d7248c00a2de9a2ee896fe77e464430a91b63400a986ec0bf0") diff --git a/var/spack/repos/builtin/packages/llvm-amdgpu/package.py b/var/spack/repos/builtin/packages/llvm-amdgpu/package.py index 361635b08b..f25055e25d 100644 --- a/var/spack/repos/builtin/packages/llvm-amdgpu/package.py +++ b/var/spack/repos/builtin/packages/llvm-amdgpu/package.py @@ -15,13 +15,14 @@ class LlvmAmdgpu(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/llvm-project" git = "https://github.com/RadeonOpenCompute/llvm-project.git" - url = "https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath", "haampie") version("master", branch="amd-stg-open") + version("5.4.0", sha256="ff54f45a17723892cd775c1eaff9e5860527fcfd33d98759223c70e3362335bf") version("5.3.3", sha256="5296d5e474811c7d1e456cb6d5011db248b79b8d0512155e8a6c2aa5b5f12d38") version("5.3.0", sha256="4e3fcddb5b8ea8dcaa4417e0e31a9c2bbdc9e7d4ac3401635a636df32905c93e") version("5.2.3", sha256="1b852711aec3137b568fb65f93606d37fdcd62e06f5da3766f2ffcd4e0c646df") @@ -166,6 +167,7 @@ class LlvmAmdgpu(CMakePackage): # Add device libs sources so they can be an external LLVM project for d_version, d_shasum in [ + ("5.4.0", "d68813ded47179c39914c8d1b76af3dad8c714b10229d1e2246af67609473951"), ("5.3.3", "963c9a0561111788b55a8c3b492e2a5737047914752376226c97a28122a4d768"), ("5.3.0", "f7e1665a1650d3d0481bec68252e8a5e68adc2c867c63c570f6190a1d2fe735c"), ("5.2.3", "16b7fc7db4759bd6fb54852e9855fa16ead76c97871d7e1e9392e846381d611a"), diff --git a/var/spack/repos/builtin/packages/mesa/0001-disable-gallivm-coroutine-for-libllvm15.patch b/var/spack/repos/builtin/packages/mesa/0001-disable-gallivm-coroutine-for-libllvm15.patch new file mode 100644 index 0000000000..3868052d79 --- /dev/null +++ b/var/spack/repos/builtin/packages/mesa/0001-disable-gallivm-coroutine-for-libllvm15.patch @@ -0,0 +1,206 @@ +From ae9611b4cf3ee3395f0e6a94073120b87ba7c520 Mon Sep 17 00:00:00 2001 +From: sreenivasa murthy kolam +Date: Tue, 24 Jan 2023 17:13:36 -0800 +Subject: [PATCH] Updating patch w.r.t llvm 5.4.0 + +--- + src/gallium/auxiliary/gallivm/lp_bld.h | 51 +++++++++++++- + src/gallium/auxiliary/gallivm/lp_bld_arit.c | 78 ++++++--------------- + 2 files changed, 70 insertions(+), 59 deletions(-) + +diff --git a/src/gallium/auxiliary/gallivm/lp_bld.h b/src/gallium/auxiliary/gallivm/lp_bld.h +index 9144428..e1f6200 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld.h ++++ b/src/gallium/auxiliary/gallivm/lp_bld.h +@@ -81,10 +81,59 @@ + #define LLVMInsertBasicBlock ILLEGAL_LLVM_FUNCTION + #define LLVMCreateBuilder ILLEGAL_LLVM_FUNCTION + +-#if LLVM_VERSION_MAJOR >= 8 ++#if LLVM_VERSION_MAJOR >= 15 ++#define GALLIVM_HAVE_CORO 0 ++#define GALLIVM_USE_NEW_PASS 1 ++#elif LLVM_VERSION_MAJOR >= 8 + #define GALLIVM_HAVE_CORO 1 ++#define GALLIVM_USE_NEW_PASS 0 + #else + #define GALLIVM_HAVE_CORO 0 ++#define GALLIVM_USE_NEW_PASS 0 + #endif + ++#define GALLIVM_COROUTINES (GALLIVM_HAVE_CORO || GALLIVM_USE_NEW_PASS) ++ ++/* LLVM is transitioning to "opaque pointers", and as such deprecates ++ * LLVMBuildGEP, LLVMBuildCall, LLVMBuildLoad, replacing them with ++ * LLVMBuildGEP2, LLVMBuildCall2, LLVMBuildLoad2 respectivelly. ++ * These new functions were added in LLVM 8.0; so for LLVM before 8.0 we ++ * simply forward to the non-opaque-pointer variants. ++ */ ++#if LLVM_VERSION_MAJOR < 8 ++ ++static inline LLVMValueRef ++LLVMBuildGEP2(LLVMBuilderRef B, LLVMTypeRef Ty, ++ LLVMValueRef Pointer, LLVMValueRef *Indices, ++ unsigned NumIndices, const char *Name) ++{ ++ return LLVMBuildGEP(B, Pointer, Indices, NumIndices, Name); ++} ++ ++static inline LLVMValueRef ++LLVMBuildInBoundsGEP2(LLVMBuilderRef B, LLVMTypeRef Ty, ++ LLVMValueRef Pointer, LLVMValueRef *Indices, ++ unsigned NumIndices, const char *Name) ++{ ++ return LLVMBuildInBoundsGEP(B, Pointer, Indices, NumIndices, Name); ++} ++ ++static inline LLVMValueRef ++LLVMBuildLoad2(LLVMBuilderRef B, LLVMTypeRef Ty, ++ LLVMValueRef PointerVal, const char *Name) ++{ ++ LLVMValueRef val = LLVMBuildLoad(B, PointerVal, Name); ++ return LLVMTypeOf(val) == Ty ? val : LLVMBuildBitCast(B, val, Ty, Name); ++} ++ ++static inline LLVMValueRef ++LLVMBuildCall2(LLVMBuilderRef B, LLVMTypeRef Ty, LLVMValueRef Fn, ++ LLVMValueRef *Args, unsigned NumArgs, ++ const char *Name) ++{ ++ return LLVMBuildCall(B, Fn, Args, NumArgs, Name); ++} ++ ++#endif /* LLVM_VERSION_MAJOR < 8 */ ++ + #endif /* LP_BLD_H */ +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_arit.c b/src/gallium/auxiliary/gallivm/lp_bld_arit.c +index 9cff016..1dba199 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld_arit.c ++++ b/src/gallium/auxiliary/gallivm/lp_bld_arit.c +@@ -391,16 +391,11 @@ lp_build_comp(struct lp_build_context *bld, + return LLVMBuildNot(builder, a, ""); + } + +- if(LLVMIsConstant(a)) +- if (type.floating) +- return LLVMConstFSub(bld->one, a); +- else +- return LLVMConstSub(bld->one, a); ++ ++ if (type.floating) ++ return LLVMBuildFSub(builder, bld->one, a, ""); + else +- if (type.floating) +- return LLVMBuildFSub(builder, bld->one, a, ""); +- else +- return LLVMBuildSub(builder, bld->one, a, ""); ++ return LLVMBuildSub(builder, bld->one, a, ""); + } + + +@@ -479,16 +474,10 @@ lp_build_add(struct lp_build_context *bld, + } + } + +- if(LLVMIsConstant(a) && LLVMIsConstant(b)) +- if (type.floating) +- res = LLVMConstFAdd(a, b); +- else +- res = LLVMConstAdd(a, b); ++ if (type.floating) ++ res = LLVMBuildFAdd(builder, a, b, ""); + else +- if (type.floating) +- res = LLVMBuildFAdd(builder, a, b, ""); +- else +- res = LLVMBuildAdd(builder, a, b, ""); ++ res = LLVMBuildAdd(builder, a, b, ""); + + /* clamp to ceiling of 1.0 */ + if(bld->type.norm && (bld->type.floating || bld->type.fixed)) +@@ -815,16 +804,10 @@ lp_build_sub(struct lp_build_context *bld, + } + } + +- if(LLVMIsConstant(a) && LLVMIsConstant(b)) +- if (type.floating) +- res = LLVMConstFSub(a, b); +- else +- res = LLVMConstSub(a, b); ++ if (type.floating) ++ res = LLVMBuildFSub(builder, a, b, ""); + else +- if (type.floating) +- res = LLVMBuildFSub(builder, a, b, ""); +- else +- res = LLVMBuildSub(builder, a, b, ""); ++ res = LLVMBuildSub(builder, a, b, ""); + + if(bld->type.norm && (bld->type.floating || bld->type.fixed)) + res = lp_build_max_simple(bld, res, bld->zero, GALLIVM_NAN_RETURN_OTHER_SECOND_NONNAN); +@@ -980,29 +963,16 @@ lp_build_mul(struct lp_build_context *bld, + else + shift = NULL; + +- if(LLVMIsConstant(a) && LLVMIsConstant(b)) { +- if (type.floating) +- res = LLVMConstFMul(a, b); +- else +- res = LLVMConstMul(a, b); +- if(shift) { +- if(type.sign) +- res = LLVMConstAShr(res, shift); +- else +- res = LLVMConstLShr(res, shift); +- } +- } +- else { +- if (type.floating) +- res = LLVMBuildFMul(builder, a, b, ""); ++ if (type.floating) ++ res = LLVMBuildFMul(builder, a, b, ""); ++ else ++ res = LLVMBuildMul(builder, a, b, ""); ++ if (shift) { ++ if (type.sign) ++ res = LLVMBuildAShr(builder, res, shift, ""); + else +- res = LLVMBuildMul(builder, a, b, ""); +- if(shift) { +- if(type.sign) +- res = LLVMBuildAShr(builder, res, shift, ""); +- else +- res = LLVMBuildLShr(builder, res, shift, ""); +- } ++ res = LLVMBuildLShr(builder, res, shift, ""); ++ + } + + return res; +@@ -1288,14 +1258,6 @@ lp_build_div(struct lp_build_context *bld, + if(a == bld->undef || b == bld->undef) + return bld->undef; + +- if(LLVMIsConstant(a) && LLVMIsConstant(b)) { +- if (type.floating) +- return LLVMConstFDiv(a, b); +- else if (type.sign) +- return LLVMConstSDiv(a, b); +- else +- return LLVMConstUDiv(a, b); +- } + + /* fast rcp is disabled (just uses div), so makes no sense to try that */ + if(FALSE && +@@ -2646,7 +2608,7 @@ lp_build_rcp(struct lp_build_context *bld, + assert(type.floating); + + if(LLVMIsConstant(a)) +- return LLVMConstFDiv(bld->one, a); ++ return LLVMBuildFDiv(builder, bld->one, a, ""); + + /* + * We don't use RCPPS because: +-- +2.22.0 + diff --git a/var/spack/repos/builtin/packages/mesa/disable-gallivm-coroutine-for-libllvm15.patch b/var/spack/repos/builtin/packages/mesa/disable-gallivm-coroutine-for-libllvm15.patch deleted file mode 100644 index 0a260a92db..0000000000 --- a/var/spack/repos/builtin/packages/mesa/disable-gallivm-coroutine-for-libllvm15.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 0ff8ee6678a74f243c6c2b9a24a80fb7458f3da8 Mon Sep 17 00:00:00 2001 -From: Renjith Ravindran -Date: Tue, 8 Nov 2022 17:19:51 -0800 -Subject: [PATCH] disable gallivm for libllvm15 - ---- - src/gallium/auxiliary/gallivm/lp_bld.h | 51 +++++++++++++++++++++++++- - 1 file changed, 50 insertions(+), 1 deletion(-) - -diff --git a/src/gallium/auxiliary/gallivm/lp_bld.h b/src/gallium/auxiliary/gallivm/lp_bld.h -index 9144428..e1f6200 100644 ---- a/src/gallium/auxiliary/gallivm/lp_bld.h -+++ b/src/gallium/auxiliary/gallivm/lp_bld.h -@@ -81,10 +81,59 @@ - #define LLVMInsertBasicBlock ILLEGAL_LLVM_FUNCTION - #define LLVMCreateBuilder ILLEGAL_LLVM_FUNCTION - --#if LLVM_VERSION_MAJOR >= 8 -+#if LLVM_VERSION_MAJOR >= 15 -+#define GALLIVM_HAVE_CORO 0 -+#define GALLIVM_USE_NEW_PASS 1 -+#elif LLVM_VERSION_MAJOR >= 8 - #define GALLIVM_HAVE_CORO 1 -+#define GALLIVM_USE_NEW_PASS 0 - #else - #define GALLIVM_HAVE_CORO 0 -+#define GALLIVM_USE_NEW_PASS 0 - #endif - -+#define GALLIVM_COROUTINES (GALLIVM_HAVE_CORO || GALLIVM_USE_NEW_PASS) -+ -+/* LLVM is transitioning to "opaque pointers", and as such deprecates -+ * LLVMBuildGEP, LLVMBuildCall, LLVMBuildLoad, replacing them with -+ * LLVMBuildGEP2, LLVMBuildCall2, LLVMBuildLoad2 respectivelly. -+ * These new functions were added in LLVM 8.0; so for LLVM before 8.0 we -+ * simply forward to the non-opaque-pointer variants. -+ */ -+#if LLVM_VERSION_MAJOR < 8 -+ -+static inline LLVMValueRef -+LLVMBuildGEP2(LLVMBuilderRef B, LLVMTypeRef Ty, -+ LLVMValueRef Pointer, LLVMValueRef *Indices, -+ unsigned NumIndices, const char *Name) -+{ -+ return LLVMBuildGEP(B, Pointer, Indices, NumIndices, Name); -+} -+ -+static inline LLVMValueRef -+LLVMBuildInBoundsGEP2(LLVMBuilderRef B, LLVMTypeRef Ty, -+ LLVMValueRef Pointer, LLVMValueRef *Indices, -+ unsigned NumIndices, const char *Name) -+{ -+ return LLVMBuildInBoundsGEP(B, Pointer, Indices, NumIndices, Name); -+} -+ -+static inline LLVMValueRef -+LLVMBuildLoad2(LLVMBuilderRef B, LLVMTypeRef Ty, -+ LLVMValueRef PointerVal, const char *Name) -+{ -+ LLVMValueRef val = LLVMBuildLoad(B, PointerVal, Name); -+ return LLVMTypeOf(val) == Ty ? val : LLVMBuildBitCast(B, val, Ty, Name); -+} -+ -+static inline LLVMValueRef -+LLVMBuildCall2(LLVMBuilderRef B, LLVMTypeRef Ty, LLVMValueRef Fn, -+ LLVMValueRef *Args, unsigned NumArgs, -+ const char *Name) -+{ -+ return LLVMBuildCall(B, Fn, Args, NumArgs, Name); -+} -+ -+#endif /* LLVM_VERSION_MAJOR < 8 */ -+ - #endif /* LP_BLD_H */ --- -2.25.1 - diff --git a/var/spack/repos/builtin/packages/mesa/package.py b/var/spack/repos/builtin/packages/mesa/package.py index 97fc081270..b8c7903786 100644 --- a/var/spack/repos/builtin/packages/mesa/package.py +++ b/var/spack/repos/builtin/packages/mesa/package.py @@ -155,8 +155,10 @@ class Mesa(MesonPackage): # ROCm 5.3.0 is providing llvm15. Gallivm coroutine is disabled in mesa upstream version # for llvm-15. Until mesa release is available with this changes below patch is required - # in order to move on with ROCm 5.3.0. - patch("disable-gallivm-coroutine-for-libllvm15.patch", when="@22.1.2: ^libllvm@15:") + # in order to move on with ROCm 5.3.0 and ROCm 5.4.0. + # The revised patch was part of https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17518/diffs. + + patch("0001-disable-gallivm-coroutine-for-libllvm15.patch", when="@22.1.2: ^libllvm@15:") # Explicitly use the llvm-config tool def patch(self): diff --git a/var/spack/repos/builtin/packages/migraphx/package.py b/var/spack/repos/builtin/packages/migraphx/package.py index 6d75dc0a5b..b2e57a9b01 100644 --- a/var/spack/repos/builtin/packages/migraphx/package.py +++ b/var/spack/repos/builtin/packages/migraphx/package.py @@ -13,12 +13,13 @@ class Migraphx(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX" git = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX.git" - url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["libmigraphx"] + version("5.4.0", sha256="b6e7f4a1bf445ea0dae644ed5722369cde66fbee82a5917722f5d3f8c48b0a8c") version("5.3.3", sha256="91d91902bbedd5e1951a231e8e5c9a328360b128c731912ed17c8059df38e02a") version("5.3.0", sha256="d0b7283f42e03fb38b612868b8c94f46f27a6e0b019ae95fde5b9086582a1c69") version("5.2.3", sha256="03f7d49f2efdd2c7a6afcaa5a5db5103edc15047b0ff5e146a775cfb36b36af2") @@ -152,6 +153,7 @@ class Migraphx(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) depends_on("hip@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/miopen-hip/miopen-hip-include-nlohmann-include-directory.patch b/var/spack/repos/builtin/packages/miopen-hip/miopen-hip-include-nlohmann-include-directory.patch new file mode 100644 index 0000000000..1942a0b992 --- /dev/null +++ b/var/spack/repos/builtin/packages/miopen-hip/miopen-hip-include-nlohmann-include-directory.patch @@ -0,0 +1,12 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index ad4f043..bab85dc 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -643,6 +643,7 @@ set(MIOPEN_CK_LINK_FLAGS composable_kernel::device_operations hip::host) + endif() + + target_include_directories(MIOpen SYSTEM PUBLIC $) ++target_include_directories(MIOpen SYSTEM PUBLIC "${NLOHMANN_JSON_INCLUDE}") + target_include_directories(MIOpen SYSTEM PRIVATE ${BZIP2_INCLUDE_DIR}) + target_link_libraries(MIOpen PRIVATE ${CMAKE_THREAD_LIBS_INIT} ${BZIP2_LIBRARIES} ${MIOPEN_CK_LINK_FLAGS}) + generate_export_header(MIOpen diff --git a/var/spack/repos/builtin/packages/miopen-hip/package.py b/var/spack/repos/builtin/packages/miopen-hip/package.py index 066c1e7cb7..1e6763b9e4 100644 --- a/var/spack/repos/builtin/packages/miopen-hip/package.py +++ b/var/spack/repos/builtin/packages/miopen-hip/package.py @@ -14,12 +14,13 @@ class MiopenHip(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/MIOpen" git = "https://github.com/ROCmSoftwarePlatform/MIOpen.git" - url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["libMIOpen"] + version("5.4.0", sha256="b4153791f9eeee4cbc5534bc6ad8b32c0947bcd38e08b77ebe144065a4fa5456") version("5.3.3", sha256="7efc98215d23a2caaf212378c37e9a6484f54a4ed3e9660719286e4f287d3715") version("5.3.0", sha256="c5819f593d71beeda2eb24b89182912240cc40f83b2b8f9de695a8e230aa4ea6") version("5.2.3", sha256="28747847446955b3bab24f7fc65c1a6b863a12f12ad3a35e0312072482d38122") @@ -119,6 +120,7 @@ class MiopenHip(CMakePackage): depends_on("zlib", when="@3.9.0:") patch("0001-Add-rocm-path-and-rocm-device-lib-path-flags.patch", when="@3.9.0:5.0.2") + patch("miopen-hip-include-nlohmann-include-directory.patch", when="@5.4.0:") for ver in [ "3.5.0", @@ -142,6 +144,7 @@ class MiopenHip(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) depends_on("hip@" + ver, when="@" + ver) @@ -154,10 +157,17 @@ class MiopenHip(CMakePackage): "5.2.0", "5.2.1", "5.2.3", + "5.3.0", "5.3.3", ]: depends_on("mlirmiopen@" + ver, when="@" + ver) + for ver in [ + "5.4.0", + ]: + depends_on("rocmlir@" + ver, when="@" + ver) + depends_on("nlohmann-json", type="link") + def setup_build_environment(self, env): if "@3.9.0:" in self.spec: lib_dir = self.spec["zlib"].libs.directories[0] @@ -198,7 +208,14 @@ class MiopenHip(CMakePackage): self.define("HIP_PREFIX_PATH", spec["hip"].prefix), self.define("DEVICELIBS_PREFIX_PATH", self.get_bitcode_dir()), ] - if self.spec.satisfies("@5.1.0:"): + if self.spec.satisfies("@5.1.0:5.3"): mlir_inc = spec["mlirmiopen"].prefix.include args.append(self.define("CMAKE_CXX_FLAGS", "-I{0}".format(mlir_inc))) + # TODO: need to turn on composable-kernel to on at a later date + # requires a new recipe for composable-kernel + if self.spec.satisfies("@5.4.0:"): + args.append(self.define("MIOPEN_USE_COMPOSABLEKERNEL", "OFF")) + args.append( + "-DNLOHMANN_JSON_INCLUDE={0}".format(self.spec["nlohmann-json"].prefix.include) + ) return args diff --git a/var/spack/repos/builtin/packages/miopen-opencl/package.py b/var/spack/repos/builtin/packages/miopen-opencl/package.py index 302770e12e..cc01746d68 100644 --- a/var/spack/repos/builtin/packages/miopen-opencl/package.py +++ b/var/spack/repos/builtin/packages/miopen-opencl/package.py @@ -14,12 +14,13 @@ class MiopenOpencl(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/MIOpen" git = "https://github.com/ROCmSoftwarePlatform/MIOpen.git" - url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["libMIOpen"] + version("5.4.0", sha256="b4153791f9eeee4cbc5534bc6ad8b32c0947bcd38e08b77ebe144065a4fa5456") version("5.3.3", sha256="7efc98215d23a2caaf212378c37e9a6484f54a4ed3e9660719286e4f287d3715") version("5.3.0", sha256="c5819f593d71beeda2eb24b89182912240cc40f83b2b8f9de695a8e230aa4ea6") version("5.2.3", sha256="28747847446955b3bab24f7fc65c1a6b863a12f12ad3a35e0312072482d38122") @@ -140,6 +141,7 @@ class MiopenOpencl(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) depends_on("rocm-opencl@" + ver, when="@" + ver) @@ -164,6 +166,7 @@ class MiopenOpencl(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("miopengemm@" + ver, when="@" + ver) @@ -178,6 +181,13 @@ class MiopenOpencl(CMakePackage): ]: depends_on("mlirmiopen@" + ver, when="@" + ver) + for ver in [ + "5.4.0", + ]: + depends_on("nlohmann-json", type="link") + depends_on("rocblas", type="link") + depends_on("rocmlir@" + ver, when="@" + ver) + @classmethod def determine_version(cls, lib): match = re.search(r"lib\S*\.so\.\d+\.\d+\.(\d)(\d\d)(\d\d)", lib) diff --git a/var/spack/repos/builtin/packages/miopengemm/package.py b/var/spack/repos/builtin/packages/miopengemm/package.py index 97a9dba046..71e9f0e576 100644 --- a/var/spack/repos/builtin/packages/miopengemm/package.py +++ b/var/spack/repos/builtin/packages/miopengemm/package.py @@ -26,6 +26,7 @@ class Miopengemm(CMakePackage): url = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/archive/rocm-{0}.tar.gz" return url.format(version) + version("5.4.0", sha256="a39faa8f4ab73e0cd6505a667bf10c07f93b9612af0711405c65043c4755129d") version("5.3.3", sha256="4a9c92bebe59bf6e08bd48861b68b1801d9e8dc406250dc8637d36614a5884c8") version("5.3.0", sha256="7e299daaca8e514bdb5b5efd9d9d3fc5cbfda68ad0117fe7cdbbf946b3f842cd") version("5.2.3", sha256="de9eecf39e6620be1511923e990101e64c63c2f56d8491c8bf9ffd1033709c00") @@ -136,6 +137,7 @@ class Miopengemm(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@" + ver, type="build", when="@" + ver) depends_on("rocm-opencl@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/mivisionx/package.py b/var/spack/repos/builtin/packages/mivisionx/package.py index 518bb7d5be..241bcf4aab 100644 --- a/var/spack/repos/builtin/packages/mivisionx/package.py +++ b/var/spack/repos/builtin/packages/mivisionx/package.py @@ -13,7 +13,7 @@ class Mivisionx(CMakePackage): homepage = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX" git = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX.git" - url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/archive/rocm-5.2.0.tar.gz" + url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/archive/rocm-5.4.0.tar.gz" maintainers("srekolam", "renjithravindrankannath") tags = ["rocm"] @@ -25,6 +25,7 @@ class Mivisionx(CMakePackage): url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/archive/rocm-{0}.tar.gz" return url.format(version) + version("5.4.0", sha256="caa28a30972704ddbf1a87cefdc0b0a35381d369961c43973d473a1573bd35cc") version("5.3.3", sha256="378fafcb327e17e0e11fe1d1029d1740d84aaef0fd59614ed7376499b3d716f6") version("5.3.0", sha256="58e68f1c78bbe5694e42bf61be177f9e94bfd3e0c113ec6284493c8684836c58") version("5.2.3", sha256="bbcdb5808d2bc880486dffa89f4111fb4b1d6dfe9b11fcd46fbd17939d057cf0") @@ -179,7 +180,8 @@ class Mivisionx(CMakePackage): ) depends_on("cmake@3.5:", type="build") - depends_on("ffmpeg@:4", type="build") + depends_on("ffmpeg@:4", type="build", when="@:5.3") + depends_on("ffmpeg@4.4:", type="build", when="@5.4:") depends_on("protobuf@:3", type="build") depends_on( "opencv@:3.4" @@ -231,6 +233,7 @@ class Mivisionx(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-opencl@" + ver, when="@" + ver) depends_on("miopengemm@" + ver, when="@" + ver) @@ -248,9 +251,10 @@ class Mivisionx(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("miopen-hip@" + ver, when="@" + ver) - for ver in ["5.3.3"]: + for ver in ["5.3.3", "5.4.0"]: depends_on("migraphx@" + ver, when="@" + ver) def flag_handler(self, name, flags): diff --git a/var/spack/repos/builtin/packages/mlirmiopen/package.py b/var/spack/repos/builtin/packages/mlirmiopen/package.py index 6a892ae7ed..a55f848d1d 100644 --- a/var/spack/repos/builtin/packages/mlirmiopen/package.py +++ b/var/spack/repos/builtin/packages/mlirmiopen/package.py @@ -11,12 +11,13 @@ class Mlirmiopen(CMakePackage): """Multi-Level Intermediate Representation for rocm miopen project.""" homepage = "https://github.com/ROCmSoftwarePlatform/llvm-project-mlir" - url = "https://github.com/ROCmSoftwarePlatform/llvm-project-mlir/archive/refs/tags/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/llvm-project-mlir/archive/refs/tags/rocm-5.4.0.tar.gz" git = "https://github.com/ROCmSoftwarePlatform/llvm-project-mlir.git" tags = ["rocm"] maintainers("srekolam") + version("5.4.0", sha256="3823f455ee392118c3281e27d45fa0e5381f3c4070eb4e06ba13bc6b34a90a60") version("5.3.3", sha256="e9aa407df775d00fdb9404689f69ac755575188f8b25c6bd0fa9599928c5c57f") version("5.3.0", sha256="e8471a13cb39d33adff34730d3162adaa5d20f9544d61a6a94b39b9b5762ad6d") version("5.2.3", sha256="29e1c352d203622fa083432d5d368caccb53ba141119fbb7e8d5247d99854625") @@ -32,6 +33,15 @@ class Mlirmiopen(CMakePackage): description="CMake build type", ) + def patch(self): + if self.spec.satisfies("@5.3.0:"): + filter_file( + "${ROCM_PATH}/bin", + self.spec["rocminfo"].prefix.bin, + "external/llvm-project/mlir/lib/ExecutionEngine/CMakeLists.txt", + string=True, + ) + depends_on("python", type="build") depends_on("z3", type="link") depends_on("zlib", type="link") @@ -41,11 +51,21 @@ class Mlirmiopen(CMakePackage): depends_on("half") depends_on("pkgconfig", type="build") - for ver in ["5.1.0", "5.1.3", "5.2.0", "5.2.1", "5.2.3", "5.3.0", "5.3.3"]: + for ver in [ + "5.1.0", + "5.1.3", + "5.2.0", + "5.2.1", + "5.2.3", + "5.3.0", + "5.3.3", + "5.4.0", + ]: depends_on("hip@" + ver, when="@" + ver) depends_on("llvm-amdgpu@" + ver, when="@" + ver) depends_on("hsa-rocr-dev@" + ver, when="@" + ver) depends_on("rocm-cmake@" + ver, type="build", when="@" + ver) + depends_on("rocminfo@" + ver, type="build", when="@" + ver) def cmake_args(self): spec = self.spec diff --git a/var/spack/repos/builtin/packages/rccl/package.py b/var/spack/repos/builtin/packages/rccl/package.py index 83573296f5..6664193a79 100644 --- a/var/spack/repos/builtin/packages/rccl/package.py +++ b/var/spack/repos/builtin/packages/rccl/package.py @@ -16,12 +16,13 @@ class Rccl(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rccl" git = "https://github.com/ROCmSoftwarePlatform/rccl.git" - url = "https://github.com/ROCmSoftwarePlatform/rccl/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rccl/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["librccl"] + version("5.4.0", sha256="213f4f3d75389be588673e43f563e5c0d6908798228b0b6a71f27138fd4ed0c7") version("5.3.3", sha256="8995a2d010ad0748fc85ac06e8da7e8d110ba996db04d42b77526c9c059c05bb") version("5.3.0", sha256="51da5099fa58c2be882319cebe9ceabe2062feebcc0c5849e8c109030882c10a") version("5.2.3", sha256="ecba09f4c95b4b2dae81b88231a972ac956d29909b5e712e21cf2a74bd251ff4") @@ -137,6 +138,7 @@ class Rccl(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) depends_on("hip@" + ver, when="@" + ver) @@ -164,6 +166,7 @@ class Rccl(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("numactl@2:", when="@" + ver) for ver in [ @@ -178,6 +181,7 @@ class Rccl(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-smi-lib@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rdc/package.py b/var/spack/repos/builtin/packages/rdc/package.py index 689b226b79..cadcf1d36c 100644 --- a/var/spack/repos/builtin/packages/rdc/package.py +++ b/var/spack/repos/builtin/packages/rdc/package.py @@ -11,7 +11,7 @@ class Rdc(CMakePackage): """ROCm Data Center Tool""" homepage = "https://github.com/RadeonOpenCompute/rdc" - url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") @@ -24,6 +24,7 @@ class Rdc(CMakePackage): url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-{0}.tar.gz" return url.format(version) + version("5.4.0", sha256="268aab43e31045443b08a21aee8750da4cf04750c6f419ec171ec704d377a4e4") version("5.3.3", sha256="1bf1a02f305e3a629801e62584116a34eafbd1b26627837a2a8c10550fcf611b") version("5.3.0", sha256="ce9c85dad8e0c0b21e8e5938bf16f86a62dc5f6ded5f453c61acd43666634d6b") version("5.2.3", sha256="5ba060449bbf5e84979cb4c62eb1dac9b0e3eca45e930d2e20e7beaa87361b39") @@ -101,7 +102,8 @@ class Rdc(CMakePackage): depends_on("cmake@3.15:3.19.7", type="build", when="@:4.3.1") depends_on("cmake@3.15:", type="build", when="@4.5.0:") - depends_on("grpc@1.28.1+shared", type="build") + depends_on("grpc@1.28.1+shared", type="build", when="@:5.3") + depends_on("grpc@1.44.0+shared", when="@5.4.0:") depends_on("protobuf", type=("build", "link")) depends_on("libcap", type=("build", "link")) @@ -125,6 +127,7 @@ class Rdc(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-smi-lib@" + ver, type=("build", "link"), when="@" + ver) @@ -138,6 +141,7 @@ class Rdc(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hsa-rocr-dev@" + ver, when="@" + ver) @@ -149,6 +153,19 @@ class Rdc(CMakePackage): "CMakeLists.txt", string=True, ) + if self.spec.satisfies("@5.4.0"): + filter_file( + "${ROCM_DIR}/${CMAKE_INSTALL_INCLUDEDIR}", + "{0}/include".format(self.spec["rocm-smi-lib"].prefix), + "CMakeLists.txt", + string=True, + ) + filter_file( + "${ROCM_DIR}/${CMAKE_INSTALL_LIBDIR}", + "{0}/lib".format(self.spec["rocm-smi-lib"].prefix), + "CMakeLists.txt", + string=True, + ) @classmethod def determine_version(cls, lib): diff --git a/var/spack/repos/builtin/packages/rocalution/package.py b/var/spack/repos/builtin/packages/rocalution/package.py index adffda2613..d7fa8859bd 100644 --- a/var/spack/repos/builtin/packages/rocalution/package.py +++ b/var/spack/repos/builtin/packages/rocalution/package.py @@ -18,12 +18,13 @@ class Rocalution(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocALUTION" git = "https://github.com/ROCmSoftwarePlatform/rocALUTION.git" - url = "https://github.com/ROCmSoftwarePlatform/rocALUTION/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocALUTION/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath") libraries = ["librocalution_hip"] + version("5.4.0", sha256="dccf004434e0fee6d0c7bedd46827f5a2af0392bc4807a08403b130e461f55eb") version("5.3.3", sha256="3af022250bc25bebdee12bfb8fdbab4b60513b537b9fe15dfa82ded8850c5066") version("5.3.0", sha256="f623449789a5c9c9137ae51d4dbbee5c6940d8813826629cb4b7e84f07fab494") version("5.2.3", sha256="8e0d77099bf7dc0d00505e1c936b072a59719102c75398dc1416cbef31902253") @@ -135,6 +136,7 @@ class Rocalution(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocprim@" + ver, when="@" + ver) @@ -169,6 +171,7 @@ class Rocalution(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: for tgt in itertools.chain(["auto"], amdgpu_targets): depends_on( @@ -181,7 +184,7 @@ class Rocalution(CMakePackage): # already taken in 5.2.3 rocm release. patch("0003-fix-compilation-for-rocalution-5.2.0.patch", when="@5.2") # Fix build for most Radeon 5000 and Radeon 6000 series GPUs. - patch("0004-fix-navi-1x.patch", when="@5.2.0:") + patch("0004-fix-navi-1x.patch", when="@5.2.0:5.3") def check(self): exe = join_path(self.build_directory, "clients", "staging", "rocalution-test") diff --git a/var/spack/repos/builtin/packages/rocblas/package.py b/var/spack/repos/builtin/packages/rocblas/package.py index 1c9cd3b3c7..2d58daec70 100644 --- a/var/spack/repos/builtin/packages/rocblas/package.py +++ b/var/spack/repos/builtin/packages/rocblas/package.py @@ -13,7 +13,7 @@ class Rocblas(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocBLAS/" git = "https://github.com/ROCmSoftwarePlatform/rocBLAS.git" - url = "https://github.com/ROCmSoftwarePlatform/rocBLAS/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocBLAS/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie") @@ -22,6 +22,7 @@ class Rocblas(CMakePackage): version("develop", branch="develop") version("master", branch="master") + version("5.4.0", sha256="261e05375024a01e68697c5d175210a07f0f5fc63a756234d996ddedffde78a2") version("5.3.3", sha256="62a3b5f415bd8e0dcd0d68233d379f1a928ec0349977c32b4eea72ae5004e805") version("5.3.0", sha256="8ea7269604cba949a6ea84b78dc92a44fa890427db88334da6358813f6512e34") version("5.2.3", sha256="36f74ce53b82331a756c42f95f3138498d6f4a66f2fd370cff9ab18281bb12d5") @@ -169,6 +170,7 @@ class Rocblas(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("llvm-amdgpu@" + ver, type="build", when="@" + ver) @@ -209,6 +211,7 @@ class Rocblas(CMakePackage): ("@5.2.3", "9ca08f38c4c3bfe6dfa02233637e7e3758c7b6db"), ("@5.3.0", "b33ca97af456cda14f7b1ec9bcc8aeab3ed6dd08"), ("@5.3.3", "006a5d653ce0d82fecb05d5e215d053749b57c04"), + ("@5.4.0", "5aec08937473b27865fa969bb38a83bcf9463c2b"), ]: resource( name="Tensile", diff --git a/var/spack/repos/builtin/packages/rocfft/0004-fix-missing-sqlite-include-paths.patch b/var/spack/repos/builtin/packages/rocfft/0004-fix-missing-sqlite-include-paths.patch new file mode 100644 index 0000000000..a0954d64fa --- /dev/null +++ b/var/spack/repos/builtin/packages/rocfft/0004-fix-missing-sqlite-include-paths.patch @@ -0,0 +1,56 @@ +From f66855d5a337f3aa4e9be44fd639855fd301c9c0 Mon Sep 17 00:00:00 2001 +From: Cory Bloor +Date: Thu, 26 Jan 2023 16:27:12 -0700 +Subject: [PATCH] Fix missing sqlite include paths (#1001) + +rtc_cache.h includes sqlite3.h, so anything that uses rocfft-rtc-cache +needs to have the sqlite3 include directories. That is typically best +accomplished with a target_link_libraries declaration, as the include +path for the library will automatically be propagated to the dependent +library. + +In modern CMake, it's very rare to have to add the include directories +of a library that your code is using. For any properly specified +library, you should be able to use target_link_libraries and the +required include paths for the library will be added to the target's +build options. +--- + library/src/CMakeLists.txt | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/library/src/CMakeLists.txt b/library/src/CMakeLists.txt +index 71d7926f..9016ae24 100644 +--- a/library/src/CMakeLists.txt ++++ b/library/src/CMakeLists.txt +@@ -199,6 +199,7 @@ else() + ) + FetchContent_MakeAvailable(sqlite_local) + add_library( sqlite3 OBJECT ${sqlite_local_SOURCE_DIR}/sqlite3.c ) ++ target_include_directories( sqlite3 PUBLIC ${sqlite_local_SOURCE_DIR} ) + set_target_properties( sqlite3 PROPERTIES + C_VISIBILITY_PRESET "hidden" + VISIBILITY_INLINES_HIDDEN ON +@@ -242,6 +243,7 @@ add_library( rocfft-rtc-gen OBJECT + add_library( rocfft-rtc-cache OBJECT + rtc_cache.cpp + ) ++target_link_libraries( rocfft-rtc-cache PUBLIC ${ROCFFT_SQLITE_LIB} ) + # generating kernels from TreeNodes and launching them + add_library( rocfft-rtc-launch OBJECT + rtc_kernel.cpp +@@ -250,6 +252,7 @@ add_library( rocfft-rtc-launch OBJECT + rtc_stockham_kernel.cpp + rtc_transpose_kernel.cpp + ) ++target_link_libraries( rocfft-rtc-launch PRIVATE rocfft-rtc-cache ) + + foreach( target + rocfft-rtc-common +@@ -263,7 +266,6 @@ foreach( target + PRIVATE + $ + $ +- ${sqlite_local_SOURCE_DIR} + ) + set_target_properties( ${target} PROPERTIES + CXX_VISIBILITY_PRESET "hidden" diff --git a/var/spack/repos/builtin/packages/rocfft/package.py b/var/spack/repos/builtin/packages/rocfft/package.py index 66ad7e8ced..a52081884f 100644 --- a/var/spack/repos/builtin/packages/rocfft/package.py +++ b/var/spack/repos/builtin/packages/rocfft/package.py @@ -13,12 +13,13 @@ class Rocfft(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocFFT/" git = "https://github.com/ROCmSoftwarePlatform/rocFFT.git" - url = "https://github.com/ROCmSoftwarePlatform/rocfft/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocfft/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie") libraries = ["librocfft"] + version("5.4.0", sha256="d35a67332f4425fba1824eed78cf98d5c9a17a422614ff3f4cba2461df952336") version("5.3.3", sha256="678c18710578c1fb36a0009311bb79de7607c3468f9102cfba56a866ebb7ff78") version("5.3.0", sha256="d655c5541c4aff4267e80e36d002fc3a55c2f84a0ae8631197c12af3bf03fa7d") version("5.2.3", sha256="0cee37886f01f1afb3ae5dad1164c819573c13c6675bff4eb668de334adbff27") @@ -146,6 +147,7 @@ class Rocfft(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) @@ -154,6 +156,8 @@ class Rocfft(CMakePackage): # Patch to add spack build test support. No longer required from 5.2 patch("0002-Fix-clients-fftw3-include-dirs-rocm-4.2.patch", when="@4.2.0:4.3.1") patch("0003-Fix-clients-fftw3-include-dirs-rocm-4.5.patch", when="@4.5.0:5.1") + # Patch to add install prefix header location for sqlite for 5.4 + patch("0004-fix-missing-sqlite-include-paths.patch", when="@5.4.0") def setup_build_environment(self, env): env.set("CXX", self.spec["hip"].hipcc) @@ -205,4 +209,5 @@ class Rocfft(CMakePackage): if self.spec.satisfies("@5.3.0:"): args.append("-DCMAKE_INSTALL_LIBDIR=lib") + return args diff --git a/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py b/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py index 416cd8e891..737d2ce795 100644 --- a/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py +++ b/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py @@ -12,13 +12,14 @@ class RocmBandwidthTest(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test" git = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test.git" - url = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") version("master", branch="master") + version("5.4.0", sha256="47a1ef92e565d5ce7a167cc1ebe3d4198cc04d598b259426245b8c11eb795677") version("5.3.3", sha256="2bc079297e639d45d57c8017f6f47bc44d4ed34613ec76c80574bb703d79b498") version("5.3.0", sha256="a97365c04d79663db7c85027c63a12d56356abc0a351697f49c2d82bf9ef8999") version("5.2.3", sha256="b76fe33898d67ec1f5f1ec58adaea88e88ed28b1f5470aa4c08c347d8f558af2") @@ -128,6 +129,7 @@ class RocmBandwidthTest(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("hsa-rocr-dev@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py b/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py index e90839c1fb..bc6663d888 100644 --- a/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py +++ b/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py @@ -11,12 +11,13 @@ class RocmClangOcl(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/clang-ocl" git = "https://github.com/RadeonOpenCompute/clang-ocl.git" - url = "https://github.com/RadeonOpenCompute/clang-ocl/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/clang-ocl/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") version("master", branch="master") + version("5.4.0", sha256="602f8fb1f36587543cc0ee95fd1938f8eeb03de79119101e128150332cc8d89c") version("5.3.3", sha256="549d5bf37507f67c5277abdeed4ec40b5d0edbfbb72907c685444c26b9ce6f8a") version("5.3.0", sha256="66b80ba050848ad921496bd894e740e66afad0ba1923b385f01f2eeae97999ad") version("5.2.3", sha256="9cdb387168975207314c08ba63ae7cd11f70542117a5390eddbec77ebb84bed0") @@ -126,6 +127,7 @@ class RocmClangOcl(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-cmake/package.py b/var/spack/repos/builtin/packages/rocm-cmake/package.py index bc5d1a8b15..5c8ea97f5e 100644 --- a/var/spack/repos/builtin/packages/rocm-cmake/package.py +++ b/var/spack/repos/builtin/packages/rocm-cmake/package.py @@ -13,13 +13,14 @@ class RocmCmake(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/rocm-cmake" git = "https://github.com/RadeonOpenCompute/rocm-cmake.git" - url = "https://github.com/RadeonOpenCompute/rocm-cmake/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/rocm-cmake/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") version("master", branch="master") + version("5.4.0", sha256="617faa9a1e51db3c7a59bd0393e054ab67e57be357d59cb0cd9b677f47824946") version("5.3.3", sha256="3e527f99db52e301ab4f1b994029585951e2ae685f0cdfb7b8529c72f4b77af4") version("5.3.0", sha256="659a8327f13e6786103dd562d3632e89a51244548fca081f46c753857cf09d04") version("5.2.3", sha256="c63b707ec07d24fda5a2a6fffeda4df4cc04ceea5df3b8822cbe4e6600e358b4") diff --git a/var/spack/repos/builtin/packages/rocm-dbgapi/package.py b/var/spack/repos/builtin/packages/rocm-dbgapi/package.py index b5a2357039..a3537d8886 100644 --- a/var/spack/repos/builtin/packages/rocm-dbgapi/package.py +++ b/var/spack/repos/builtin/packages/rocm-dbgapi/package.py @@ -16,7 +16,7 @@ class RocmDbgapi(CMakePackage): homepage = "https://github.com/ROCm-Developer-Tools/ROCdbgapi" git = "https://github.com/ROCm-Developer-Tools/ROCdbgapi.git" - url = "https://github.com/ROCm-Developer-Tools/ROCdbgapi/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/ROCdbgapi/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") @@ -24,6 +24,7 @@ class RocmDbgapi(CMakePackage): version("master", branch="amd-master") + version("5.4.0", sha256="895eb7056864daada40c3f9cd37645b0bdf4b6dc408b5f8cc974fc4cd9ab7ccb") version("5.3.3", sha256="3c81cb23fe671d391557a63c13b6a13d4dc367db5cb5de55592a6758284d8a3f") version("5.3.0", sha256="afffec78e34fe70952cd41efc3d7ba8f64e43acb2ad20aa35c9b8b591bed48ca") version("5.2.3", sha256="17925d23f614ecb2b40dffe5e14535cba380d4f489ea1a027762c356be9fbc2b") @@ -133,6 +134,7 @@ class RocmDbgapi(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("hsa-rocr-dev@" + ver, type="build", when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-debug-agent/package.py b/var/spack/repos/builtin/packages/rocm-debug-agent/package.py index 0a8f4634c9..6f707e1f36 100644 --- a/var/spack/repos/builtin/packages/rocm-debug-agent/package.py +++ b/var/spack/repos/builtin/packages/rocm-debug-agent/package.py @@ -13,12 +13,13 @@ class RocmDebugAgent(CMakePackage): homepage = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent" git = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent.git" - url = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["librocm-debug-agent"] + version("5.4.0", sha256="94bef73ea0a6d385dab2292ee591ca1dc268a5585cf9f1b5092a1530949f575e") version("5.3.3", sha256="7170312d08e91334ee03586aa1f23d67f33d9ec0df25a5556cbfa3f210b15b06") version("5.3.0", sha256="8dfb6aa442ce136207c0c089321c8099042395977b4a488e4ca219661df0cd78") version("5.2.3", sha256="5d31372e2980738271ae26b92dcc402c387cdf5f23710ce6feeb2bd303ff7ea0") @@ -138,6 +139,7 @@ class RocmDebugAgent(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hsa-rocr-dev@" + ver, when="@" + ver) depends_on("hsakmt-roct@" + ver, when="@" + ver) @@ -163,6 +165,7 @@ class RocmDebugAgent(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-dbgapi@" + ver, when="@" + ver) depends_on("hip@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-device-libs/package.py b/var/spack/repos/builtin/packages/rocm-device-libs/package.py index 7edd177dda..528371bf13 100644 --- a/var/spack/repos/builtin/packages/rocm-device-libs/package.py +++ b/var/spack/repos/builtin/packages/rocm-device-libs/package.py @@ -12,13 +12,14 @@ class RocmDeviceLibs(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs" git = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs.git" - url = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath", "haampie") version("master", branch="amd-stg-open") + version("5.4.0", sha256="d68813ded47179c39914c8d1b76af3dad8c714b10229d1e2246af67609473951") version("5.3.3", sha256="963c9a0561111788b55a8c3b492e2a5737047914752376226c97a28122a4d768") version("5.3.0", sha256="f7e1665a1650d3d0481bec68252e8a5e68adc2c867c63c570f6190a1d2fe735c") version("5.2.3", sha256="16b7fc7db4759bd6fb54852e9855fa16ead76c97871d7e1e9392e846381d611a") @@ -138,6 +139,7 @@ class RocmDeviceLibs(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("llvm-amdgpu@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-gdb/package.py b/var/spack/repos/builtin/packages/rocm-gdb/package.py index 814727a3e2..2e979dbd3d 100644 --- a/var/spack/repos/builtin/packages/rocm-gdb/package.py +++ b/var/spack/repos/builtin/packages/rocm-gdb/package.py @@ -12,11 +12,12 @@ class RocmGdb(AutotoolsPackage): based on GDB, the GNU source-level debugger.""" homepage = "https://github.com/ROCm-Developer-Tools/ROCgdb/" - url = "https://github.com/ROCm-Developer-Tools/ROCgdb/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/ROCgdb/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") + version("5.4.0", sha256="7ee984d99818da04733030b140c1f0929639bc719a5e418d53cc2c2a8cbc9a79") version("5.3.3", sha256="9fc3ccd9378ad40f2f0c9577bc400cc9a202d0ae4656378813b67653b9023c46") version("5.3.0", sha256="402537baf0779cae586d608505e81173ba85f976fe993f1633e3afe81669350f") version("5.2.3", sha256="c2df5cccd8bb07ea331b45091fb3141999a37a67696d273f3888b48f6d4281aa") @@ -128,6 +129,7 @@ class RocmGdb(AutotoolsPackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-dbgapi@" + ver, type="link", when="@" + ver) depends_on("comgr@" + ver, type="link", when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-opencl/package.py b/var/spack/repos/builtin/packages/rocm-opencl/package.py index 63759680d0..89f24a561b 100644 --- a/var/spack/repos/builtin/packages/rocm-opencl/package.py +++ b/var/spack/repos/builtin/packages/rocm-opencl/package.py @@ -29,6 +29,7 @@ class RocmOpencl(CMakePackage): version("master", branch="main") + version("5.4.0", sha256="a294639478e76c75dac0e094b418f9bd309309b07faf6af126cdfad9aab3c5c7") version("5.3.3", sha256="cab394e6ef16c35bab8de29a66b96a7dc0e7d1297aaacba3718fa1d369233c9f") version("5.3.0", sha256="d251e2efe95dc12f536ce119b2587bed64bbda013969fa72be58062788044a9e") version("5.2.3", sha256="932ea3cd268410010c0830d977a30ef9c14b8c37617d3572a062b5d4595e2b94") @@ -119,6 +120,7 @@ class RocmOpencl(CMakePackage): depends_on("numactl", type="link", when="@3.7.0:") for d_version, d_shasum in [ + ("5.4.0", "46a1579310b3ab9dc8948d0fb5bed4c6b312f158ca76967af7ab69e328d43138"), ("5.3.3", "f8133a5934f9c53b253d324876d74f08a19e2f5b073bc94a62fe64b0d2183a18"), ("5.3.0", "2bf14116b5e2270928265f5d417b3d0f0f2e13cbc8ec5eb8c80d4d4a58ff7e94"), ("5.2.3", "0493c414d4db1af8e1eb30a651d9512044644244488ebb13478c2138a7612998"), @@ -179,8 +181,9 @@ class RocmOpencl(CMakePackage): "5.2.0", "5.2.1", "5.2.3", - "5.3.3", "5.3.0", + "5.3.3", + "5.4.0", "master", ]: depends_on("comgr@" + ver, type="build", when="@" + ver) @@ -223,7 +226,6 @@ class RocmOpencl(CMakePackage): return (flags, None, None) def cmake_args(self): - args = ["-DUSE_COMGR_LIBRARY=yes"] if self.spec.satisfies("@:4.3.0"): "-DROCclr_DIR={0}".format(self.spec["hip-rocclr"].prefix), diff --git a/var/spack/repos/builtin/packages/rocm-openmp-extras/package.py b/var/spack/repos/builtin/packages/rocm-openmp-extras/package.py index f7d7a1c4a1..59b2d157d9 100644 --- a/var/spack/repos/builtin/packages/rocm-openmp-extras/package.py +++ b/var/spack/repos/builtin/packages/rocm-openmp-extras/package.py @@ -33,6 +33,7 @@ aomp = [ "4ba1792095427588c484feed01f2f48e66aaad26bc000cbc74a15032551699e7", "371ed037b95b83fac64fb2ff2fc17313fe7d3befc8671f0a08f0e2072393fa5b", "c86141fcde879fc78d06a41ba6a26ff528da539c6a1be8b714f635182c66e3f4", + "bbca540897848fa95fd0f14fc05ab6deda31299a061424972d5e2bc09c7543dc", ] devlib = [ @@ -54,6 +55,7 @@ devlib = [ "16b7fc7db4759bd6fb54852e9855fa16ead76c97871d7e1e9392e846381d611a", "f7e1665a1650d3d0481bec68252e8a5e68adc2c867c63c570f6190a1d2fe735c", "963c9a0561111788b55a8c3b492e2a5737047914752376226c97a28122a4d768", + "d68813ded47179c39914c8d1b76af3dad8c714b10229d1e2246af67609473951", ] llvm = [ @@ -75,6 +77,7 @@ llvm = [ "1b852711aec3137b568fb65f93606d37fdcd62e06f5da3766f2ffcd4e0c646df", "4e3fcddb5b8ea8dcaa4417e0e31a9c2bbdc9e7d4ac3401635a636df32905c93e", "5296d5e474811c7d1e456cb6d5011db248b79b8d0512155e8a6c2aa5b5f12d38", + "ff54f45a17723892cd775c1eaff9e5860527fcfd33d98759223c70e3362335bf", ] flang = [ @@ -96,6 +99,7 @@ flang = [ "496f00918721c72eae0bd926a5a8f1f35bd443f6b22bc08e2a42c67e44a4dbaf", "ef1256ddf6cd9de10a1b88df4736dce48295136983a7e31eadd942fb39b156f7", "ddccd866d0c01086087fe21b5711668f85bcf9cbd9f62853f8bda32eaedb5339", + "fae8195a5e1b3778e31dbc6cbeedeae9998ea4b5a54215534af41e91fdcb8ba0", ] extras = [ @@ -117,6 +121,7 @@ extras = [ "f42ca7d85b0b64e6890502f1cf8309ef97f707829876742da2ea5c2cdf3ad8ac", "b3beee383d9c130666c230595c950bdc2ce4c7a99d728b9ddf1bca3963152223", "b26b9f4b11a9ccfab53d0dd55aada7e5b98f7ab51981cb033b376321dd44bf87", + "2546becd4b182d1e366f47660c731c8ff7366b6306782f04706b6a7bf4e2094c", ] versions = [ @@ -138,6 +143,7 @@ versions = [ "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ] versions_dict = dict() # type: Dict[str,Dict[str,str]] components = ["aomp", "devlib", "llvm", "flang", "extras"] @@ -155,10 +161,11 @@ class RocmOpenmpExtras(Package): """OpenMP support for ROCm LLVM.""" homepage = tools_url + "/aomp" - url = tools_url + "/aomp/archive/rocm-5.3.3.tar.gz" + url = tools_url + "/aomp/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath", "estewart08") + version("5.4.0", sha256=versions_dict["5.4.0"]["aomp"]) version("5.3.3", sha256=versions_dict["5.3.3"]["aomp"]) version("5.3.0", sha256=versions_dict["5.3.0"]["aomp"]) version("5.2.3", sha256=versions_dict["5.2.3"]["aomp"]) @@ -249,6 +256,7 @@ class RocmOpenmpExtras(Package): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hsakmt-roct@" + ver, when="@" + ver) depends_on("comgr@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-smi-lib/package.py b/var/spack/repos/builtin/packages/rocm-smi-lib/package.py index 86c2456537..78a371365b 100644 --- a/var/spack/repos/builtin/packages/rocm-smi-lib/package.py +++ b/var/spack/repos/builtin/packages/rocm-smi-lib/package.py @@ -17,14 +17,14 @@ class RocmSmiLib(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/rocm_smi_lib" git = "https://github.com/RadeonOpenCompute/rocm_smi_lib.git" - url = "https://github.com/RadeonOpenCompute/rocm_smi_lib/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/rocm_smi_lib/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["librocm_smi64"] version("master", branch="master") - + version("5.4.0", sha256="4b110c9ec104ec39fc458b1b6f693662ab75395b75ed402b671d8e58c7ae63fe") version("5.3.3", sha256="c2c2a377c2e84f0c40297a97b6060dddc49183c2771b833ebe91ed98a98e4119") version("5.3.0", sha256="8f72ad825a021d5199fb73726b4975f20682beb966e0ec31b53132bcd56c5408") version("5.2.3", sha256="fcf4f75a8daeca81ecb107989712c5f3776ee11e6eed870cb93efbf66ff1c384") diff --git a/var/spack/repos/builtin/packages/rocm-tensile/package.py b/var/spack/repos/builtin/packages/rocm-tensile/package.py index 048b0b06aa..fedc224595 100644 --- a/var/spack/repos/builtin/packages/rocm-tensile/package.py +++ b/var/spack/repos/builtin/packages/rocm-tensile/package.py @@ -13,11 +13,12 @@ class RocmTensile(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/Tensile/" git = "https://github.com/ROCmSoftwarePlatform/Tensile.git" - url = "https://github.com/ROCmSoftwarePlatform/Tensile/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/Tensile/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath", "haampie") + version("5.4.0", sha256="2da9c1df3c6d9b44afdad621ef59a03389fb1a38a61a8b8bad9c9991b97157eb") version("5.3.3", sha256="ecb99243edf1cd2bb5e953915a7dae7867c3cdb0cd8ed15b8618aaaeb2bd7b29") version("5.3.0", sha256="05c546986549154e6c7b4f57a0b3bfd5cb223d2393c206ff1702f89454c832f4") version("5.2.3", sha256="840698bf2ac62e08ae76c3843f1dad5367ed098d42e6a5fa7953de70642fd2cf") @@ -149,6 +150,7 @@ class RocmTensile(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-cmake@" + ver, type="build", when="@" + ver) depends_on("hip@" + ver, when="@" + ver) @@ -177,6 +179,7 @@ class RocmTensile(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("rocm-smi-lib@" + ver, type="build", when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocm-validation-suite/package.py b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py index c84bb7daa7..054f792ac2 100644 --- a/var/spack/repos/builtin/packages/rocm-validation-suite/package.py +++ b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py @@ -16,11 +16,12 @@ class RocmValidationSuite(CMakePackage): compatible platform.""" homepage = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite" - url = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite/archive/rocm-5.3.0.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") + version("5.4.0", sha256="ca2abfa739c2853f71453e65787e318ab879be8a6a362c4cb4d27baa90f3cd5f") version("5.3.0", sha256="d6afb8a5f4eaf860fd510bcfe65e735cbf96d4b8817c758ea7aee84d4c994382") version("5.2.3", sha256="5dfbd41c694bf2eb4368edad8653dc60ec2927d174fc7aaa5fa416156c5f921f") version("5.2.1", sha256="a0ea3ab9cbb8ac17bfa4537713a4d7075f869949bfdead4565a46f75864bd4a9") @@ -147,6 +148,8 @@ class RocmValidationSuite(CMakePackage): "5.2.1", "5.2.3", "5.3.0", + "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocminfo@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocminfo/package.py b/var/spack/repos/builtin/packages/rocminfo/package.py index 82fae09345..c7f7a0469a 100644 --- a/var/spack/repos/builtin/packages/rocminfo/package.py +++ b/var/spack/repos/builtin/packages/rocminfo/package.py @@ -12,13 +12,14 @@ class Rocminfo(CMakePackage): homepage = "https://github.com/RadeonOpenCompute/rocminfo" git = "https://github.com/RadeonOpenCompute/rocminfo.git" - url = "https://github.com/RadeonOpenCompute/rocminfo/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/RadeonOpenCompute/rocminfo/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath", "haampie") version("master", branch="master") + version("5.4.0", sha256="79123b92992cce75ae679caf9a6bf57b16d24e96e54b36eb002511f3800e29c6") version("5.3.3", sha256="77e6adc81da6c1d153517e1d28db774205531a2ec188e6518f998328ef7897c6") version("5.3.0", sha256="c279da1d946771d120611b64974fde751534e787a394ceb6b8e0b743c143d782") version("5.2.3", sha256="38fe8db21077100ee2242bd087371f6b8e0078d3a269e145d3a4ab314d0b8902") @@ -128,6 +129,7 @@ class Rocminfo(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", "master", ]: depends_on("hsakmt-roct@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocmlir/package.py b/var/spack/repos/builtin/packages/rocmlir/package.py new file mode 100644 index 0000000000..9442d47ba1 --- /dev/null +++ b/var/spack/repos/builtin/packages/rocmlir/package.py @@ -0,0 +1,68 @@ +# Copyright 2013-2022 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.package import * + + +class Rocmlir(CMakePackage): + """This is the repository for a MLIR-based convolution and GEMM kernel generator + targetting AMD hardware. This generator is mainly used from MIOpen and MIGraphX, + but it can be used on a standalone basis.""" + + homepage = "https://github.com/ROCmSoftwarePlatform/rocMLIR" + git = "https://github.com/ROCmSoftwarePlatform/rocMLIR.git" + url = "https://github.com/ROCmSoftwarePlatform/rocMLIR/archive/refs/tags/rocm-5.4.0.tar.gz" + + maintainers = ["srekolam"] + + version("5.4.0", sha256="3823f455ee392118c3281e27d45fa0e5381f3c4070eb4e06ba13bc6b34a90a60") + version("5.3.0", sha256="e8471a13cb39d33adff34730d3162adaa5d20f9544d61a6a94b39b9b5762ad6d") + variant( + "build_type", + default="Release", + values=("Release", "Debug", "RelWithDebInfo"), + description="CMake build type", + ) + + def patch(self): + if self.spec.satisfies("@5.3.0:"): + filter_file( + "${ROCM_PATH}/bin", + self.spec["rocminfo"].prefix.bin, + "external/llvm-project/mlir/lib/ExecutionEngine/CMakeLists.txt", + string=True, + ) + + depends_on("python", type="build") + depends_on("z3", type="link") + depends_on("zlib", type="link") + depends_on("ncurses+termlib", type="link") + depends_on("bzip2") + depends_on("sqlite") + depends_on("half") + depends_on("pkgconfig", type="build") + + for ver in [ + "5.3.0", + "5.4.0", + ]: + depends_on("hip@" + ver, when="@" + ver) + depends_on("llvm-amdgpu@" + ver, when="@" + ver) + depends_on("hsa-rocr-dev@" + ver, when="@" + ver) + depends_on("rocm-cmake@" + ver, type="build", when="@" + ver) + depends_on("rocminfo@" + ver, type="build", when="@" + ver) + + def cmake_args(self): + spec = self.spec + args = [ + self.define( + "CMAKE_CXX_COMPILER", "{0}/bin/clang++".format(spec["llvm-amdgpu"].prefix) + ), + self.define("CMAKE_C_COMPILER", "{0}/bin/clang".format(spec["llvm-amdgpu"].prefix)), + self.define("HIP_PATH", spec["hip"].prefix), + self.define("BUILD_FAT_LIBROCKCOMPILER", "ON"), + ] + return args diff --git a/var/spack/repos/builtin/packages/rocprim/package.py b/var/spack/repos/builtin/packages/rocprim/package.py index 35cdd81e32..d9d5d8dcfd 100644 --- a/var/spack/repos/builtin/packages/rocprim/package.py +++ b/var/spack/repos/builtin/packages/rocprim/package.py @@ -11,11 +11,12 @@ class Rocprim(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocPRIM" git = "https://github.com/ROCmSoftwarePlatform/rocPRIM.git" - url = "https://github.com/ROCmSoftwarePlatform/rocPRIM/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocPRIM/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath") + version("5.4.0", sha256="1740dca11c70ed350995331c292f7e3cb86273614e4a5ce9f0ea64dea5364318") version("5.3.3", sha256="21a6b352ad3f5b2b7d05a5ed55e612feb3c5c19d34fdb8f80260b6d25af18b2d") version("5.3.0", sha256="4885bd662b038c6e9f058a756fd838203dbd00227bfef6adaf31496010b100e4") version("5.2.3", sha256="502f49cf3190f4ac20d0a6b19eb2d0786bb3c5661329940378081f1678aa8e82") @@ -130,6 +131,7 @@ class Rocprim(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("comgr@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocprofiler-dev/package.py b/var/spack/repos/builtin/packages/rocprofiler-dev/package.py index 05045e435f..9d37565cc2 100644 --- a/var/spack/repos/builtin/packages/rocprofiler-dev/package.py +++ b/var/spack/repos/builtin/packages/rocprofiler-dev/package.py @@ -13,12 +13,13 @@ class RocprofilerDev(CMakePackage): homepage = "https://github.com/ROCm-Developer-Tools/rocprofiler" git = "https://github.com/ROCm-Developer-Tools/rocprofiler.git" - url = "https://github.com/ROCm-Developer-Tools/rocprofiler/archive/refs/tags/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/rocprofiler/archive/refs/tags/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["librocprofiler64"] + version("5.4.0", sha256="0322cbe5d1d3182e616f472da31f0707ad6040833c38c28f2b39381a85210f43") version("5.3.3", sha256="07ee28f3420a07fc9d45910e78ad7961b388109cfc0e74cfdf2666789e6af171") version("5.3.0", sha256="b0905a329dc1c97a362b951f3f8ef5da9d171cabb001ed4253bd59a2742e7d39") version("5.2.3", sha256="4ed22e86633ab177eed85fed8994fcb71017c4c4774998e4d3fc36b6c0a15eac") @@ -127,6 +128,7 @@ class RocprofilerDev(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hsakmt-roct@" + ver, when="@" + ver) depends_on("hsa-rocr-dev@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocrand/package.py b/var/spack/repos/builtin/packages/rocrand/package.py index 85d4452d3b..055665fc33 100644 --- a/var/spack/repos/builtin/packages/rocrand/package.py +++ b/var/spack/repos/builtin/packages/rocrand/package.py @@ -16,12 +16,13 @@ class Rocrand(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocRAND" git = "https://github.com/ROCmSoftwarePlatform/rocRAND.git" - url = "https://github.com/ROCmSoftwarePlatform/rocRAND/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocRAND/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath") libraries = ["librocrand"] + version("5.4.0", sha256="0f6a0279b8b5a6dfbe32b45e1598218fe804fee36170d5c1f7b161c600544ef2") version("5.3.3", sha256="b0aae79dce7f6f9ef76ad2594745fe1f589a7b675b22f35b4d2369e7d5e1985a") version("develop", branch="develop") version("master", branch="master") @@ -125,6 +126,7 @@ class Rocrand(CMakePackage): # Add hiprand sources thru the below for d_version, d_commit in [ + ("5.4.0", "125d691d3bcc6de5f5d63cf5f5a993c636251208"), ("5.3.3", "12e2f070337945318295c330bf69c6c060928b9e"), ("5.3.0", "12e2f070337945318295c330bf69c6c060928b9e"), ("5.2.3", "12e2f070337945318295c330bf69c6c060928b9e"), @@ -180,6 +182,7 @@ class Rocrand(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocsolver/package.py b/var/spack/repos/builtin/packages/rocsolver/package.py index 97ef88a476..59693c8bd8 100644 --- a/var/spack/repos/builtin/packages/rocsolver/package.py +++ b/var/spack/repos/builtin/packages/rocsolver/package.py @@ -15,7 +15,7 @@ class Rocsolver(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocSOLVER" git = "https://github.com/ROCmSoftwarePlatform/rocSOLVER.git" - url = "https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie") @@ -35,6 +35,7 @@ class Rocsolver(CMakePackage): version("develop", branch="develop") version("master", branch="master") + version("5.4.0", sha256="69690839cb649dee43353b739d3e6b2312f3d965dfe66705c0ea910e57c6a8cb") version("5.3.3", sha256="d2248b5e2e0b20e08dd1ee5408e38deb02ecd28096dc7c7f2539351df6cb6ad5") version("5.3.0", sha256="4569f860d240d50e94e77d498050f5cafe5ad11daddaead3e7e9eaa1957878a7") version("5.2.3", sha256="b278a1640f31fb1905f18dc5127d57e2b1d36fd2b4f39ae811b5537fa6ce87d4") @@ -168,6 +169,7 @@ class Rocsolver(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocblas@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocsparse/package.py b/var/spack/repos/builtin/packages/rocsparse/package.py index 40ed124986..3ef30dae1d 100644 --- a/var/spack/repos/builtin/packages/rocsparse/package.py +++ b/var/spack/repos/builtin/packages/rocsparse/package.py @@ -17,7 +17,7 @@ class Rocsparse(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocSPARSE" git = "https://github.com/ROCmSoftwarePlatform/rocSPARSE.git" - url = "https://github.com/ROCmSoftwarePlatform/rocSPARSE/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocSPARSE/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath") @@ -34,6 +34,7 @@ class Rocsparse(CMakePackage): ) variant("test", default=False, description="Build rocsparse-test client") + version("5.4.0", sha256="c8f0e920a8ec15b9ae40564c68191363356cc4d793c16247bb6e11ef5293ed11") version("5.3.3", sha256="4204035e952e20ada4526a94989e8e5c76c04574176fe63a021522862461c800") version("5.3.0", sha256="521ca0e7b52f26edbff8507eb1479dc26019f456756d884d7b8b192c3ea518e8") version("5.2.3", sha256="6da3f3303a8ada94c4dbff4b42ee33a2e2883a908ee21c41cb2aa7180382026a") @@ -136,6 +137,7 @@ class Rocsparse(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocprim@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocthrust/package.py b/var/spack/repos/builtin/packages/rocthrust/package.py index e800ab4e13..5315e7d2dd 100644 --- a/var/spack/repos/builtin/packages/rocthrust/package.py +++ b/var/spack/repos/builtin/packages/rocthrust/package.py @@ -14,11 +14,12 @@ class Rocthrust(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocThrust" git = "https://github.com/ROCmSoftwarePlatform/rocThrust.git" - url = "https://github.com/ROCmSoftwarePlatform/rocThrust/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocThrust/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("cgmb", "srekolam", "renjithravindrankannath") + version("5.4.0", sha256="a4799fb1086da3f70c9b95effb1f5f9033c861685e960a8759278463cc55a971") version("5.3.3", sha256="0c2fc8d437efaf5c4c859d97adb049d4025025d0be0e0908f59a8112508234e5") version("5.3.0", sha256="0e11b12f208d2751e3e507e3a32403c9bd45da4e191671d765d33abd727d9b96") version("5.2.3", sha256="0f5ef39c5faab31eb34b48391d58096463969c133ca7ed09ab4e43caa5461b29") @@ -135,6 +136,7 @@ class Rocthrust(CMakePackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hip@" + ver, when="@" + ver) depends_on("rocprim@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/roctracer-dev-api/package.py b/var/spack/repos/builtin/packages/roctracer-dev-api/package.py index b55ce1a902..2b7ac7060d 100644 --- a/var/spack/repos/builtin/packages/roctracer-dev-api/package.py +++ b/var/spack/repos/builtin/packages/roctracer-dev-api/package.py @@ -13,11 +13,12 @@ class RoctracerDevApi(Package): homepage = "https://github.com/ROCm-Developer-Tools/roctracer" git = "https://github.com/ROCm-Developer-Tools/roctracer.git" - url = "https://github.com/ROCm-Developer-Tools/roctracer/archive/refs/tags/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/roctracer/archive/refs/tags/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") + version("5.4.0", sha256="04c1e955267a3e8440833a177bb976f57697aba0b90c325d07fc0c6bd4065aea") version("5.3.3", sha256="f2cb1e6bb69ea1a628c04f984741f781ae1d8498dc58e15795bb03015f924d13") version("5.3.0", sha256="36f1da60863a113bb9fe2957949c661f00a702e249bb0523cda1fb755c053808") version("5.2.3", sha256="93f4bb7529db732060bc12055aa10dc346a459a1086cddd5d86c7b509301be4f") diff --git a/var/spack/repos/builtin/packages/roctracer-dev/package.py b/var/spack/repos/builtin/packages/roctracer-dev/package.py index ac2f6ea174..cae6a83055 100644 --- a/var/spack/repos/builtin/packages/roctracer-dev/package.py +++ b/var/spack/repos/builtin/packages/roctracer-dev/package.py @@ -15,12 +15,13 @@ class RoctracerDev(CMakePackage, ROCmPackage): homepage = "https://github.com/ROCm-Developer-Tools/roctracer" git = "https://github.com/ROCm-Developer-Tools/roctracer.git" - url = "https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") libraries = ["libroctracer64"] + version("5.4.0", sha256="04c1e955267a3e8440833a177bb976f57697aba0b90c325d07fc0c6bd4065aea") version("5.3.3", sha256="f2cb1e6bb69ea1a628c04f984741f781ae1d8498dc58e15795bb03015f924d13") version("5.3.0", sha256="36f1da60863a113bb9fe2957949c661f00a702e249bb0523cda1fb755c053808") version("5.2.3", sha256="93f4bb7529db732060bc12055aa10dc346a459a1086cddd5d86c7b509301be4f") @@ -72,6 +73,7 @@ class RoctracerDev(CMakePackage, ROCmPackage): "5.2.3", "5.3.0", "5.3.3", + "5.4.0", ]: depends_on("hsakmt-roct@" + ver, when="@" + ver) depends_on("hsa-rocr-dev@" + ver, when="@" + ver) diff --git a/var/spack/repos/builtin/packages/rocwmma/package.py b/var/spack/repos/builtin/packages/rocwmma/package.py index 403999335d..565baeea60 100644 --- a/var/spack/repos/builtin/packages/rocwmma/package.py +++ b/var/spack/repos/builtin/packages/rocwmma/package.py @@ -21,11 +21,12 @@ class Rocwmma(CMakePackage): homepage = "https://github.com/ROCmSoftwarePlatform/rocWMMA" git = "https://github.com/ROCmSoftwarePlatform/rocWMMA.git" - url = "https://github.com/ROCmSoftwarePlatform/rocWMMA/archive/refs/tags/rocm-5.3.3.tar.gz" + url = "https://github.com/ROCmSoftwarePlatform/rocWMMA/archive/refs/tags/rocm-5.4.0.tar.gz" tags = ["rocm"] maintainers("srekolam", "renjithravindrankannath") + version("5.4.0", sha256="a18724c3b45d171e54ef9f85c269124ce8d29b6a2f9dbd76a4806bda2933f7a7") version("5.3.3", sha256="cd9bc09f98fb78e53ba4bde1dcfe1817c34c2822234a82b1128d36d92b97ae79") version("5.3.0", sha256="04bac641ba18059118d3faa5f21fe3bf3e285055d40930489ebf27ffc8e5d16e") version("5.2.3", sha256="7f42e9742eff258f7c09c518c5ea9c71a224574e1c075d7e1c4e464192fc4920") @@ -50,7 +51,7 @@ class Rocwmma(CMakePackage): depends_on("googletest@1.10.0:", type="test") - for ver in ["5.2.0", "5.2.1", "5.2.3", "5.3.0", "5.3.3"]: + for ver in ["5.2.0", "5.2.1", "5.2.3", "5.3.0", "5.3.3", "5.4.0"]: depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver) depends_on("llvm-amdgpu@" + ver, type="build", when="@" + ver) depends_on("hip@" + ver, when="@" + ver) -- cgit v1.2.3-70-g09d2