Bump up the version for ROCm-6.0.0 (#42026)

* Bump up the version for ROCm-6.0.0
* Adding patch files
* Style check failure fix
* Style check fixes
* Style check error fixes
* Patch to remove hipblas client file installation in 6.0
* Patch need to be applied on all 5.7 relases
* 6.0 update for math libs and other packages, new github url etc
* Correct package-audit failures
* Correcting shasum for rocfft patch and limiting patch in rocblas
* Reverting updates in rocprofiler-dev due to ci-gitlab failure
* Fixes for ci-gitlab failure due to disabling hip backward compatibilit
* Adding patch file to Change HIP_PLATFORM from HCC to AMD and NVCC to NVIDIA
* Use the gcnArchName inplace of gcnArch as gcnArch is deprecated from rocm-6.0.0
* Patches to fix magma and blaspp build error with rocm 6.0.0
* Patch for mfem and arborx for rocm 6.0
* Style check error fix
* Correcting style check errors
* Uodating dependent version
* Update for petsc to build with rocm 6.0
  Need reverting-operator-mixup-fix-for-slate.patch for rocm 6.0
* Reverting the change in url for 2.7.4-rocm-enhanced
* hip-tensor 6.0.0 update
This commit is contained in:
renjithravindrankannath
2024-01-22 10:19:28 -08:00
committed by GitHub
parent 7acd5bdc7f
commit c673979fee
86 changed files with 13036 additions and 280 deletions

View File

@@ -12,8 +12,8 @@ class Amdsmi(CMakePackage):
is a C library for Linux that provides a user space interface for
applications to monitor and control AMD device."""
homepage = "https://github.com/RadeonOpenCompute/amdsmi"
url = "https://github.com/RadeonOpenCompute/amdsmi/archive/refs/tags/rocm-5.6.0.tar.gz"
homepage = "https://github.com/ROCm/amdsmi"
url = "https://github.com/ROCm/amdsmi/archive/refs/tags/rocm-5.6.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")

View File

@@ -7,8 +7,8 @@
from spack.package import *
tools_url = "https://github.com/ROCm-Developer-Tools"
compute_url = "https://github.com/RadeonOpenCompute"
tools_url = "https://github.com/ROCm"
compute_url = "https://github.com/ROCm"
aomp = [
@@ -368,7 +368,7 @@ def install(self, spec, prefix):
"-DCMAKE_C_COMPILER={0}".format(self.compiler.cc),
"-DCMAKE_CXX_COMPILER={0}".format(self.compiler.cxx),
"-DCMAKE_ASM_COMPILER={0}".format(self.compiler.cc),
"-DBUG_REPORT_URL=https://github.com/ROCm-Developer-Tools/aomp",
"-DBUG_REPORT_URL=https://github.com/ROCm/aomp",
"-DLLVM_ENABLE_BINDINGS=OFF",
"-DLLVM_INCLUDE_BENCHMARKS=OFF",
"-DLLVM_BUILD_TESTS=OFF",

View File

@@ -0,0 +1,24 @@
From a31d3766f5a7a3a3e20d5bc0c315ad6295a82298 Mon Sep 17 00:00:00 2001
From: Afzal Patel <afzal.patel@amd.com>
Date: Wed, 17 Jan 2024 11:50:18 -0800
Subject: [PATCH] Changed required version of rocthrust to 3 for rocm 6.0
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8c3c99a..1af6d13 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,7 +22,7 @@ if(Kokkos_ENABLE_HIP AND ARBORX_ENABLE_ROCTHRUST)
# Require at least rocThrust-2.10.5 (that comes with ROCm 3.9) because
# rocPRIM dependency is not set properly in exported configuration for
# earlier versions
- find_package(rocthrust 2.10.5 REQUIRED CONFIG)
+ find_package(rocthrust 3 REQUIRED CONFIG)
target_link_libraries(ArborX INTERFACE roc::rocthrust)
endif()
--
2.25.1

View File

@@ -96,6 +96,7 @@ class Arborx(CMakePackage, CudaPackage, ROCmPackage):
depends_on("trilinos@13.4.0:", when="@1.3+trilinos")
depends_on("trilinos@14.0.0:", when="@1.4:+trilinos")
patch("trilinos14.0-kokkos-major-version.patch", when="@1.4+trilinos ^trilinos@14.0.0")
patch("0001-update-major-version-required-for-rocm-6.0.patch", when="+rocm ^hip@6.0:")
conflicts("~serial", when="+trilinos")
conflicts("+cuda", when="+trilinos")

View File

@@ -13,9 +13,9 @@ class Atmi(CMakePackage):
consistent, declarative API to create task graphs on CPUs and GPUs
(integrated and discrete)."""
homepage = "https://github.com/RadeonOpenCompute/atmi"
git = "https://github.com/RadeonOpenCompute/atmi.git"
url = "https://github.com/RadeonOpenCompute/atmi/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/atmi"
git = "https://github.com/ROCm/atmi.git"
url = "https://github.com/ROCm/atmi/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")

View File

@@ -11,9 +11,9 @@ class AwsOfiRccl(AutotoolsPackage):
libfabric as a network provider while running AMD's RCCL based
applications."""
homepage = "https://github.com/ROCmSoftwarePlatform/aws-ofi-rccl"
git = "https://github.com/ROCmSoftwarePlatform/aws-ofi-rccl.git"
url = "https://github.com/ROCmSoftwarePlatform/aws-ofi-rccl.git"
homepage = "https://github.com/ROCm/aws-ofi-rccl"
git = "https://github.com/ROCm/aws-ofi-rccl.git"
url = "https://github.com/ROCm/aws-ofi-rccl.git"
tags = ["rocm"]
maintainers("bvanessen")

View File

@@ -157,7 +157,7 @@ class Babelstream(CMakePackage, CudaPackage, ROCmPackage):
when="+thrust",
msg="Which Thrust implementation to use, supported options include:\
- CUDA (via https://github.com/NVIDIA/thrust)\
- ROCM (via https://github.com/ROCmSoftwarePlatform/rocThrust)",
- ROCM (via https://github.com/ROCm/rocThrust)",
)
# This applies to all

View File

@@ -0,0 +1,50 @@
From a75f399bfa77680e7736d126ef3e5a520e1a1702 Mon Sep 17 00:00:00 2001
From: sreenivasa murthy kolam <sreenivasamurthy.kolam@amd.com>
Date: Wed, 17 Jan 2024 12:55:06 +0000
Subject: [PATCH] fix build error with rocm-6.0.0 by adding extra parameters
for rocblas function calls rocblas_ztrmm() ,rocblas_strmm(),
rocblas_ctrmm(),rocblas_dtrmm()
---
src/rocblas_wrappers.cc | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/rocblas_wrappers.cc b/src/rocblas_wrappers.cc
index 0e01a95..44ab150 100644
--- a/src/rocblas_wrappers.cc
+++ b/src/rocblas_wrappers.cc
@@ -667,6 +667,7 @@ void trmm(
m, n,
&alpha,
dA, ldda,
+ dB, lddb,
dB, lddb ) );
}
@@ -686,6 +687,7 @@ void trmm(
m, n,
&alpha,
dA, ldda,
+ dB, lddb,
dB, lddb ) );
}
@@ -705,6 +707,7 @@ void trmm(
m, n,
(rocblas_float_complex*) &alpha,
(rocblas_float_complex*) dA, ldda,
+ (rocblas_float_complex*) dB, lddb,
(rocblas_float_complex*) dB, lddb ) );
}
@@ -724,6 +727,7 @@ void trmm(
m, n,
(rocblas_double_complex*) &alpha,
(rocblas_double_complex*) dA, ldda,
+ (rocblas_double_complex*) dB, lddb,
(rocblas_double_complex*) dB, lddb ) );
}
--
2.39.3

View File

@@ -21,6 +21,9 @@ class Blaspp(CMakePackage, CudaPackage, ROCmPackage):
license("BSD-3-Clause")
version("master", branch="master")
version(
"2023.11.05", sha256="62dfc03ec07c0826e0466dc2c204b460caa929d53ad4f050cb132d92670be7ce"
)
version(
"2023.08.25", sha256="1d9c7227a6d8776944aa866592142b7b51c6e4ba5529d168eb8ae2b329c47401"
)
@@ -76,6 +79,10 @@ class Blaspp(CMakePackage, CudaPackage, ROCmPackage):
requires("%oneapi", when="+sycl", msg="blaspp+sycl must be compiled with %oneapi")
patch(
"0001-fix-blaspp-build-error-with-rocm-6.0.0.patch", when="@2023.06.00: ^hip@6.0.0 +rocm"
)
def cmake_args(self):
spec = self.spec
backend_config = "-Duse_cuda=%s" % ("+cuda" in spec)

View File

@@ -12,9 +12,9 @@ class Comgr(CMakePackage):
"""This provides various Lightning Compiler related services. It currently
contains one library, the Code Object Manager (Comgr)"""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/ROCm-CompilerSupport"
git = "https://github.com/ROCm/ROCm-CompilerSupport.git"
url = "https://github.com/ROCm/ROCm-CompilerSupport/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath", "haampie")
@@ -23,6 +23,7 @@ class Comgr(CMakePackage):
license("NCSA")
version("master", branch="amd-stg-open")
version("6.0.0", sha256="04353d27a512642a5e5339532a39d0aabe44e0964985de37b150a2550385800a")
version("5.7.1", sha256="3b9433b4a0527167c3e9dfc37a3c54e0550744b8d4a8e1be298c8d4bcedfee7c")
version("5.7.0", sha256="e234bcb93d602377cfaaacb59aeac5796edcd842a618162867b7e670c3a2c42c")
version("5.6.1", sha256="0a85d84619f98be26ca7a32c71f94ed3c4e9866133789eabb451be64ce739300")
@@ -152,6 +153,7 @@ class Comgr(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
# llvm libs are linked statically, so this *could* be a build dep
@@ -163,7 +165,7 @@ class Comgr(CMakePackage):
"rocm-device-libs@" + ver, when="@{0} ^llvm-amdgpu ~rocm-device-libs".format(ver)
)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
root_cmakelists_dir = join_path("lib", "comgr")

View File

@@ -11,14 +11,15 @@ class ComposableKernel(CMakePackage):
"""Composable Kernel: Performance Portable Programming Model
for Machine Learning Tensor Operators."""
homepage = "https://github.com/ROCmSoftwarePlatform/composable_kernel"
git = "https://github.com/ROCmSoftwarePlatform/composable_kernel.git"
url = "https://github.com/ROCmSoftwarePlatform/composable_kernel/archive/refs/tags/rocm-5.7.1.tar.gz"
homepage = "https://github.com/ROCm/composable_kernel"
git = "https://github.com/ROCm/composable_kernel.git"
url = "https://github.com/ROCm/composable_kernel/archive/refs/tags/rocm-5.7.1.tar.gz"
maintainers("srekolam", "afzpatel")
license("MIT")
version("master", branch="develop")
version("6.0.0", sha256="a8f736f2f2a8afa4cddd06301205be27774d85f545429049b4a2bbbe6fcd67df")
version("5.7.1", sha256="75f66e023c2e31948e91fa26366eaeac72d871fc2e5188361d4465179f13876e")
version("5.7.0", sha256="d9624dbaef04e0138f9f73596c49b4fe9ded69974bae7236354baa32649bf21a")
version("5.6.1", commit="f5ec04f091fa5c48c67d7bacec36a414d0be06a5")
@@ -46,7 +47,18 @@ class ComposableKernel(CMakePackage):
depends_on("pkgconfig", type="build")
depends_on("cmake@3.16:", type="build")
for ver in ["master", "5.7.1", "5.7.0", "5.6.1", "5.6.0", "5.5.1", "5.5.0", "5.4.3", "5.4.0"]:
for ver in [
"master",
"6.0.0",
"5.7.1",
"5.7.0",
"5.6.1",
"5.6.0",
"5.5.1",
"5.5.0",
"5.4.3",
"5.4.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("llvm-amdgpu@" + ver, when="@" + ver)
depends_on("rocm-cmake@" + ver, when="@" + ver, type="build")

View File

@@ -114,7 +114,7 @@ def cmake_args(self):
if "none" not in rocm_arch:
args.append("-DCMAKE_CXX_FLAGS={0}".format(self.hip_flags(rocm_arch)))
# See https://github.com/ROCmSoftwarePlatform/rocFFT/issues/322
# See https://github.com/ROCm/rocFFT/issues/322
if self.spec.satisfies("^cmake@3.21.0:3.21.2"):
args.append(self.define("__skip_rocmclang", "ON"))

View File

@@ -11,9 +11,9 @@
class HipExamples(Package):
"""Examples for HIP"""
homepage = "https://github.com/ROCm-Developer-Tools/HIP-Examples/"
git = "https://github.com/ROCm-Developer-Tools/HIP-Examples.git"
url = "https://github.com/ROCm-Developer-Tools/HIP-Examples/archive/rocm-5.4.3.tar.gz"
homepage = "https://github.com/ROCm/HIP-Examples/"
git = "https://github.com/ROCm/HIP-Examples.git"
url = "https://github.com/ROCm/HIP-Examples/archive/rocm-5.4.3.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath", "afzpatel")

View File

@@ -12,8 +12,8 @@ class HipRocclr(CMakePackage):
with to different backends such as ROCr or PAL This abstraction allows
runtimes to work on Windows as well as on Linux without much effort."""
homepage = "https://github.com/ROCm-Developer-Tools/ROCclr"
git = "https://github.com/ROCm-Developer-Tools/ROCclr.git"
homepage = "https://github.com/ROCm/ROCclr"
git = "https://github.com/ROCm/ROCclr.git"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -21,9 +21,9 @@ class HipRocclr(CMakePackage):
def url_for_version(self, version):
# Fix up a typo in the 3.5.0 release.
if version == Version("3.5.0"):
return "https://github.com/ROCm-Developer-Tools/ROCclr/archive/roc-3.5.0.tar.gz"
return "https://github.com/ROCm/ROCclr/archive/roc-3.5.0.tar.gz"
url = "https://github.com/ROCm-Developer-Tools/ROCclr/archive/rocm-{0}.tar.gz"
url = "https://github.com/ROCm/ROCclr/archive/rocm-{0}.tar.gz"
return url.format(version)
license("MIT")
@@ -152,13 +152,13 @@ def url_for_version(self, version):
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
depends_on("comgr@" + ver, when="@" + ver)
# See: https://github.com/ROCm-Developer-Tools/ROCclr/pull/16
# See: https://github.com/ROCm/ROCclr/pull/16
# In 3.7.0 the find opengl things have changed slightly.
patch("opengl.patch", when="@3.5.0")
resource(
name="opencl-on-vdi",
url="https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/roc-3.5.0.tar.gz",
url="https://github.com/ROCm/ROCm-OpenCL-Runtime/archive/roc-3.5.0.tar.gz",
sha256="511b617d5192f2d4893603c1a02402b2ac9556e9806ff09dd2a91d398abf39a0",
expand=True,
destination="",
@@ -197,7 +197,7 @@ def url_for_version(self, version):
]:
resource(
name="opencl-on-vdi",
url="https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-{0}.tar.gz".format(
url="https://github.com/ROCm/ROCm-OpenCL-Runtime/archive/rocm-{0}.tar.gz".format(
d_version
),
sha256=d_shasum,
@@ -209,7 +209,7 @@ def url_for_version(self, version):
resource(
name="opencl-on-vdi",
git="https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime.git",
git="https://github.com/ROCm/ROCm-OpenCL-Runtime.git",
destination="",
placement="opencl-on-vdi",
branch="main",

View File

@@ -17,10 +17,11 @@ class HipTensor(CMakePackage, ROCmPackage):
maintainers("srekolam", "afzpatel")
version("master", branch="master")
version("6.0.0", sha256="268d7f114784b7e824f89c21c65c2efedbb5486f09a356a56dca1b89bde1ef7a")
version("5.7.1", sha256="96743d4e695fe865aef4097ae31d9b4e42a2d5a92135a005b0d187d9c0b17645")
version("5.7.0", sha256="4b17f6d43b17fe2dc1d0c61e9663d4752006f7898cc94231206444a1663eb252")
for ver in ["5.7.0", "5.7.1", "master"]:
for ver in ["5.7.0", "5.7.1", "6.0.0", "master"]:
depends_on(f"composable-kernel@{ver}", when=f"@{ver}")
depends_on(f"rocm-cmake@{ver}", when=f"@{ver}")

View File

@@ -0,0 +1,61 @@
diff --git a/clr/hipamd/CMakeLists.txt b/clr/hipamd/CMakeLists.txt
index 7ad3001..aaf6ad0 100755
--- a/clr/hipamd/CMakeLists.txt
+++ b/clr/hipamd/CMakeLists.txt
@@ -297,16 +297,6 @@ if(HIP_RUNTIME STREQUAL "rocclr")
add_subdirectory(src)
endif()
-# Download libamdhip64.so.5
-if(HIP_PLATFORM STREQUAL "amd")
- if(NOT WIN32)
- execute_process(COMMAND sh -c "${CMAKE_CURRENT_SOURCE_DIR}/download_libamhip64_v5.sh" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMAND_ECHO STDERR RESULT_VARIABLE DWLD_HIP_SO_RC)
- if (DWLD_HIP_SO_RC AND NOT DWLD_HIP_SO_RC EQUAL 0)
- message(FATAL_ERROR "Failed to download libamdhip64.so.5")
- endif()
- endif()
-endif()
-
# Build doxygen documentation
find_program(DOXYGEN_EXE doxygen)
if(DOXYGEN_EXE)
@@ -408,8 +398,6 @@ if (NOT ${HIPCC_BIN_DIR} STREQUAL "")
install(PROGRAMS ${HIPCC_BIN_DIR}/hipcc.pl DESTINATION bin)
install(PROGRAMS ${HIPCC_BIN_DIR}/hipconfig.pl DESTINATION bin)
install(PROGRAMS ${HIPCC_BIN_DIR}/hipvars.pm DESTINATION bin)
- install(PROGRAMS ${HIPCC_BIN_DIR}/hipcc.bat DESTINATION bin)
- install(PROGRAMS ${HIPCC_BIN_DIR}/hipconfig.bat DESTINATION bin)
endif()
#############################
diff --git a/hipcc/bin/hipcc.pl b/hipcc/bin/hipcc.pl
index 513a427..cd2d6ac 100755
--- a/hipcc/bin/hipcc.pl
+++ b/hipcc/bin/hipcc.pl
@@ -160,11 +160,14 @@ if ($HIP_PLATFORM eq "amd") {
if($isWindows) {
$execExtension = ".exe";
}
- $HIPCC=get_normalized_path("$HIP_CLANG_PATH/clang++" . $execExtension);
+ # llvm_path is set inside the hip recipe
+ $LLVM_PATH= $ENV{'LLVM_PATH'};
+ $HIPCC="${LLVM_PATH}/bin/clang++" . $execExtension;
# If $HIPCC clang++ is not compiled, use clang instead
if ( ! -e $HIPCC ) {
- $HIPCC=get_normalized_path("$HIP_CLANG_PATH/clang" . $execExtension);
+ $LLVM_PATH= $ENV{'LLVM_PATH'};
+ $HIPCC="${LLVM_PATH}/bin/clang" . $execExtension;
$HIPLDFLAGS = "--driver-mode=g++";
}
# to avoid using dk linker or MSVC linker
@@ -484,7 +487,8 @@ if($HIP_PLATFORM eq "amd"){
$targetsStr = $ENV{HCC_AMDGPU_TARGET};
} elsif (not $isWindows) {
# Else try using rocm_agent_enumerator
- $ROCM_AGENT_ENUM = "${ROCM_PATH}/bin/rocm_agent_enumerator";
+ $ROCMINFO_PATH = $ENV{'ROCMINFO_PATH'} // $ROCMINFO_PATH;
+ $ROCM_AGENT_ENUM = "${ROCMINFO_PATH}/bin/rocm_agent_enumerator";
$targetsStr = `${ROCM_AGENT_ENUM} -t GPU`;
$targetsStr =~ s/\n/,/g;
}

View File

@@ -0,0 +1,17 @@
diff --git a/include/hip/hip_runtime_api.h b/include/hip/hip_runtime_api.h
index 88e6850..d280504 100644
--- a/include/hip/hip_runtime_api.h
+++ b/include/hip/hip_runtime_api.h
@@ -259,7 +259,11 @@ typedef enum hipMemoryType {
* Pointer attributes
*/
typedef struct hipPointerAttribute_t {
- enum hipMemoryType type;
+ union {
+ // Deprecated, use instead type
+ enum hipMemoryType memoryType;
+ enum hipMemoryType type;
+ };
int device;
void* devicePointer;
void* hostPointer;

View File

@@ -16,9 +16,9 @@ class Hip(CMakePackage):
create portable applications for AMD and NVIDIA GPUs from
single source code."""
homepage = "https://github.com/ROCm-Developer-Tools/HIP"
git = "https://github.com/ROCm-Developer-Tools/HIP.git"
url = "https://github.com/ROCm-Developer-Tools/HIP/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/HIP"
git = "https://github.com/ROCm/HIP.git"
url = "https://github.com/ROCm/HIP/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath", "haampie")
@@ -27,6 +27,7 @@ class Hip(CMakePackage):
license("MIT")
version("master", branch="master")
version("6.0.0", sha256="0d575788e0b731124a8489a36652014a165b9ebab92d5456ec3c976e062f3a82")
version("5.7.1", sha256="eaa0e14a9ae45c58ed37863797b683a7778b3cbbf92f5b6529ec65fd61d61f3e")
version("5.7.0", sha256="cb61234eec7879fb7e20937659ad535b93a6e66fc8de0a543da8b7702474f2fc")
version("5.6.1", sha256="4b3c4dfcf8595da0e1b8c3e8067b1ccebeaac337762ff098db14375fa8dd4487")
@@ -172,6 +173,7 @@ class Hip(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hsakmt-roct@" + ver, when="@" + ver)
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
@@ -180,12 +182,22 @@ class Hip(CMakePackage):
depends_on("rocminfo@" + ver, when="@" + ver)
depends_on("roctracer-dev-api@" + ver, when="@" + ver)
for ver in ["5.4.0", "5.4.3", "5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in [
"5.4.0",
"5.4.3",
"5.5.0",
"5.5.1",
"5.6.0",
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hipify-clang", when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
# hipcc likes to add `-lnuma` by default :(
# ref https://github.com/ROCm-Developer-Tools/HIP/pull/2202
# ref https://github.com/ROCm/HIP/pull/2202
depends_on("numactl", when="@3.7.0:")
# roc-obj-ls requirements
@@ -212,9 +224,7 @@ class Hip(CMakePackage):
]:
resource(
name="hipamd",
url="https://github.com/ROCm-Developer-Tools/hipamd/archive/rocm-{0}.tar.gz".format(
d_version
),
url="https://github.com/ROCm/hipamd/archive/rocm-{0}.tar.gz".format(d_version),
sha256=d_shasum,
expand=True,
destination="",
@@ -241,7 +251,7 @@ class Hip(CMakePackage):
]:
resource(
name="opencl",
url="https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-{0}.tar.gz".format(
url="https://github.com/ROCm/ROCm-OpenCL-Runtime/archive/rocm-{0}.tar.gz".format(
d_version
),
sha256=d_shasum,
@@ -269,9 +279,7 @@ class Hip(CMakePackage):
]:
resource(
name="rocclr",
url="https://github.com/ROCm-Developer-Tools/ROCclr/archive/rocm-{0}.tar.gz".format(
d_version
),
url="https://github.com/ROCm/ROCclr/archive/rocm-{0}.tar.gz".format(d_version),
sha256=d_shasum,
expand=True,
destination="",
@@ -280,6 +288,7 @@ class Hip(CMakePackage):
)
# Add hip-clr sources thru the below
for d_version, d_shasum in [
("6.0.0", "798b55b5b5fb90dd19db54f136d8d8e1da9ae1e408d5b12b896101d635f97e50"),
("5.7.1", "c78490335233a11b4d8a5426ace7417c555f5e2325de10422df06c0f0f00f7eb"),
("5.7.0", "bc2447cb6fd86dff6a333b04e77ce85755104d9011a14a044af53caf02449573"),
("5.6.1", "0b88af1e99643899d11b1c8cf8a3c46601051b328a5e0ffbd44ee88b7eb0db33"),
@@ -287,9 +296,7 @@ class Hip(CMakePackage):
]:
resource(
name="clr",
url="https://github.com/ROCm-Developer-Tools/clr/archive/refs/tags/rocm-{0}.tar.gz".format(
d_version
),
url="https://github.com/ROCm/clr/archive/refs/tags/rocm-{0}.tar.gz".format(d_version),
sha256=d_shasum,
expand=True,
destination="",
@@ -299,6 +306,7 @@ class Hip(CMakePackage):
# Add hipcc sources thru the below
for d_version, d_shasum in [
("6.0.0", "e9cfaaecaf0e6ed363946439197f340c115e8e1189f96dbd716cf20245c29255"),
("5.7.1", "d47d27ef2b5de7f49cdfd8547832ac9b437a32e6fc6f0e9c1646f4b704c90aee"),
("5.7.0", "9f839bf7226e5e26f3150f8ba6eca507ab9a668e68b207736301b3bb9040c973"),
("5.6.1", "5800fac92b841ef6f52acda78d9bf86f83970bec0fb848a6265d239bdb7eb51a"),
@@ -306,7 +314,7 @@ class Hip(CMakePackage):
]:
resource(
name="hipcc",
url="https://github.com/ROCm-Developer-Tools/HIPCC/archive/refs/tags/rocm-{0}.tar.gz".format(
url="https://github.com/ROCm/HIPCC/archive/refs/tags/rocm-{0}.tar.gz".format(
d_version
),
sha256=d_shasum,
@@ -317,6 +325,7 @@ class Hip(CMakePackage):
)
# Add hiptests sources thru the below
for d_version, d_shasum in [
("6.0.0", "e8f92a0f5d1f6093ca1fb24ff1b7140128900fcdc6e9f01f153d6907e5c2d807"),
("5.7.1", "28fbdf49f405adfee903bc0f05a43ac392c55b34c514c3582dfb7d6d67e79985"),
("5.7.0", "b1dae3cfc715e71dce92ac1da94265a9398944c76cee85ffab8f0c93665a48d6"),
("5.6.1", "5b3002ddfafda162329e4d9e6ac1200eeb48ff08e666b342aa8aeca30750f48b"),
@@ -324,7 +333,7 @@ class Hip(CMakePackage):
]:
resource(
name="hip-tests",
url="https://github.com/ROCm-Developer-Tools/hip-tests/archive/refs/tags/rocm-{0}.tar.gz".format(
url="https://github.com/ROCm/hip-tests/archive/refs/tags/rocm-{0}.tar.gz".format(
d_version
),
sha256=d_shasum,
@@ -366,10 +375,10 @@ class Hip(CMakePackage):
)
patch("0013-remove-compiler-rt-linkage-for-host.5.3.0.patch", when="@5.3.0:5.4")
# See https://github.com/ROCm-Developer-Tools/HIP/pull/2141
# See https://github.com/ROCm/HIP/pull/2141
patch("0002-Fix-detection-of-HIP_CLANG_ROOT.patch", when="@:3.9.0")
# See https://github.com/ROCm-Developer-Tools/HIP/pull/2218
# See https://github.com/ROCm/HIP/pull/2218
patch("0003-Improve-compilation-without-git-repo.3.7.0.patch", when="@3.7.0:3.9.0")
patch("0003-Improve-compilation-without-git-repo.3.10.0.patch", when="@3.10.0:4.0.0")
patch("0003-Improve-compilation-without-git-repo.4.1.0.patch", when="@4.1.0")
@@ -383,7 +392,7 @@ class Hip(CMakePackage):
"_disabletests.4.5.0.patch",
when="@4.5.0:4.5.3",
)
# See https://github.com/ROCm-Developer-Tools/HIP/pull/2219
# See https://github.com/ROCm/HIP/pull/2219
patch("0004-Drop-clang-rt-builtins-linking-on-hip-host.3.7.0.patch", when="@3.7.0:3.9.0")
patch("0004-Drop-clang-rt-builtins-linking-on-hip-host.3.10.0.patch", when="@3.10.0:4.1.0")
@@ -400,14 +409,16 @@ class Hip(CMakePackage):
patch("0014-remove-compiler-rt-linkage-for-host.5.5.0.patch", when="@5.5")
patch("0014-remove-compiler-rt-linkage-for-host.5.6.0.patch", when="@5.6.0:5.6")
patch("0014-Remove-compiler-rt-linkage-for-host-for-5.7.0.patch", when="@5.7.0:5.7")
patch("0015-reverting-operator-mixup-fix-for-slate.patch", when="@5.6:")
patch("0017-Set-PARAMETERS_MIN_ALIGNMENT-to-the-native-alignment.patch", when="@5.7")
patch("0014-remove-compiler-rt-linkage-for-host.6.0.patch", when="@6.0:")
patch("0015-reverting-operator-mixup-fix-for-slate.patch", when="@5.6:6.0")
patch("0017-Set-PARAMETERS_MIN_ALIGNMENT-to-the-native-alignment.patch", when="@5.7:6.0")
patch("0018-reverting-hipMemoryType-with-memoryType.patch", when="@6.0")
# See https://github.com/ROCm-Developer-Tools/HIP/pull/3206
# See https://github.com/ROCm/HIP/pull/3206
patch(
"https://github.com/ROCm-Developer-Tools/HIP/commit/50ee82f6bc4aad10908ce09198c9f7ebfb2a3561.patch?full_index=1",
"https://github.com/ROCm/HIP/commit/50ee82f6bc4aad10908ce09198c9f7ebfb2a3561.patch?full_index=1",
sha256="c2ee21cdc55262c7c6ba65546b5ca5f65ea89730",
when="@5.2:",
when="@5.2:5.7",
)
@property
@@ -533,7 +544,7 @@ def set_variables(self, env):
# This is a variable that does not exist in hipcc but was introduced
# in a patch of ours since 3.5.0 to locate rocm_agent_enumerator:
# https://github.com/ROCm-Developer-Tools/HIP/pull/2138
# https://github.com/ROCm/HIP/pull/2138
env.set("ROCMINFO_PATH", paths["rocminfo"])
# This one is used in hipcc to run `clang --hip-device-lib-path=...`
@@ -548,7 +559,7 @@ def set_variables(self, env):
# Used in comgr and seems necessary when using the JIT compiler, e.g.
# hiprtcCreateProgram:
# https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/blob/rocm-4.0.0/lib/comgr/src/comgr-env.cpp
# https://github.com/ROCm/ROCm-CompilerSupport/blob/rocm-4.0.0/lib/comgr/src/comgr-env.cpp
env.set("LLVM_PATH", paths["llvm-amdgpu"])
env.set("COMGR_PATH", paths["comgr"])
@@ -560,7 +571,7 @@ def set_variables(self, env):
# and parsing of the <prefix>/bin/.hipVersion file. Let's just set this
# to the hip prefix directory for non-external builds so that the
# bin/.hipVersion file can still be parsed.
# See also https://github.com/ROCm-Developer-Tools/HIP/issues/2223
# See also https://github.com/ROCm/HIP/issues/2223
if "@3.8.0:" in self.spec:
env.append_path(
"HIPCC_COMPILE_FLAGS_APPEND",

View File

@@ -12,9 +12,9 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
"""hipBLAS is a BLAS marshalling library, with multiple
supported backends"""
homepage = "https://github.com/ROCmSoftwarePlatform/hipBLAS"
git = "https://github.com/ROCmSoftwarePlatform/hipBLAS.git"
url = "https://github.com/ROCmSoftwarePlatform/hipBLAS/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/hipBLAS"
git = "https://github.com/ROCm/hipBLAS.git"
url = "https://github.com/ROCm/hipBLAS/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie")
@@ -24,6 +24,7 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
version("develop", branch="develop")
version("master", branch="master")
version("6.0.0", sha256="8fbd0c244fe82eded866e06d2399b1d91ab5d43d2ebcb73382c7ce1ae48d9cb3")
version("5.7.1", sha256="794e9298f48ffbe3bd1c1ab87a5c2c2b953713500155fdec9ef8cbb11f81fc8a")
version("5.7.0", sha256="8c6cd2ffa4ce6ab03e05feffe074685b5525610870aebe9d78f817b3037f33a4")
version("5.6.1", sha256="f9da82fbefc68b84081ea0ed0139b91d2a540357fcf505c7f1d57eab01eb327c")
@@ -136,11 +137,14 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
patch("link-clients-blas.patch", when="@4.3.0:4.3.2")
patch("link-clients-blas-4.5.0.patch", when="@4.5.0:4.5.2")
patch("hipblas-link-clients-blas-5.0.0.patch", when="@5.0.0:5.0.2")
patch("remove-hipblas-clients-file-installation.patch", when="@5.5:")
patch("remove-hipblas-clients-file-installation.patch", when="@5.5:5.7.1")
patch("remove-hipblas-clients-file-installation-6.0.patch", when="@6.0:")
depends_on("rocm-cmake@5.2.0:", type="build", when="@5.2.0:")
depends_on("rocm-cmake@5.2.0:", type="build", when="@5.2.0:5.7")
depends_on("rocm-cmake@4.5.0:", type="build", when="@4.5.0:")
depends_on("rocm-cmake@3.5.0:", type="build")
for ver in ["6.0.0"]:
depends_on("rocm-cmake@" + ver, when="+rocm @" + ver)
depends_on("hip +cuda", when="+cuda")
@@ -174,12 +178,12 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
"develop",
]:
depends_on("rocsolver@" + ver, when="+rocm @" + ver)
depends_on("rocblas@" + ver, when="+rocm @" + ver)
for tgt in ROCmPackage.amdgpu_targets:
depends_on(
"rocblas amdgpu_target={0}".format(tgt), when="+rocm amdgpu_target={0}".format(tgt)

View File

@@ -0,0 +1,32 @@
From 120af1b2483868ebdc2ee5f137418d23c14178ad Mon Sep 17 00:00:00 2001
From: Renjith Ravindran <Renjith.RavindranKannath@amd.com>
Date: Wed, 10 Jan 2024 04:28:15 +0000
Subject: [PATCH] Remove hipblas clients file installation
---
clients/CMakeLists.txt | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/clients/CMakeLists.txt b/clients/CMakeLists.txt
index 8206ad7..6a59808 100644
--- a/clients/CMakeLists.txt
+++ b/clients/CMakeLists.txt
@@ -135,15 +135,3 @@ add_custom_command( OUTPUT "${HIPBLAS_GENTEST}"
add_custom_target( hipblas-common DEPENDS "${HIPBLAS_COMMON}" "${HIPBLAS_TEMPLATE}" "${HIPBLAS_SMOKE}" "${HIPBLAS_GENTEST}" )
-if( BUILD_CLIENTS_TESTS OR BUILD_CLIENTS_BENCHMARKS )
- rocm_install(
- FILES ${HIPBLAS_COMMON} ${HIPBLAS_TEMPLATE} ${HIPBLAS_SMOKE}
- DESTINATION "${CMAKE_INSTALL_BINDIR}"
- COMPONENT clients-common
- )
- rocm_install(
- PROGRAMS ${HIPBLAS_GENTEST}
- DESTINATION "${CMAKE_INSTALL_BINDIR}"
- COMPONENT clients-common
- )
-endif()
--
2.39.3

View File

@@ -9,14 +9,15 @@
class Hipcub(CMakePackage, CudaPackage, ROCmPackage):
"""Radeon Open Compute Parallel Primitives Library"""
homepage = "https://github.com/ROCmSoftwarePlatform/hipCUB"
git = "https://github.com/ROCmSoftwarePlatform/hipCUB.git"
url = "https://github.com/ROCmSoftwarePlatform/hipCUB/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/hipCUB"
git = "https://github.com/ROCm/hipCUB.git"
url = "https://github.com/ROCm/hipCUB/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("BSD-3-Clause")
maintainers("srekolam", "renjithravindrankannath")
version("6.0.0", sha256="8d9f6e1e3f8433a2ceae1b0efd6727c21383980077e264725d00d5fee165bd30")
version("5.7.1", sha256="9b23a58408bc4c549d3c754196cb3e2c1a50e177ab0a286101cbea2f7f173945")
version("5.7.0", sha256="899356867f662d9a6f3870bb4a496f605a3143c6ad4d1fa9e9faead68fa8d13b")
version("5.6.1", sha256="4b9479daa40424c9ddbc14ce967aa170680f8ca1ed01a514e6e30ccfa22552ce")
@@ -157,6 +158,7 @@ class Hipcub(CMakePackage, CudaPackage, ROCmPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocprim@" + ver, when="+rocm @" + ver)
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)

View File

@@ -14,9 +14,9 @@ class Hipfft(CMakePackage, CudaPackage, ROCmPackage):
It sits between the application and the backend FFT library, marshalling
inputs into the backend and results back to the application."""
homepage = "https://github.com/ROCmSoftwarePlatform/hipFFT"
git = "https://github.com/ROCmSoftwarePlatform/hipFFT.git"
url = "https://github.com/ROCmSoftwarePlatform/hipfft/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/hipFFT"
git = "https://github.com/ROCm/hipFFT.git"
url = "https://github.com/ROCm/hipfft/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("renjithravindrankannath", "srekolam")
@@ -24,6 +24,7 @@ class Hipfft(CMakePackage, CudaPackage, ROCmPackage):
license("MIT")
version("master", branch="master")
version("6.0.0", sha256="44f328b7862c066459089dfe62833cb7d626c6ceb71c57d8c7d6bba45dad491e")
version("5.7.1", sha256="33452576649df479f084076c47d0b30f6f1da34864094bce767dd9bf609f04aa")
version("5.7.0", sha256="daa5dc44580145e85ff8ffa7eb40a3d1ef41f3217549c01281715ff696a31588")
version("5.6.1", sha256="d2ae36b8eacd39b865e8a7972b8eb86bcea2de4ac90711bba7e29b39b01eaa74")
@@ -125,6 +126,7 @@ class Hipfft(CMakePackage, CudaPackage, ROCmPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
depends_on("rocfft@" + ver, when="+rocm @" + ver)
@@ -133,6 +135,8 @@ class Hipfft(CMakePackage, CudaPackage, ROCmPackage):
depends_on(
"rocfft amdgpu_target={0}".format(tgt), when="+rocm amdgpu_target={0}".format(tgt)
)
# https://github.com/ROCm/rocFFT/pull/85)
patch("001-remove-submodule-and-sync-shared-files-from-rocFFT.patch", when="@6.0.0")
def cmake_args(self):
args = [self.define("BUILD_CLIENTS_SAMPLES", "OFF")]

View File

@@ -9,14 +9,15 @@
class Hipfort(CMakePackage):
"""Radeon Open Compute Parallel Primitives Library"""
homepage = "https://github.com/ROCmSoftwarePlatform/hipfort"
git = "https://github.com/ROCmSoftwarePlatform/hipfort.git"
url = "https://github.com/ROCmSoftwarePlatform/hipfort/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/hipfort"
git = "https://github.com/ROCm/hipfort.git"
url = "https://github.com/ROCm/hipfort/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")
maintainers("cgmb", "srekolam", "renjithravindrankannath")
version("6.0.0", sha256="151cf11648885db799aade0d00a7882589e7195643b02beaa251f1b2a43aceed")
version("5.7.1", sha256="859fac509e195f3ab97c555b5f63afea325a61aae0f281cb19a970a1b533dead")
version("5.7.0", sha256="57b04d59f61683a1b141d6d831d10c9fdecea483991ec02d14c14e441e935c05")
version("5.6.1", sha256="a55345cc9ccaf0cd69d306b8eb9ec2a02c220a57e9c396443cc7273aa3377adc")
@@ -127,6 +128,7 @@ class Hipfort(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, type="build", when="@" + ver)

View File

@@ -10,9 +10,9 @@ class HipifyClang(CMakePackage):
"""hipify-clang is a clang-based tool for translation CUDA
sources into HIP sources"""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/HIPIFY"
git = "https://github.com/ROCm/HIPIFY.git"
url = "https://github.com/ROCm/HIPIFY/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -20,6 +20,7 @@ class HipifyClang(CMakePackage):
license("MIT")
version("master", branch="master")
version("6.0.0", sha256="91bed2b72a6684a04e078e50b12b36b93f64ff96523283f4e5d9a33c11e6b967")
version("5.7.1", sha256="43121e62233dab010ab686d6805bc2d3163f0dc5e89cc503d50c4bcd59eeb394")
version("5.7.0", sha256="10e4386727e102fba166f012147120a6ec776e8d95fbcac3af93e243205d80a6")
version("5.6.1", sha256="ec3a4f276556f9fd924ea3c89be11b6c6ddf999cdd4387f669e38e41ee0042e8")
@@ -143,11 +144,12 @@ class HipifyClang(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
depends_on("llvm-amdgpu@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
def setup_run_environment(self, env):

View File

@@ -12,9 +12,9 @@ class Hiprand(CMakePackage, CudaPackage, ROCmPackage):
"""The hipRAND project provides an interface for generating pseudo-random
and quasi-random numbers with either cuRAND or rocRAND backends."""
homepage = "https://github.com/ROCmSoftwarePlatform/hipRAND"
git = "https://github.com/ROCmSoftwarePlatform/hipRAND.git"
url = "https://github.com/ROCmSoftwarePlatform/hipRAND/archive/rocm-5.7.1.tar.gz"
homepage = "https://github.com/ROCm/hipRAND"
git = "https://github.com/ROCm/hipRAND.git"
url = "https://github.com/ROCm/hipRAND/archive/rocm-5.7.1.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath")
@@ -24,6 +24,7 @@ class Hiprand(CMakePackage, CudaPackage, ROCmPackage):
version("develop", branch="develop")
version("master", branch="master")
version("6.0.0", sha256="7e06c98f9da7c0b20b55b2106cf3a48b9ef6577a79549a455667ae97bd15b61d")
version("5.7.1", sha256="81a9f5f0960dce125ce1ab1c7eb58bb07c8756346f9e46a1cc65aa61d5a114f8")
version("5.7.0", sha256="4dee76719839503b02ce7d38e1c61bbdb2da18da7f63a7ef7012c84c71aa0a9d")
version("5.6.1", sha256="a73d5578bc7f8dff0b8960e4bff97bc4fc28f508a19ed6acd1cfd4d3e76b47ee")
@@ -88,6 +89,7 @@ class Hiprand(CMakePackage, CudaPackage, ROCmPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
"develop",
]:

View File

@@ -16,9 +16,9 @@ class Hipsolver(CMakePackage, CudaPackage, ROCmPackage):
regardless of the chosen backend. Currently, hipSOLVER supports rocSOLVER
and cuSOLVER as backends."""
homepage = "https://github.com/ROCmSoftwarePlatform/hipSOLVER"
git = "https://github.com/ROCmSoftwarePlatform/hipSOLVER.git"
url = "https://github.com/ROCmSoftwarePlatform/hipSOLVER/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/hipSOLVER"
git = "https://github.com/ROCm/hipSOLVER.git"
url = "https://github.com/ROCm/hipSOLVER/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath")
@@ -28,6 +28,7 @@ class Hipsolver(CMakePackage, CudaPackage, ROCmPackage):
version("develop", branch="develop")
version("master", branch="master")
version("6.0.0", sha256="385849db02189d5e62096457e52ae899ae5c1ae7d409dc1da61f904d8861b48c")
version("5.7.1", sha256="5592e965c0dc5722931302289643d1ece370220af2c7afc58af97b3395295658")
version("5.7.0", sha256="0e35795bfbcb57ed8e8437471209fb7d230babcc31d9a4a0b3640c3ee639f4a7")
version("5.6.1", sha256="2e546bc7771f7bf0aa7892b69cded725941573e8b70614759c3d03c21eb78dde")
@@ -115,6 +116,7 @@ class Hipsolver(CMakePackage, CudaPackage, ROCmPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
"develop",
]:

View File

@@ -12,9 +12,9 @@ class Hipsparse(CMakePackage, CudaPackage, ROCmPackage):
"""hipSPARSE is a SPARSE marshalling library, with
multiple supported backends"""
homepage = "https://github.com/ROCmSoftwarePlatform/hipSPARSE"
git = "https://github.com/ROCmSoftwarePlatform/hipSPARSE.git"
url = "https://github.com/ROCmSoftwarePlatform/hipSPARSE/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/hipSPARSE"
git = "https://github.com/ROCm/hipSPARSE.git"
url = "https://github.com/ROCm/hipSPARSE/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie")
@@ -22,6 +22,7 @@ class Hipsparse(CMakePackage, CudaPackage, ROCmPackage):
license("MIT")
version("6.0.0", sha256="718a5f03b6a579c0542a60d00f5688bec53a181b429b7ee8ce3c8b6c4a78d754")
version("5.7.1", sha256="16c3818260611226c3576d8d55ad8f51e0890d2473503edf2c9313250ae65ca7")
version("5.7.0", sha256="729b749b5340034639873a99e6091963374f6f0456c8f36d076c96f03fe43888")
version("5.6.1", sha256="d636d0c5d1e38cc0c09b1e95380199ec82bd465b94bd6661f0c8d9374d9b565d")
@@ -160,6 +161,7 @@ class Hipsparse(CMakePackage, CudaPackage, ROCmPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
depends_on("rocsparse@" + ver, when="+rocm @" + ver)

View File

@@ -15,15 +15,16 @@ class HsaRocrDev(CMakePackage):
HSA ROCm kernel agents.AMD Heterogeneous System Architecture HSA -
Linux HSA Runtime for Boltzmann (ROCm) platforms."""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/ROCR-Runtime"
git = "https://github.com/ROCm/ROCR-Runtime.git"
url = "https://github.com/ROCm/ROCR-Runtime/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath", "haampie")
libraries = ["libhsa-runtime64"]
version("master", branch="master")
version("6.0.0", sha256="99e8fa1af52d0bf382f28468e1a345af1ff3452c35914a6a7b5eeaf69fc568db")
version("5.7.1", sha256="655e9bfef4b0b6ad3f9b89c934dc0a8377273bb0bccbda6c399ac5d5d2c1c04c")
version("5.7.0", sha256="2c56ec5c78a36f2b847afd4632cb25dbf6ecc58661eb2ae038c2552342e6ce23")
version("5.6.1", sha256="4de9a57c2092edf9398d671c8a2c60626eb7daf358caf710da70d9c105490221")
@@ -154,6 +155,7 @@ class HsaRocrDev(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
depends_on("hsakmt-roct@" + ver, when="@" + ver)
@@ -163,7 +165,7 @@ class HsaRocrDev(CMakePackage):
"rocm-device-libs@" + ver, when="@{0} ^llvm-amdgpu ~rocm-device-libs".format(ver)
)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
# Both 3.5.0 and 3.7.0 force INSTALL_RPATH in different ways
@@ -210,4 +212,7 @@ def cmake_args(self):
if self.spec.satisfies("@5.6:"):
args.append("-DCMAKE_INSTALL_LIBDIR=lib")
if self.spec.satisfies("@6.0:"):
args.append(self.define("ROCM_PATCH_VERSION", "60000"))
return args

View File

@@ -14,14 +14,15 @@ class HsakmtRoct(CMakePackage):
Thunk Interface is a user-mode API interfaces used to interact
with the ROCk driver."""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/ROCT-Thunk-Interface"
git = "https://github.com/ROCm/ROCT-Thunk-Interface.git"
url = "https://github.com/ROCm/ROCT-Thunk-Interface/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
version("master", branch="master")
version("6.0.0", sha256="9f4e80bd0a714ce45326941b906a62298c62025eff186dc6c48282ce84c787c7")
version("5.7.1", sha256="38bc3732886a52ca9cd477ec6fcde3ab17a0ba5dc8e2f7ac34c4de597bd00e8b")
version("5.7.0", sha256="52293e40c4ba0c653d796e2f6109f5fb4c79f5fb82310ecbfd9a5432acf9da43")
version("5.6.1", sha256="d60b355bfd21a08e0e36270fd56f98d052c3c6edca47da887fa32bf32759c29b")
@@ -119,11 +120,11 @@ class HsakmtRoct(CMakePackage):
for ver in ["5.3.0", "5.4.0", "5.4.3"]:
depends_on("llvm-amdgpu@" + ver, type="test", when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
depends_on("llvm-amdgpu@" + ver, type="test", when="@" + ver)
# See https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/issues/72
# See https://github.com/ROCm/ROCT-Thunk-Interface/issues/72
# and https://github.com/spack/spack/issues/28398
patch("0001-Remove-compiler-support-libraries-and-libudev-as-req.patch", when="@4.5.0:5.2")
patch("0002-Remove-compiler-support-libraries-and-libudev-as-req-5.3.patch", when="@5.3.0:5.4")

View File

@@ -74,6 +74,7 @@ class Legion(CMakePackage, ROCmPackage):
# https://github.com/spack/spack/issues/37232#issuecomment-1553376552
patch("hip-offload-arch.patch", when="@23.03.0 +rocm")
patch("update-hip-path-legion-23.06.0.patch", when="@23.06.0 ^hip@6.0.0 +rocm")
def patch(self):
if "network=gasnet conduit=ofi-slingshot11 ^cray-mpich+wrappers" in self.spec:
@@ -349,6 +350,10 @@ def cmake_args(self):
options.append(from_variant("Legion_HIP_ARCH", "amdgpu_target"))
options.append(from_variant("Legion_HIJACK_HIP", "hip_hijack"))
options.append(self.define("HIP_PATH", "{0}/hip".format(spec["hip"].prefix)))
if "^hip@:5.7" in spec:
options.append(self.define("HIP_PATH", "{0}/hip".format(spec["hip"].prefix)))
elif "^hip@6.0:" in spec:
options.append(self.define("HIP_PATH", "{0}".format(spec["hip"].prefix)))
if "+fortran" in spec:
# default is off.

View File

@@ -0,0 +1,13 @@
diff --git a/cmake/FindHIP.cmake b/cmake/FindHIP.cmake
index f86edd2..24492ad 100644
--- a/cmake/FindHIP.cmake
+++ b/cmake/FindHIP.cmake
@@ -22,7 +22,7 @@ if(NOT DEFINED HIP_PATH)
set(HIP_PATH $ENV{HIP_PATH} CACHE PATH "Path to where HIP has been installed")
endif()
endif()
-include(${HIP_PATH}/cmake/FindHIP.cmake)
+include(${HIP_PATH}/lib/cmake/hip/FindHIP.cmake)
if(NOT HIP_INCLUDE_DIRS)
list(APPEND HIP_INCLUDE_DIRS

View File

@@ -14,9 +14,9 @@ class LlvmAmdgpu(CMakePackage):
"""Toolkit for the construction of highly optimized compilers,
optimizers, and run-time environments."""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/llvm-project"
git = "https://github.com/ROCm/llvm-project.git"
url = "https://github.com/ROCm/llvm-project/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
executables = [r"amdclang", r"amdclang\+\+", r"amdflang", r"clang.*", r"flang.*", "llvm-.*"]
generator("ninja")
@@ -26,6 +26,7 @@ class LlvmAmdgpu(CMakePackage):
license("Apache-2.0")
version("master", branch="amd-stg-open")
version("6.0.0", sha256="c673708d413d60ca8606ee75c77e9871b6953c59029c987b92f2f6e85f683626")
version("5.7.1", sha256="6b54c422e45ad19c9bf5ab090ec21753e7f7d854ca78132c30eb146657b168eb")
version("5.7.0", sha256="4abdf00b297a77c5886cedb37e63acda2ba11cb9f4c0a64e133b05800aadfcf0")
version("5.6.1", sha256="045e43c0c4a3f4f2f1db9fb603a4f1ea3d56e128147e19ba17909eb57d7f08e5")
@@ -167,12 +168,12 @@ class LlvmAmdgpu(CMakePackage):
# as per 5.2.0 llvm code. It used to be llvm/bin/../lib/libdevice.
# Below patch is to look in the old path.
patch("adjust-openmp-bitcode-directory-for-llvm-link.patch", when="@5.2.0:5.6")
patch("0001-update-HIP_PATH-deduction-for-5.7.0.patch", when="@5.7.0:5.7")
patch("0001-update-HIP_PATH-deduction-for-5.7.0.patch", when="@5.7.0:6.0")
# Below patch is to set the flag -mcode-object-version=none until
# the below fix is available in device-libs release code.
# https://github.com/RadeonOpenCompute/ROCm-Device-Libs/commit/f0356159dbdc93ea9e545f9b61a7842f9c881fdf
patch("patch-llvm-5.5.0.patch", when="@5.5: +rocm-device-libs")
# https://github.com/ROCm/ROCm-Device-Libs/commit/f0356159dbdc93ea9e545f9b61a7842f9c881fdf
patch("patch-llvm-5.5.0.patch", when="@5.5:5.7 +rocm-device-libs")
# i1 muls can sometimes happen after SCEV.
# They resulted in ISel failures because we were missing the patterns for them.
@@ -188,6 +189,7 @@ class LlvmAmdgpu(CMakePackage):
# Add device libs sources so they can be an external LLVM project
for d_version, d_shasum in [
("6.0.0", "198df4550d4560537ba60ac7af9bde31d59779c8ec5d6309627f77a43ab6ef6f"),
("5.7.1", "703de8403c0bd0d80f37c970a698f10f148daf144d34f982e4484d04f7c7bbef"),
("5.7.0", "0f8780b9098573f1c456bdc84358de924dcf00604330770a383983e1775bf61e"),
("5.6.1", "f0dfab272ff936225bfa1e9dabeb3c5d12ce08b812bf53ffbddd2ddfac49761c"),
@@ -221,7 +223,7 @@ class LlvmAmdgpu(CMakePackage):
resource(
name="rocm-device-libs",
placement="rocm-device-libs",
url="https://github.com/RadeonOpenCompute/ROCm-Device-Libs/archive/rocm-{0}.tar.gz".format(
url="https://github.com/ROCm/ROCm-Device-Libs/archive/rocm-{0}.tar.gz".format(
d_version
),
sha256=d_shasum,
@@ -231,11 +233,12 @@ class LlvmAmdgpu(CMakePackage):
resource(
name="rocm-device-libs",
placement="rocm-device-libs",
git="https://github.com/RadeonOpenCompute/ROCm-Device-Libs.git",
git="https://github.com/ROCm/ROCm-Device-Libs.git",
branch="amd-stg-open",
when="@master +rocm-device-libs",
)
for d_version, d_shasum in [
("6.0.0", "99e8fa1af52d0bf382f28468e1a345af1ff3452c35914a6a7b5eeaf69fc568db"),
("5.7.1", "655e9bfef4b0b6ad3f9b89c934dc0a8377273bb0bccbda6c399ac5d5d2c1c04c"),
("5.7.0", "2c56ec5c78a36f2b847afd4632cb25dbf6ecc58661eb2ae038c2552342e6ce23"),
("5.6.1", "4de9a57c2092edf9398d671c8a2c60626eb7daf358caf710da70d9c105490221"),
@@ -244,19 +247,20 @@ class LlvmAmdgpu(CMakePackage):
resource(
name="hsa-runtime",
placement="hsa-runtime",
url=f"https://github.com/RadeonOpenCompute/ROCR-Runtime/archive/rocm-{d_version}.tar.gz",
url=f"https://github.com/ROCm/ROCR-Runtime/archive/rocm-{d_version}.tar.gz",
sha256=d_shasum,
when="@{0}".format(d_version),
)
resource(
name="hsa-runtime",
placement="hsa-runtime",
git="https://github.com/RadeonOpenCompute/ROCR-Runtime.git",
git="https://github.com/ROCm/ROCR-Runtime.git",
branch="master",
when="@master",
)
for d_version, d_shasum in [
("6.0.0", "04353d27a512642a5e5339532a39d0aabe44e0964985de37b150a2550385800a"),
("5.7.1", "3b9433b4a0527167c3e9dfc37a3c54e0550744b8d4a8e1be298c8d4bcedfee7c"),
("5.7.0", "e234bcb93d602377cfaaacb59aeac5796edcd842a618162867b7e670c3a2c42c"),
("5.6.1", "0a85d84619f98be26ca7a32c71f94ed3c4e9866133789eabb451be64ce739300"),
@@ -265,14 +269,14 @@ class LlvmAmdgpu(CMakePackage):
resource(
name="comgr",
placement="comgr",
url=f"https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/archive/rocm-{d_version}.tar.gz",
url=f"https://github.com/ROCm/ROCm-CompilerSupport/archive/rocm-{d_version}.tar.gz",
sha256=d_shasum,
when="@{0}".format(d_version),
)
resource(
name="comgr",
placement="comgr",
git="https://github.com/RadeonOpenCompute/ROCm-CompilerSupport.git",
git="https://github.com/ROCm/ROCm-CompilerSupport.git",
branch="amd-stg-open",
when="@master",
)

View File

@@ -0,0 +1,99 @@
From 4f7d9ff22996ba3000ee344a0f84f73c27257f47 Mon Sep 17 00:00:00 2001
From: sreenivasa murthy kolam <sreenivasamurthy.kolam@amd.com>
Date: Wed, 17 Jan 2024 11:44:32 +0000
Subject: [PATCH] Fix Build Failure with rocm-6.0.0 . Add extra parameter for
hipblasZtrmm(),hipblasCtrmm()etc
---
interface_hip/blas_c_v2.cpp | 3 ++-
interface_hip/blas_d_v2.cpp | 3 ++-
interface_hip/blas_s_v2.cpp | 3 ++-
interface_hip/blas_z_v2.cpp | 3 ++-
interface_hip/interface.cpp | 5 ++---
5 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/interface_hip/blas_c_v2.cpp b/interface_hip/blas_c_v2.cpp
index 6147857..a406faf 100644
--- a/interface_hip/blas_c_v2.cpp
+++ b/interface_hip/blas_c_v2.cpp
@@ -1858,7 +1858,8 @@ magma_ctrmm(
hipblas_diag_const( diag ),
int(m), int(n),
(hipblasComplex*)&alpha, (const hipblasComplex*)dA, int(ldda),
- (hipblasComplex*)dB, int(lddb) );
+ (hipblasComplex*)dB, int(lddb),
+ (hipblasComplex*)dB, int(lddb) ); /* C same as B; less efficient */
#else
hipblasCtrmm(
queue->hipblas_handle(),
diff --git a/interface_hip/blas_d_v2.cpp b/interface_hip/blas_d_v2.cpp
index 340f0b2..8c1ecd4 100644
--- a/interface_hip/blas_d_v2.cpp
+++ b/interface_hip/blas_d_v2.cpp
@@ -1858,7 +1858,8 @@ magma_dtrmm(
hipblas_diag_const( diag ),
int(m), int(n),
(double*)&alpha, (const double*)dA, int(ldda),
- (double*)dB, int(lddb) );
+ (double*)dB, int(lddb),
+ (double*)dB, int(lddb) ); /* C same as B; less efficient */
#else
hipblasDtrmm(
queue->hipblas_handle(),
diff --git a/interface_hip/blas_s_v2.cpp b/interface_hip/blas_s_v2.cpp
index 87aeba3..a2cfc02 100644
--- a/interface_hip/blas_s_v2.cpp
+++ b/interface_hip/blas_s_v2.cpp
@@ -1858,7 +1858,8 @@ magma_strmm(
hipblas_diag_const( diag ),
int(m), int(n),
(float*)&alpha, (const float*)dA, int(ldda),
- (float*)dB, int(lddb) );
+ (float*)dB, int(lddb),
+ (float*)dB, int(lddb) ); /* C same as B; less efficient */
#else
hipblasStrmm(
queue->hipblas_handle(),
diff --git a/interface_hip/blas_z_v2.cpp b/interface_hip/blas_z_v2.cpp
index 3c7e87a..eb9e2e6 100644
--- a/interface_hip/blas_z_v2.cpp
+++ b/interface_hip/blas_z_v2.cpp
@@ -1858,7 +1858,8 @@ magma_ztrmm(
hipblas_diag_const( diag ),
int(m), int(n),
(hipblasDoubleComplex*)&alpha, (const hipblasDoubleComplex*)dA, int(ldda),
- (hipblasDoubleComplex*)dB, int(lddb) );
+ (hipblasDoubleComplex*)dB, int(lddb),
+ (hipblasDoubleComplex*)dB, int(lddb) ); /* C same as B; less efficient */
#else
hipblasZtrmm(
queue->hipblas_handle(),
diff --git a/interface_hip/interface.cpp b/interface_hip/interface.cpp
index 2b35b34..7c76426 100644
--- a/interface_hip/interface.cpp
+++ b/interface_hip/interface.cpp
@@ -209,11 +209,10 @@ magma_init()
else {
g_magma_devices[dev].memory = prop.totalGlobalMem;
g_magma_devices[dev].shmem_block = prop.sharedMemPerBlock;
- #ifdef MAGMA_HAVE_CUDA
g_magma_devices[dev].cuda_arch = prop.major*100 + prop.minor*10;
+ #ifdef MAGMA_HAVE_CUDA
g_magma_devices[dev].shmem_multiproc = prop.sharedMemPerMultiprocessor;
#elif defined(MAGMA_HAVE_HIP)
- g_magma_devices[dev].cuda_arch = prop.gcnArch;
g_magma_devices[dev].shmem_multiproc = prop.maxSharedMemoryPerMultiProcessor;
#endif
@@ -464,7 +463,7 @@ magma_print_environment()
prop.name,
prop.clockRate / 1000.,
prop.totalGlobalMem / (1024.*1024.),
- prop.gcnArch );
+ prop.gcnArchName );
#endif
}
--
2.39.3

View File

@@ -78,6 +78,7 @@ class Magma(CMakePackage, CudaPackage, ROCmPackage):
patch("magma-2.5.0.patch", when="@2.5.0")
patch("magma-2.5.0-cmake.patch", when="@2.5.0")
patch("cmake-W.patch", when="@2.5.0:%nvhpc")
patch("0001-fix-magma-build-error-with-rocm-6.0.0.patch", when="@2.7.2 ^hip@6.0.0 + rocm")
@run_before("cmake")
def generate_gpu_config(self):
@@ -146,7 +147,7 @@ def cmake_args(self):
if "+rocm" in spec:
options.append(define("MAGMA_ENABLE_HIP", True))
options.append(define("CMAKE_CXX_COMPILER", spec["hip"].hipcc))
# See https://github.com/ROCmSoftwarePlatform/rocFFT/issues/322
# See https://github.com/ROCm/rocFFT/issues/322
if spec.satisfies("^cmake@3.21.0:3.21.2"):
options.append(define("__skip_rocmclang", True))
else:

View File

@@ -0,0 +1,24 @@
From 93ab69cac72cc2d13cfd4b7efcc235bdbca2b9f5 Mon Sep 17 00:00:00 2001
From: Afzal Patel <afzal.patel@amd.com>
Date: Wed, 17 Jan 2024 11:44:18 -0800
Subject: [PATCH] Add hip library path to ghv flags so libamdhip64 can be found
---
config/makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/config/makefile b/config/makefile
index 627d117..a453865 100644
--- a/config/makefile
+++ b/config/makefile
@@ -38,7 +38,7 @@ all: header config-mk
MPI = $(MFEM_USE_MPI:NO=)
GHV_CXX ?= $(MFEM_CXX)
GHV = get_hypre_version
-GHV_FLAGS = $(subst @MFEM_DIR@,$(if $(MFEM_DIR),$(MFEM_DIR),..),$(HYPRE_OPT))
+GHV_FLAGS = $(subst @MFEM_DIR@,$(if $(MFEM_DIR),$(MFEM_DIR),..),$(HYPRE_OPT)) $(HIP_LIB)
SMX = $(if $(MFEM_USE_PUMI:NO=),MFEM_USE_SIMMETRIX)
SMX_PATH = $(PUMI_DIR)/include/gmi_sim.h
SMX_FILE = $(subst @MFEM_DIR@,$(if $(MFEM_DIR),$(MFEM_DIR),..),$(SMX_PATH))
--
2.25.1

View File

@@ -480,6 +480,7 @@ class Mfem(Package, CudaPackage, ROCmPackage):
when="@4.6.0 +gslib+shared+miniapps",
sha256="2a31682d876626529e2778a216d403648b83b90997873659a505d982d0e65beb",
)
patch("mfem-hip.patch", when="+rocm ^hip@6.0:")
phases = ["configure", "build", "install"]
@@ -954,6 +955,7 @@ def find_optional_library(name, prefix):
options += ["HIP_CXX=%s" % spec["hip"].hipcc, "HIP_ARCH=%s" % amdgpu_target]
hip_headers = HeaderList([])
hip_libs = LibraryList([])
hip_libs += find_libraries("libamdhip64", spec["hip"].prefix.lib)
# To use a C++ compiler that supports -xhip flag one can use
# something like this:
# options += [

View File

@@ -11,9 +11,9 @@
class Migraphx(CMakePackage):
"""AMD's graph optimization engine."""
homepage = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX"
git = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX.git"
url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/AMDMIGraphX"
git = "https://github.com/ROCm/AMDMIGraphX.git"
url = "https://github.com/ROCm/AMDMIGraphX/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -21,6 +21,7 @@ class Migraphx(CMakePackage):
license("MIT")
version("6.0.0", sha256="7bb3f5011da9b1f3b79707b06118c523c1259215f650c2ffa5622a7e1d88868f")
version("5.7.1", sha256="3e58c043a5a7d1357ee05725fd6cd41e190b070f1ba57f61300128429902089c")
version("5.7.0", sha256="14f13554367d2d6490d66f8b5b739203225e7acce25085559e7c4acf29e2a4d5")
version("5.6.1", sha256="b108c33f07572ffd880b20f6de06f1934ab2a1b41ae69095612322ac412fa91c")
@@ -108,7 +109,7 @@ class Migraphx(CMakePackage):
)
def url_for_version(self, version):
url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/"
url = "https://github.com/ROCm/AMDMIGraphX/archive/"
if version <= Version("3.5.0"):
url += "{0}.tar.gz".format(version)
else:
@@ -168,6 +169,7 @@ def url_for_version(self, version):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
depends_on("hip@" + ver, when="@" + ver)
@@ -175,7 +177,7 @@ def url_for_version(self, version):
depends_on("rocblas@" + ver, when="@" + ver)
depends_on("miopen-hip@" + ver, when="@" + ver)
for ver in ["5.7.0", "5.7.1"]:
for ver in ["5.7.0", "5.7.1", "6.0.0"]:
depends_on("composable-kernel@" + ver, when="@" + ver)
@property

View File

@@ -12,9 +12,9 @@
class MiopenHip(CMakePackage):
"""AMD's library for high performance machine learning primitives."""
homepage = "https://github.com/ROCmSoftwarePlatform/MIOpen"
git = "https://github.com/ROCmSoftwarePlatform/MIOpen.git"
url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/MIOpen"
git = "https://github.com/ROCm/MIOpen.git"
url = "https://github.com/ROCm/MIOpen/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -22,6 +22,7 @@ class MiopenHip(CMakePackage):
license("MIT")
version("6.0.0", sha256="a0718a48353be30ff98118ade511f0c1b454e394d8f934aefe7dd6946562b2e9")
version("5.7.1", sha256="912a658fe21ce6f1982b0f2ff251c3f7bb618f2e7e9876d983bcb54e3cd7129e")
version("5.7.0", sha256="5cd0b62254469e1c246d5890d2b78f8aedcf42cf8a327eabc1a391b83bcd14e1")
version("5.6.1", sha256="ff627d68ed9e52433a3c808b5d3ff179a398b77ce81b00cfea7b2c4da5162c6c")
@@ -124,7 +125,7 @@ class MiopenHip(CMakePackage):
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:")
patch(
"https://github.com/ROCmSoftwarePlatform/MIOpen/pull/2276/commits/f60aa1ff89f8fb596b4a6a4c70aa7d557803db87.patch?full_index=1",
"https://github.com/ROCm/MIOpen/pull/2276/commits/f60aa1ff89f8fb596b4a6a4c70aa7d557803db87.patch?full_index=1",
sha256="c777d9f4cd2bbfec632b38620c0f70bb0cce8da1",
when="@5.7:",
)
@@ -159,6 +160,7 @@ class MiopenHip(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
depends_on("hip@" + ver, when="@" + ver)
@@ -168,7 +170,7 @@ class MiopenHip(CMakePackage):
for ver in ["5.1.0", "5.1.3", "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.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("nlohmann-json", type="link")
depends_on("composable-kernel@" + ver, when="@" + ver)
for ver in ["5.4.0", "5.4.3", "5.5.0"]:

View File

@@ -12,9 +12,9 @@
class MiopenOpencl(CMakePackage):
"""AMD's library for high performance machine learning primitives."""
homepage = "https://github.com/ROCmSoftwarePlatform/MIOpen"
git = "https://github.com/ROCmSoftwarePlatform/MIOpen.git"
url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/MIOpen"
git = "https://github.com/ROCm/MIOpen.git"
url = "https://github.com/ROCm/MIOpen/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")

View File

@@ -12,9 +12,9 @@ class MiopenTensile(CMakePackage):
"""MIOpenTensile provides host-callable interfaces to Tensile library.
MIOpenTensile supports one programming model: HIP"""
homepage = "https://github.com/ROCmSoftwarePlatform/MIOpenTensile"
git = "https://github.com/ROCmSoftwarePlatform/MIOpenTensile.git"
url = "https://github.com/ROCmSoftwarePlatform/MIOpentensile/archive/rocm-5.0.0.tar.gz"
homepage = "https://github.com/ROCm/MIOpenTensile"
git = "https://github.com/ROCm/MIOpenTensile.git"
url = "https://github.com/ROCm/MIOpentensile/archive/rocm-5.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam")
@@ -72,7 +72,7 @@ class MiopenTensile(CMakePackage):
resource(
name="Tensile",
git="https://github.com/ROCmSoftwarePlatform/Tensile.git",
git="https://github.com/ROCm/Tensile.git",
commit="9cbabb07f81e932b9c98bf5ae48fbd7fcef615cf",
when="@4.5.0:",
)

View File

@@ -12,9 +12,9 @@ class Miopengemm(CMakePackage):
"""An OpenCL general matrix multiplication (GEMM) API
and kernel generator"""
homepage = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM"
git = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM.git"
url = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/MIOpenGEMM"
git = "https://github.com/ROCm/MIOpenGEMM.git"
url = "https://github.com/ROCm/MIOpenGEMM/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -22,8 +22,8 @@ class Miopengemm(CMakePackage):
def url_for_version(self, version):
if version == Version("1.1.6"):
return "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/archive/1.1.6.tar.gz"
url = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/archive/rocm-{0}.tar.gz"
return "https://github.com/ROCm/MIOpenGEMM/archive/1.1.6.tar.gz"
url = "https://github.com/ROCm/MIOpenGEMM/archive/rocm-{0}.tar.gz"
return url.format(version)
license("MIT")

View File

@@ -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.5.0.tar.gz"
url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/archive/rocm-6.0.0.tar.gz"
maintainers("srekolam", "renjithravindrankannath")
tags = ["rocm"]
@@ -27,6 +27,7 @@ def url_for_version(self, version):
license("MIT")
version("6.0.0", sha256="01324a12f21ea0e29a4d7d7c60498ba9231723569fedcdd90f28ddffb5e0570e")
version("5.7.1", sha256="bfc074bc32ebe84c72149ee6abb30b5b6499023d5b98269232de82e35d0505a8")
version("5.7.0", sha256="07e4ec8a8c06a9a8bb6394a043c9c3e7176acd3b462a16de91ef9518a64df9ba")
version("5.6.1", sha256="b2ff95c1488e244f379482631dae4f9ab92d94a513d180e03607aa1e184b5b0a")
@@ -369,6 +370,7 @@ def patch(self):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("miopen-hip@" + ver, when="@" + ver)
for ver in [
@@ -381,11 +383,12 @@ def patch(self):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("migraphx@" + ver, when="@" + ver)
depends_on("hip@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
depends_on("python@3.5:", type="build")

View File

@@ -10,9 +10,9 @@
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.4.0.tar.gz"
git = "https://github.com/ROCmSoftwarePlatform/llvm-project-mlir.git"
homepage = "https://github.com/ROCm/llvm-project-mlir"
url = "https://github.com/ROCm/llvm-project-mlir/archive/refs/tags/rocm-5.4.0.tar.gz"
git = "https://github.com/ROCm/llvm-project-mlir.git"
tags = ["rocm"]
maintainers("srekolam")

View File

@@ -0,0 +1,70 @@
From 3c9aaca12a1ae6000ff3cfd0564f7b2ab45396d2 Mon Sep 17 00:00:00 2001
From: Renjith Ravindran <Renjith.RavindranKannath@amd.com>
Date: Thu, 18 Jan 2024 07:38:25 +0000
Subject: [PATCH] Handle the hipsparse api changes for rocm 6.0
---
.../impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp b/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp
index e6f878f..4bf52cd 100644
--- a/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp
+++ b/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp
@@ -1258,7 +1258,7 @@ static PetscErrorCode MatSolve_SeqAIJHIPSPARSE_ILU0(Mat fact, Vec b, Vec x)
/* Solve L*y = b */
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, (void *)barray));
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_Y, fs->Y));
- #if PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061) // i.e., 5.6.0
+ #if (PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061)||PETSC_PKG_HIP_VERSION_EQ(6, 0, 32830)) // i.e., 5.6.0
PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, /* L Y = X */
fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDescr_L)); // hipsparseSpSV_solve() secretely uses the external buffer used in hipsparseSpSV_analysis()!
#else
@@ -1267,7 +1267,7 @@ static PetscErrorCode MatSolve_SeqAIJHIPSPARSE_ILU0(Mat fact, Vec b, Vec x)
#endif
/* Solve U*x = y */
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, xarray));
- #if PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061) // i.e., 5.6.0
+ #if (PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061)||PETSC_PKG_HIP_VERSION_EQ(6, 0, 32830)) // i.e., 5.6.0
PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_U, /* U X = Y */
fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDescr_U));
#else
@@ -1316,7 +1316,7 @@ static PetscErrorCode MatSolveTranspose_SeqAIJHIPSPARSE_ILU0(Mat fact, Vec b, Ve
/* Solve Ut*y = b */
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, (void *)barray));
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_Y, fs->Y));
- #if PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061) // i.e., 5.6.0
+ #if (PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061)||PETSC_PKG_HIP_VERSION_EQ(6, 0, 32830)) // i.e., 5.6.0
PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_U, /* Ut Y = X */
fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDescr_Ut));
#else
@@ -1325,7 +1325,7 @@ static PetscErrorCode MatSolveTranspose_SeqAIJHIPSPARSE_ILU0(Mat fact, Vec b, Ve
#endif
/* Solve Lt*x = y */
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, xarray));
- #if PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061) // i.e., 5.6.0
+ #if (PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061)||PETSC_PKG_HIP_VERSION_EQ(6, 0, 32830)) // i.e., 5.6.0
PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, /* Lt X = Y */
fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDescr_Lt));
#else
@@ -1559,7 +1559,7 @@ static PetscErrorCode MatSolve_SeqAIJHIPSPARSE_ICC0(Mat fact, Vec b, Vec x)
/* Solve L*y = b */
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, (void *)barray));
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_Y, fs->Y));
- #if PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061) // i.e., 5.6.0
+ #if (PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061)||PETSC_PKG_HIP_VERSION_EQ(6, 0, 32830)) // i.e., 5.6.0
PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, /* L Y = X */
fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDescr_L));
#else
@@ -1568,7 +1568,7 @@ static PetscErrorCode MatSolve_SeqAIJHIPSPARSE_ICC0(Mat fact, Vec b, Vec x)
#endif
/* Solve Lt*x = y */
PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, xarray));
- #if PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061) // i.e., 5.6.0
+ #if (PETSC_PKG_HIP_VERSION_EQ(5, 6, 31061)||PETSC_PKG_HIP_VERSION_EQ(6, 0, 32830)) // i.e., 5.6.0
PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, /* Lt X = Y */
fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDescr_Lt));
#else
--
2.39.3

View File

@@ -21,7 +21,7 @@ class Petsc(Package, CudaPackage, ROCmPackage):
tags = ["e4s"]
version("main", branch="main")
version("3.20.3", sha256="75a94fb44df0512f51ad093fa784e56b61f51b7ead5956fbe49185c203f8c245")
version("3.20.2", sha256="2a2d08b5f0e3d0198dae2c42ce1fd036f25c153ef2bb4a2d320ca141ac7cd30b")
version("3.20.1", sha256="3d54f13000c9c8ceb13ca4f24f93d838319019d29e6de5244551a3ec22704f32")
version("3.20.0", sha256="c152ccb12cb2353369d27a65470d4044a0c67e0b69814368249976f5bb232bd4")
@@ -172,6 +172,9 @@ class Petsc(Package, CudaPackage, ROCmPackage):
)
patch("hip-5.6.0-for-3.18.diff", when="@3.18:3.19 ^hipsparse@5.6.0")
patch("hip-5.7-plus-for-3.18.diff", when="@3.18:3.19 ^hipsparse@5.7:")
patch(
"Handle-hipsparse-api-changes-for-rocm-6.0.patch", when="@3.20.2:3.20.3 ^hipsparse@6.0"
)
# 3.8.0 has a build issue with MKL - so list this conflict explicitly
conflicts("^intel-mkl", when="@3.8.0")

View File

@@ -114,6 +114,14 @@ class Raja(CachedCMakePackage, CudaPackage, ROCmPackage):
when="@:0.13.0 ^blt@0.4:",
)
# Backward compatibility is stopped from ROCm 6.0
# Future relase will have the change from PR https://github.com/LLNL/RAJA/pull/1568
patch(
"https://github.com/LLNL/RAJA/commit/406eb8dee05a41eb32c421c375688a4863b60642.patch?full_index=1",
sha256="d9ce5ef038555cbccb330a9016b7be77e56ae0660583cba955dab9d0297a4b07",
when="^hip@6.0.0",
)
variant("openmp", default=True, description="Build OpenMP backend")
variant("shared", default=True, description="Build Shared Libs")
variant("plugins", default=False, description="Enable runtime plugins")

View File

@@ -10,9 +10,9 @@ class RcclTests(MakefilePackage):
"""These tests check both the performance and the correctness of RCCL
operations. They can be compiled against RCCL."""
homepage = "https://github.com/ROCmSoftwarePlatform/rccl-tests"
git = "https://github.com/ROCmSoftwarePlatform/rccl-tests.git"
url = "https://github.com/ROCmSoftwarePlatform/rccl-tests.git"
homepage = "https://github.com/ROCm/rccl-tests"
git = "https://github.com/ROCm/rccl-tests.git"
url = "https://github.com/ROCm/rccl-tests.git"
tags = ["rocm"]
maintainers("bvanessen")

View File

@@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5384287..ea6fd4b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -121,7 +121,7 @@ message(STATUS "hipcc version: ${hipcc_version_string}")
## Check for ROCm version
execute_process(
- COMMAND bash "-c" "cat ${ROCM_PATH}/.info/version"
+ COMMAND bash "-c" "cat $ENV{ROCMCORE_PATH}/.info/version"
OUTPUT_VARIABLE rocm_version_string
)
string(REGEX MATCH "([0-9]+)\\.([0-9]+)\\.([0-9]+)" rocm_version_matches ${rocm_version_string})

View File

@@ -14,13 +14,14 @@ class Rccl(CMakePackage):
implementing all-reduce, all-gather, reduce, broadcast,
and reduce-scatter."""
homepage = "https://github.com/ROCmSoftwarePlatform/rccl"
git = "https://github.com/ROCmSoftwarePlatform/rccl.git"
url = "https://github.com/ROCmSoftwarePlatform/rccl/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rccl"
git = "https://github.com/ROCm/rccl.git"
url = "https://github.com/ROCm/rccl/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
libraries = ["librccl"]
version("6.0.0", sha256="0496d5a5f2e48c92cd390ab318df31a53cf7ec590988c2574c9f3d99c38b0fa7")
version("5.7.1", sha256="fb4c1f0084196d1226ce8a726d0f012d3890b54508a06ca87bbda619be8b90b1")
version("5.7.0", sha256="4c2825a3e4323ef3c2f8855ef445c1a81cf1992fb37e3e8a07a50db354aa3954")
version("5.6.1", sha256="27ec6b86a1a329684d808f728c1fce134517ac8e6e7047689f95dbf8386c077e")
@@ -119,6 +120,7 @@ class Rccl(CMakePackage):
patch("0001-Fix-numactl-path-issue.patch", when="@3.7.0:4.3.2")
patch("0002-Fix-numactl-rocm-smi-path-issue.patch", when="@4.5.0:5.2.1")
patch("0003-Fix-numactl-rocm-smi-path-issue.patch", when="@5.2.3:5.6")
patch("0004-Set-rocm-core-path-for-version-file.patch", when="@6.0:")
depends_on("cmake@3.5:", type="build")
for ver in [
@@ -151,6 +153,7 @@ class Rccl(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
depends_on("hip@" + ver, when="@" + ver)
@@ -186,6 +189,7 @@ class Rccl(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("numactl@2:", when="@" + ver)
for ver in [
@@ -208,12 +212,14 @@ class Rccl(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-smi-lib@" + ver, when="@" + ver)
depends_on("chrpath", when="@5.3.0:")
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
depends_on("googletest@1.11.0:", when="@5.3:")
@classmethod
@@ -229,6 +235,7 @@ def determine_version(cls, lib):
def setup_build_environment(self, env):
env.set("CXX", self.spec["hip"].hipcc)
env.set("ROCMCORE_PATH", self.spec["rocm-core"].prefix)
def cmake_args(self):
args = []

View File

@@ -12,8 +12,8 @@
class Rdc(CMakePackage):
"""ROCm Data Center Tool"""
homepage = "https://github.com/RadeonOpenCompute/rdc"
url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rdc"
url = "https://github.com/ROCm/rdc/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -21,13 +21,14 @@ class Rdc(CMakePackage):
def url_for_version(self, version):
if version == Version("3.9.0"):
return "https://github.com/RadeonOpenCompute/rdc/archive/rdc_so_ver-0.3.tar.gz"
return "https://github.com/ROCm/rdc/archive/rdc_so_ver-0.3.tar.gz"
url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-{0}.tar.gz"
url = "https://github.com/ROCm/rdc/archive/rocm-{0}.tar.gz"
return url.format(version)
license("MIT")
version("6.0.0", sha256="5e3847a919d5f7efe99d8d76c96e78401659eccd1fb234b1b8cb4304096d6e89")
version("5.7.1", sha256="5251eb3085f2019246b332e9552dfae1572cf64ddf58306b81cbe7108019ffee")
version("5.7.0", sha256="924e94f14f6390d7a6ff7863fb4e2085c1ff5f9c12b8bd46471eb31f001c4f14")
version("5.6.1", sha256="9e9f57cebbc5ae386a405957ed2c17344cdb42db5e1a71285f2c9bc09eea6519")
@@ -140,6 +141,7 @@ def url_for_version(self, version):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-smi-lib@" + ver, type=("build", "link"), when="@" + ver)
@@ -161,10 +163,11 @@ def url_for_version(self, version):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
def patch(self):

View File

@@ -17,9 +17,9 @@ class Rocalution(CMakePackage):
generic and flexible design that allows seamless integration with
other scientific software packages."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocALUTION"
git = "https://github.com/ROCmSoftwarePlatform/rocALUTION.git"
url = "https://github.com/ROCmSoftwarePlatform/rocALUTION/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocALUTION"
git = "https://github.com/ROCm/rocALUTION.git"
url = "https://github.com/ROCm/rocALUTION/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath")
@@ -27,6 +27,7 @@ class Rocalution(CMakePackage):
license("MIT")
version("6.0.0", sha256="cabf37691b8db00c82bda49c7dcfaefd9b9067b7d097afa43b7a5f86c45bff99")
version("5.7.1", sha256="b95afa1285759843c5fea1ad6e1c1edf283922e0d448db03a3e1f42b6942bc24")
version("5.7.0", sha256="48232a0d1250debce89e39a233bd0b5d52324a2454c078b99c9d44965cbbc0e9")
version("5.6.1", sha256="7197b3617a0c91e90adaa32003c04d247a5f585d216e77493d20984ba215addb")
@@ -165,6 +166,7 @@ class Rocalution(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("rocprim@" + ver, when="@" + ver)

View File

@@ -11,9 +11,9 @@
class Rocblas(CMakePackage):
"""Radeon Open Compute BLAS library"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocBLAS/"
git = "https://github.com/ROCmSoftwarePlatform/rocBLAS.git"
url = "https://github.com/ROCmSoftwarePlatform/rocBLAS/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocBLAS/"
git = "https://github.com/ROCm/rocBLAS.git"
url = "https://github.com/ROCm/rocBLAS/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie")
@@ -23,6 +23,7 @@ class Rocblas(CMakePackage):
version("develop", branch="develop")
version("master", branch="master")
version("6.0.0", sha256="befa4a75f1de0ea37f2358d4c2de5406d7bce671ca9936e2294b64d3b3bafb60")
version("5.7.1", sha256="2984a5ed0ea5a05d40996ee3fddecb24399cbe8ea3e4921fc254e54d8f52fe4f")
version("5.7.0", sha256="024edd98de9687ee5394badc4dd4c543eef4eb3f71c96ff64100705d851e1744")
version("5.6.1", sha256="73896ebd445162a69af97f9fd462684609b4e0cf617eab450cd4558b4a23941e")
@@ -131,8 +132,8 @@ class Rocblas(CMakePackage):
conflicts("amdgpu_target=gfx1012", when="@:4.2.1")
conflicts("amdgpu_target=gfx1030", when="@:4.2.1")
# https://reviews.llvm.org/D124866
# https://github.com/ROCm-Developer-Tools/HIP/issues/2678
# https://github.com/ROCm-Developer-Tools/hipamd/blob/rocm-5.2.x/include/hip/amd_detail/host_defines.h#L50
# https://github.com/ROCm/HIP/issues/2678
# https://github.com/ROCm/hipamd/blob/rocm-5.2.x/include/hip/amd_detail/host_defines.h#L50
conflicts("%gcc@12", when="@5.2")
depends_on("cmake@3.16.8:", type="build", when="@4.2.0:")
@@ -182,6 +183,7 @@ class Rocblas(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("llvm-amdgpu@" + ver, type="build", when="@" + ver)
@@ -232,10 +234,11 @@ class Rocblas(CMakePackage):
("@5.6.1", "7d0a9d040c3bbae893df7ecef6a19d9cd1c304aa"),
("@5.7.0", "97e0cfc2c8cb87a1e38901d99c39090dc4181652"),
("@5.7.1", "97e0cfc2c8cb87a1e38901d99c39090dc4181652"),
("@6.0.0", "17df881bde80fc20f997dfb290f4bb4b0e05a7e9"),
]:
resource(
name="Tensile",
git="https://github.com/ROCmSoftwarePlatform/Tensile.git",
git="https://github.com/ROCm/Tensile.git",
commit=t_commit,
when="{} +tensile".format(t_version),
)
@@ -243,12 +246,12 @@ class Rocblas(CMakePackage):
for ver in ["master", "develop"]:
resource(
name="Tensile",
git="https://github.com/ROCmSoftwarePlatform/Tensile.git",
git="https://github.com/ROCm/Tensile.git",
branch=ver,
when="@{} +tensile".format(ver),
)
# Status: https://github.com/ROCmSoftwarePlatform/Tensile/commit/a488f7dadba34f84b9658ba92ce9ec5a0615a087
# Status: https://github.com/ROCm/Tensile/commit/a488f7dadba34f84b9658ba92ce9ec5a0615a087
# Not yet landed in 3.7.0, nor 3.8.0.
patch("0001-Fix-compilation-error-with-StringRef-to-basic-string.patch", when="@:3.8")
patch("0002-Fix-rocblas-clients-blas.patch", when="@4.2.0:4.3.1")
@@ -256,7 +259,7 @@ class Rocblas(CMakePackage):
# Finding Python package and set command python as python3
patch("0004-Find-python.patch", when="@5.2.0:5.4")
patch("0006-Guard-use-of-OpenMP-to-make-it-optional-5.4.patch", when="@5.4")
patch("0007-add-rocm-openmp-extras-include-dir.patch", when="@5.6:")
patch("0007-add-rocm-openmp-extras-include-dir.patch", when="@5.6:5.7")
def setup_build_environment(self, env):
env.set("CXX", self.spec["hip"].hipcc)
@@ -309,14 +312,14 @@ def cmake_args(self):
# Restrict the number of jobs Tensile can spawn.
# If we don't specify otherwise, Tensile creates a job per available core,
# and that consumes a lot of system memory.
# https://github.com/ROCmSoftwarePlatform/Tensile/blob/93e10678a0ced7843d9332b80bc17ebf9a166e8e/Tensile/Parallel.py#L38
# https://github.com/ROCm/Tensile/blob/93e10678a0ced7843d9332b80bc17ebf9a166e8e/Tensile/Parallel.py#L38
args.append(self.define("Tensile_CPU_THREADS", min(16, make_jobs)))
# See https://github.com/ROCmSoftwarePlatform/rocBLAS/commit/c1895ba4bb3f4f5947f3818ebd155cf71a27b634
# See https://github.com/ROCm/rocBLAS/commit/c1895ba4bb3f4f5947f3818ebd155cf71a27b634
if "auto" not in self.spec.variants["amdgpu_target"]:
args.append(self.define_from_variant(arch_define_name, "amdgpu_target"))
# See https://github.com/ROCmSoftwarePlatform/rocBLAS/issues/1196
# See https://github.com/ROCm/rocBLAS/issues/1196
if self.spec.satisfies("^cmake@3.21.0:3.21.2"):
args.append(self.define("__skip_rocmclang", "ON"))

View File

@@ -11,16 +11,16 @@
class Rocfft(CMakePackage):
"""Radeon Open Compute FFT library"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocFFT/"
git = "https://github.com/ROCmSoftwarePlatform/rocFFT.git"
url = "https://github.com/ROCmSoftwarePlatform/rocfft/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocFFT/"
git = "https://github.com/ROCm/rocFFT.git"
url = "https://github.com/ROCm/rocfft/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie")
libraries = ["librocfft"]
license("MIT")
version("6.0.0", sha256="fb8ba56572702e77e4383d922cd1fee4ad3fa5f63a5ebdb3d9c354439a446992")
version("5.7.1", sha256="202f11f60dc8738e29bbd1b397d419e032794f8bffb7f48f2b31f09cc5f08bc2")
version("5.7.0", sha256="3c4a1537a6ec76dc9b622644fe3890647306bf9f28f61c5d2028259c31bb964f")
version("5.6.1", sha256="a65861e453587c3e6393da75b0b1976508c61f968aecda77fbec920fea48489e")
@@ -167,6 +167,7 @@ def check(self):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
@@ -178,6 +179,14 @@ def check(self):
# Patch to add install prefix header location for sqlite for 5.4
patch("0004-fix-missing-sqlite-include-paths.patch", when="@5.4.0:5.5")
# Set LD_LIBRARY_PATH for executing the binaries from build directoryfix missing type
# https://github.com/ROCm/rocFFT/pull/449)
patch(
"https://github.com/ROCm/rocFFT/commit/0ec78f1daac2d7fa1415f4deff0d129252c1c9de.patch?full_index=1",
sha256="bac7873185ac60f2aaa50e278f0b8d52b4d79d586bf7f52db1da33559569ba54",
when="@6.0.0",
)
def setup_build_environment(self, env):
env.set("CXX", self.spec["hip"].hipcc)
@@ -214,7 +223,7 @@ def cmake_args(self):
self.define_from_variant("AMDGPU_TARGETS_SRAM_ECC", "amdgpu_target_sram_ecc")
)
# See https://github.com/ROCmSoftwarePlatform/rocFFT/issues/322
# See https://github.com/ROCm/rocFFT/issues/322
if self.spec.satisfies("^cmake@3.21.0:3.21.2"):
args.append(self.define("__skip_rocmclang", "ON"))

View File

@@ -10,14 +10,15 @@
class RocmBandwidthTest(CMakePackage):
"""Test to measure PciE bandwidth on ROCm platforms"""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocm_bandwidth_test"
git = "https://github.com/ROCm/rocm_bandwidth_test.git"
url = "https://github.com/ROCm/rocm_bandwidth_test/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
version("master", branch="master")
version("6.0.0", sha256="9023401bd6a896059545b8e6263c6730afd89d7d45c0f5866261c300415532a6")
version("5.7.1", sha256="7426ef1e317b8293e4d6389673cfa8c63efb3f7d061e2f50a6f0b1b706e2a2a7")
version("5.7.0", sha256="fa95c28488ab4bb6d920b9f3c316554ca340f44c87ec2efb4cf8fa488e63ddd9")
version("5.6.1", sha256="849af715d08dfd89e7aa5e4453b624151db1cafaa567ab5fa36a77948b90bf0d")
@@ -136,12 +137,13 @@ class RocmBandwidthTest(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
depends_on("hsakmt-roct@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
build_targets = ["package"]

View File

@@ -9,15 +9,16 @@
class RocmClangOcl(CMakePackage):
"""OpenCL compilation with clang compiler"""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/clang-ocl"
git = "https://github.com/ROCm/clang-ocl.git"
url = "https://github.com/ROCm/clang-ocl/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")
maintainers("srekolam", "renjithravindrankannath")
version("master", branch="master")
version("6.0.0", sha256="74b5a64c32f3c57e7e4de638fffabbf448ecdb3dd8e65678b7ba0633352b4ca3")
version("5.7.1", sha256="32e4430d009cbbf5404ca9cbbb549b36897fa1826bc2285372e293cfe7531bf8")
version("5.7.0", sha256="c9ca80bfee674e740039256a846107373f1cf6554dc28398599976d8646a0392")
version("5.6.1", sha256="c41deb1b564d939fc897b2bbdb13570b2234fa4c052a39783f5ad2dd1052f901")
@@ -136,6 +137,7 @@ class RocmClangOcl(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
@@ -145,7 +147,7 @@ class RocmClangOcl(CMakePackage):
depends_on(
"rocm-device-libs@" + ver, when="@{0} ^llvm-amdgpu ~rocm-device-libs".format(ver)
)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
test_src_dir = "test"

View File

@@ -11,9 +11,9 @@ class RocmCmake(CMakePackage):
"""rocm-cmake provides CMake modules for common build tasks
in the ROCm software stack"""
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.6.0.tar.gz"
homepage = "https://github.com/ROCm/rocm-cmake"
git = "https://github.com/ROCm/rocm-cmake.git"
url = "https://github.com/ROCm/rocm-cmake/archive/rocm-5.6.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -21,6 +21,7 @@ class RocmCmake(CMakePackage):
license("MIT")
version("master", branch="master")
version("6.0.0", sha256="82bd97ba23d1883ef38bb667e92f7367fedc50d6c11c82f54cced4ab04b0412d")
version("5.7.1", sha256="4a4c6aa09576ccb834f869bdcb49e98cc0f0bac3678b802358065d1179a9d6f1")
version("5.7.0", sha256="93b98144201a1143eeca32744a9927d063f4685189f132ba52a6f3bba158a86b")
version("5.6.1", sha256="98bf5fe2e6e12f55d122807d0060f1bb19c80d63d2c2f6fee579c40bfd244fa6")
@@ -110,7 +111,7 @@ class RocmCmake(CMakePackage):
depends_on("cmake@3:", type="build")
depends_on("cmake@3.6:", type="build", when="@4.1.0:")
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
test_src_dir = "test"

View File

@@ -12,8 +12,8 @@ class RocmCore(CMakePackage):
It also provides the Lmod modules files for the ROCm release.
getROCmVersion function provides the ROCm version."""
homepage = "https://github.com/RadeonOpenCompute/rocm-core"
url = "https://github.com/RadeonOpenCompute/rocm-core/archive/refs/tags/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocm-core"
url = "https://github.com/ROCm/rocm-core/archive/refs/tags/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -21,6 +21,7 @@ class RocmCore(CMakePackage):
license("MIT")
version("6.0.0", sha256="d950ee4b63336f34579b6e1dda2d05966b7afa9c84bcdc13874991d1147dc788")
version("5.7.1", sha256="fc4915019ddfd126e8ef6a15006bce3aa7bd5fd11dc8eb04ce2ee6bdf9c6ae7f")
version("5.7.0", sha256="722689bfec46c35f5428a41c5aacfc31efec2294fc3b0112861c562f8a71ac93")
version("5.6.1", sha256="eeef75e16e05380ccbc8df17a02dc141a66dddaadb444a97f7278f78067c498c")

View File

@@ -14,9 +14,9 @@ class RocmDbgapi(CMakePackage):
control of the execution and inspection of execution state of
AMD's commercially available GPU architectures."""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/ROCdbgapi"
git = "https://github.com/ROCm/ROCdbgapi.git"
url = "https://github.com/ROCm/ROCdbgapi/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -25,6 +25,7 @@ class RocmDbgapi(CMakePackage):
license("MIT")
version("master", branch="amd-master")
version("6.0.0", sha256="4e823eba255e46b93aff05fd5938ef2a51693ffd74debebffc1aabfce613805c")
version("5.7.1", sha256="0ee9c2f083868849f2ea0cec7010e0270c27e7679ccbbadd12072cc0ef6c8a6f")
version("5.7.0", sha256="285ddded8e7f1981d8861ffc1cd7770b78129e4955da08ad55a4779945699716")
version("5.6.1", sha256="c7241bf94bdb97a4cf1befbf25b8c35720797710da6f6b5b9d6a4094c1bc9c8b")
@@ -144,12 +145,13 @@ class RocmDbgapi(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
depends_on("hsa-rocr-dev@" + ver, type="build", when="@" + ver)
depends_on("comgr@" + ver, type=("build", "link"), when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
@classmethod

View File

@@ -11,13 +11,14 @@
class RocmDebugAgent(CMakePackage):
"""Radeon Open Compute (ROCm) debug agent"""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocr_debug_agent"
git = "https://github.com/ROCm/rocr_debug_agent.git"
url = "https://github.com/ROCm/rocr_debug_agent/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
libraries = ["librocm-debug-agent"]
version("6.0.0", sha256="705be2c2bd0f5c7d1e286eb9b94045b2bd017ff323f07bca9aa7c81f2d168524")
version("5.7.1", sha256="3b8d2835935da98f41e7cfc5b808c596ac06dd705b9a07bb70283e002f8dea6a")
version("5.7.0", sha256="d9344ed02e82a01140f2162e901e6a519e5fee6b498e2f49417730ee2660c5c1")
version("5.6.1", sha256="d3b1d5d757489ed3cc66d351cec56b7b850aaa7ecf6a55b0350b89c3dee3153a")
@@ -105,7 +106,7 @@ class RocmDebugAgent(CMakePackage):
)
def url_for_version(self, version):
url = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent/archive/"
url = "https://github.com/ROCm/rocr_debug_agent/archive/"
if version <= Version("3.7.0"):
url += "roc-{0}.tar.gz".format(version)
else:
@@ -146,6 +147,7 @@ def url_for_version(self, version):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
depends_on("hsakmt-roct@" + ver, when="@" + ver)
@@ -179,14 +181,15 @@ def url_for_version(self, version):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-dbgapi@" + ver, when="@" + ver)
depends_on("hip@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
# https://github.com/ROCm-Developer-Tools/rocr_debug_agent/pull/4
# https://github.com/ROCm/rocr_debug_agent/pull/4
patch("0001-Drop-overly-strict-Werror-flag.patch", when="@3.7.0:")
patch("0002-add-hip-architecture.patch", when="@3.9.0:")

View File

@@ -10,14 +10,15 @@
class RocmDeviceLibs(CMakePackage):
"""set of AMD specific device-side language runtime libraries"""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/ROCm-Device-Libs"
git = "https://github.com/ROCm/ROCm-Device-Libs.git"
url = "https://github.com/ROCm/ROCm-Device-Libs/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath", "haampie")
version("master", branch="amd-stg-open")
version("6.0.0", sha256="198df4550d4560537ba60ac7af9bde31d59779c8ec5d6309627f77a43ab6ef6f")
version("5.7.1", sha256="703de8403c0bd0d80f37c970a698f10f148daf144d34f982e4484d04f7c7bbef")
version("5.7.0", sha256="0f8780b9098573f1c456bdc84358de924dcf00604330770a383983e1775bf61e")
version("5.6.1", sha256="f0dfab272ff936225bfa1e9dabeb3c5d12ce08b812bf53ffbddd2ddfac49761c")
@@ -146,11 +147,12 @@ class RocmDeviceLibs(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
depends_on("llvm-amdgpu@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
def cmake_args(self):

View File

@@ -11,13 +11,14 @@ class RocmGdb(AutotoolsPackage):
"""This is ROCmgdb, the ROCm source-level debugger for Linux,
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/ROCgdb"
url = "https://github.com/ROCm/ROCgdb/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("LGPL-2.0-or-later")
maintainers("srekolam", "renjithravindrankannath")
version("6.0.0", sha256="0db4ab32ca729e69688cdb238df274ce5cf58b5cb2538584662cca4358708c2b")
version("5.7.1", sha256="5cd150b5796aea9d77efd43b89d30a34fa4125338179eb87c6053abcac9f3c62")
version("5.7.0", sha256="94fba57b2f17b593de61f7593b404fabc00b054d38567be57d12cf7654b7969a")
version("5.6.1", sha256="d2b40d4c5aa41a6ce2a84307627b30d16a458672e03e13f9d27c12f2dc3f21d6")
@@ -145,11 +146,12 @@ class RocmGdb(AutotoolsPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-dbgapi@" + ver, type="link", when="@" + ver)
depends_on("comgr@" + ver, type="link", when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
build_directory = "spack-build"
@@ -160,7 +162,7 @@ def configure_args(self):
# Distributor options
"--program-prefix=roc",
"--enable-64-bit-bfd",
"--with-bugurl=https://github.com/ROCm-Developer-Tools/ROCgdb/issues",
"--with-bugurl=https://github.com/ROCm/ROCgdb/issues",
"--with-pkgversion=-ROCm",
"--enable-targets=x86_64-linux-gnu,amdgcn-amd-amdhsa",
"--disable-ld",

View File

@@ -12,8 +12,8 @@
class RocmOpencl(CMakePackage):
"""OpenCL: Open Computing Language on ROCclr"""
homepage = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime"
git = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime.git"
homepage = "https://github.com/ROCm/ROCm-OpenCL-Runtime"
git = "https://github.com/ROCm/ROCm-OpenCL-Runtime.git"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -146,9 +146,7 @@ def url_for_version(self, version):
]:
resource(
name="rocclr",
url="https://github.com/ROCm-Developer-Tools/ROCclr/archive/rocm-{0}.tar.gz".format(
d_version
),
url="https://github.com/ROCm/ROCclr/archive/rocm-{0}.tar.gz".format(d_version),
sha256=d_shasum,
expand=True,
destination="",

View File

@@ -8,8 +8,8 @@
from spack.package import *
tools_url = "https://github.com/ROCm-Developer-Tools"
compute_url = "https://github.com/RadeonOpenCompute"
tools_url = "https://github.com/ROCm"
compute_url = "https://github.com/ROCm"
# Arrays of hashes are in order of the versions array below
# For example array[0] = 3.9.0, array[1] = 3.10.0, etc.
@@ -41,6 +41,7 @@
"6c051bf7625f682ba3d2ea80b46a38ca2cbcd20f5d89ae3433602d3e7ef0403a",
"4f34fa02db410808c5e629f30f8804210b42c4ff7d31aa80606deaed43054c3c",
"ed7bbf92230b6535a353ed032a39a9f16e9987397798100392fc25e40c8a1a4e",
"1b2c0934ef16e17b2377944fae8c9b3db6dc64b7e43932ddfe2eeefdf6821410",
]
devlib = [
@@ -70,6 +71,7 @@
"f0dfab272ff936225bfa1e9dabeb3c5d12ce08b812bf53ffbddd2ddfac49761c",
"0f8780b9098573f1c456bdc84358de924dcf00604330770a383983e1775bf61e",
"703de8403c0bd0d80f37c970a698f10f148daf144d34f982e4484d04f7c7bbef",
"198df4550d4560537ba60ac7af9bde31d59779c8ec5d6309627f77a43ab6ef6f",
]
llvm = [
@@ -99,6 +101,7 @@
"045e43c0c4a3f4f2f1db9fb603a4f1ea3d56e128147e19ba17909eb57d7f08e5",
"4abdf00b297a77c5886cedb37e63acda2ba11cb9f4c0a64e133b05800aadfcf0",
"6b54c422e45ad19c9bf5ab090ec21753e7f7d854ca78132c30eb146657b168eb",
"c673708d413d60ca8606ee75c77e9871b6953c59029c987b92f2f6e85f683626",
]
flang = [
@@ -128,6 +131,7 @@
"5ebcbca2e03bd0686e677f44ea551e97bd9395c6b119f832fa784818733aa652",
"cc4f1973b1b8e7bcc4f09e3381bae4e1a2e51ea4e2598fc1b520ccb8bf24d28c",
"8fd618d81af092416b267c4d00c801731f7a00c0f8d4aedb795e52a4ec1bf183",
"fcb319ddb2aa3004a6ae60370ab4425f529336b1cee50f29200e697e61b53586",
]
extras = [
@@ -157,6 +161,7 @@
"437e2017cfe2ab73b15ada0fc1ea88f794f0b108cc5410f457268ae7e4e8985a",
"be59433dd85d4b8f0eaff87e0cc424a814152c67f3a682d1343c4bd61dd49a0f",
"8060c6879708faf5f7d417b19a479dec9b7b9583a1b885f12d247faf831f7f0b",
"f37e1107e4da5b083e794244f3d0c9fd073ccb6fd6015e635349d8f0d679c4b8",
]
versions = [
@@ -186,6 +191,7 @@
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]
versions_dict = dict() # type: Dict[str,Dict[str,str]]
components = ["aomp", "devlib", "llvm", "flang", "extras"]
@@ -203,12 +209,13 @@ class RocmOpenmpExtras(Package):
"""OpenMP support for ROCm LLVM."""
homepage = tools_url + "/aomp"
url = tools_url + "/aomp/archive/rocm-5.5.0.tar.gz"
url = tools_url + "/aomp/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("Apache-2.0")
maintainers("srekolam", "renjithravindrankannath", "estewart08")
version("6.0.0", sha256=versions_dict["6.0.0"]["aomp"])
version("5.7.1", sha256=versions_dict["5.7.1"]["aomp"])
version("5.7.0", sha256=versions_dict["5.7.0"]["aomp"])
version("5.6.1", sha256=versions_dict["5.6.1"]["aomp"])
@@ -243,8 +250,8 @@ class RocmOpenmpExtras(Package):
depends_on("awk", type="build")
depends_on("elfutils", type=("build", "link"))
depends_on("libffi", type=("build", "link"))
depends_on("libdrm", when="@5.7")
depends_on("numactl", when="@5.7")
depends_on("libdrm", when="@5.7:6.0")
depends_on("numactl", when="@5.7:6.0")
for ver in [
"3.9.0",
@@ -273,13 +280,14 @@ class RocmOpenmpExtras(Package):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hsakmt-roct@" + ver, when="@" + ver)
depends_on("comgr@" + ver, when="@" + ver)
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
depends_on("llvm-amdgpu@{0} ~openmp".format(ver), when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
# tag changed to 'rocm-' in 4.0.0
@@ -327,7 +335,7 @@ class RocmOpenmpExtras(Package):
placement="llvm-project",
when="@" + ver,
)
patch("0001-Linking-hsakmt-libdrm-and-numactl-libraries.patch", when="@5.7")
patch("0001-Linking-hsakmt-libdrm-and-numactl-libraries.patch", when="@5.7:6.0")
def setup_run_environment(self, env):
devlibs_prefix = self.spec["llvm-amdgpu"].prefix
@@ -497,7 +505,7 @@ def install(self, spec, prefix):
devlibs_src = "{0}/rocm-openmp-extras/rocm-device-libs".format(src)
hsa_prefix = self.spec["hsa-rocr-dev"].prefix
hsakmt_prefix = self.spec["hsakmt-roct"].prefix
if self.spec.satisfies("@5.7"):
if self.spec.satisfies("@5.7:6.0"):
libdrm_prefix = self.spec["libdrm"].prefix
numactl_prefix = self.spec["numactl"].prefix
comgr_prefix = self.spec["comgr"].prefix
@@ -576,7 +584,7 @@ def install(self, spec, prefix):
"-DCMAKE_CXX_FLAGS=-isystem{0} -I{1}".format(elfutils_inc, ffi_inc),
"-DNEW_BC_PATH=1",
]
if self.spec.satisfies("@5.7"):
if self.spec.satisfies("@5.7:6.0"):
openmp_common_args += [
"-DLIBDRM_LIB={0}/lib".format(libdrm_prefix),
"-DHSAKMT_INC_PATH={0}/include".format(hsakmt_prefix),

View File

@@ -16,15 +16,16 @@ class RocmSmiLib(CMakePackage):
"""It is a C library for Linux that provides a user space interface
for applications to monitor and control GPU applications."""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocm_smi_lib"
git = "https://github.com/ROCm/rocm_smi_lib.git"
url = "https://github.com/ROCm/rocm_smi_lib/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
libraries = ["librocm_smi64"]
version("master", branch="master")
version("6.0.0", sha256="0053b42402fd007e5ca9b3186c70f2c6f1b3026558f328722adadc2838c51309")
version("5.7.1", sha256="4d79cb0482b2f801cc7824172743e3dd2b44b9f6784d1ca2e5067f2fbb4ef803")
version("5.7.0", sha256="a399db3d9fc113ce2dd1ab5608a1cf9129ec4b6a2a79ab7922b1d9f43c454640")
version("5.6.1", sha256="9e94f9a941202c3d7ce917fd1cd78c4e0f06f48d6c929f3aa916378ccef1e02c")
@@ -116,7 +117,7 @@ class RocmSmiLib(CMakePackage):
depends_on("cmake@3:", type="build")
depends_on("python@3:", type=("build", "run"), when="@3.9.0:")
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
patch("disable_pdf_generation_with_doxygen_and_latex.patch", when="@4.5.2:5.6")

View File

@@ -14,11 +14,11 @@ class RocmSmi(MakefilePackage):
management of your ROCm enabled system
Note: After ROCm 3.9, this project moved to
https://github.com/RadeonOpenCompute/rocm_smi_lib/tree/master/python_smi_tools
https://github.com/ROCm/rocm_smi_lib/tree/master/python_smi_tools
The spack package is called: rocm-smi-lib"""
homepage = "https://github.com/RadeonOpenCompute/ROC-smi"
url = "https://github.com/RadeonOpenCompute/ROC-smi/archive/rocm-4.1.0.tar.gz"
homepage = "https://github.com/ROCm/ROC-smi"
url = "https://github.com/ROCm/ROC-smi/archive/rocm-4.1.0.tar.gz"
maintainers("srekolam", "renjithravindrankannath")
tags = ["rocm"]

View File

@@ -11,14 +11,15 @@
class RocmTensile(CMakePackage):
"""Radeon Open Compute Tensile library"""
homepage = "https://github.com/ROCmSoftwarePlatform/Tensile/"
git = "https://github.com/ROCmSoftwarePlatform/Tensile.git"
url = "https://github.com/ROCmSoftwarePlatform/Tensile/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/Tensile/"
git = "https://github.com/ROCm/Tensile.git"
url = "https://github.com/ROCm/Tensile/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")
maintainers("srekolam", "renjithravindrankannath", "haampie")
version("6.0.0", sha256="5d90add62d1439b7daf0527316e950e454e5d8beefb4f723865fe9ab26c7aa42")
version("5.7.1", sha256="9211a51b23c22b7a79e4e494e8ff3c31e90bf21adb8cce260acc57891fb2c917")
version("5.7.0", sha256="fe2ae067c1c579f33d7a1e26da3fe6b4ed44befa08f9dfce2ceae586f184b816")
version("5.6.1", sha256="3e78c933563fade8781a1dca2079bff135af2f5d2c6eb0147797d2c1f24d006c")
@@ -166,6 +167,7 @@ class RocmTensile(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-cmake@" + ver, type="build", when="@" + ver)
depends_on("hip@" + ver, when="@" + ver)
@@ -187,6 +189,7 @@ class RocmTensile(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-openmp-extras@" + ver, when="@" + ver)
@@ -218,11 +221,12 @@ class RocmTensile(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-smi-lib@" + ver, type="build", when="@" + ver)
root_cmakelists_dir = "Tensile/Source"
# Status: https://github.com/ROCmSoftwarePlatform/Tensile/commit/a488f7dadba34f84b9658ba92ce9ec5a0615a087
# Status: https://github.com/ROCm/Tensile/commit/a488f7dadba34f84b9658ba92ce9ec5a0615a087
# Not yet landed in 3.7.0, nor 3.8.0.
patch("0001-fix-compile-error.patch", when="@3.7.0:3.8.0")
patch("0002-require-openmp-when-tensile-use-openmp-is-on.patch", when="@3.9.0:4.0.0")

View File

@@ -0,0 +1,636 @@
From 7bb26280b6da667573a581780f97856985b44e4e Mon Sep 17 00:00:00 2001
From: Renjith Ravindran <Renjith.RavindranKannath@amd.com>
Date: Fri, 12 Jan 2024 09:31:21 +0000
Subject: [PATCH] Updating cmake with include and library path for spack
---
CMakeLists.txt | 21 +++++++++++----------
babel.so/CMakeLists.txt | 18 +++++++++---------
cmake_modules/tests_unit.cmake | 3 ++-
edp.so/CMakeLists.txt | 6 +++---
gm.so/CMakeLists.txt | 6 +++---
gpup.so/CMakeLists.txt | 8 ++++----
gst.so/CMakeLists.txt | 10 +++++-----
iet.so/CMakeLists.txt | 6 +++---
mem.so/CMakeLists.txt | 6 +++---
pbqt.so/CMakeLists.txt | 6 +++---
pebb.so/CMakeLists.txt | 4 ++--
peqt.so/CMakeLists.txt | 6 +++---
perf.so/CMakeLists.txt | 8 ++++----
pesm.so/CMakeLists.txt | 8 ++++----
rcqt.so/CMakeLists.txt | 6 +++---
rvs/CMakeLists.txt | 15 ++++++++-------
rvs/tests.cmake | 6 ++++--
rvslib/CMakeLists.txt | 2 +-
smqt.so/CMakeLists.txt | 6 +++---
testif.so/CMakeLists.txt | 20 ++++++++++----------
20 files changed, 88 insertions(+), 83 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b25eca4..eeee55d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -70,13 +70,14 @@ endif(rocblas_FOUND)
# variables since we will pass them as cmake params appropriately, and
# all find_packages relevant to this build will be in ROCM path hence appending it to CMAKE_PREFIX_PATH
set(ROCM_PATH "/opt/rocm" CACHE PATH "ROCM install path")
-set(CMAKE_INSTALL_PREFIX "/opt/rocm" CACHE PATH "CMAKE installation directory")
-set(CPACK_PACKAGING_INSTALL_PREFIX "/opt/rocm" CACHE PATH "Prefix used in built packages")
+set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
+set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+set(CPACK_PACKAGING_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
list(APPEND CMAKE_PREFIX_PATH "${ROCM_PATH}")
-set(ROCR_INC_DIR "${ROCM_PATH}/include" CACHE PATH "Contains header files exported by ROC Runtime" FORCE)
-set(ROCR_LIB_DIR "${ROCM_PATH}/lib" CACHE PATH "Contains library files exported by ROC Runtime" FORCE)
-set(HIP_INC_DIR "${ROCM_PATH}" CACHE PATH "Contains header files exported by ROC Runtime")
-set(ROCT_INC_DIR "${ROCM_PATH}/include" CACHE PATH "Contains header files exported by ROC Trunk" FORCE)
+set(ROCR_INC_DIR "${HSA_PATH}/include" CACHE PATH "Contains header files exported by ROC Runtime")
+set(ROCR_LIB_DIR "${HSA_PATH}/lib" CACHE PATH "Contains library files exported by ROC Runtime")
+set(HIP_INC_DIR "${HIP_PATH}" CACHE PATH "Contains header files exported by ROC Runtime")
+set(ROCT_INC_DIR "${ROCM_PATH}/include" CACHE PATH "Contains header files exported by ROC Trunk")
add_definitions(-DROCM_PATH="${ROCM_PATH}")
add_definitions(-DRVS_LIB_PATH="${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/rvs")
@@ -420,8 +421,8 @@ if (RVS_ROCBLAS EQUAL 1)
set(ROCBLAS_INC_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-src/build/release/rocblas-install")
set(ROCBLAS_LIB_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-src/build/release/rocblas-install/lib/")
else()
- set(ROCBLAS_INC_DIR "${ROCM_PATH}/include")
- set(ROCBLAS_LIB_DIR "${ROCM_PATH}/lib")
+ set(ROCBLAS_INC_DIR "${ROCBLAS_DIR}/include")
+ set(ROCBLAS_LIB_DIR "${ROCBLAS_DIR}/lib")
endif()
if (RVS_ROCMSMI EQUAL 1)
@@ -436,8 +437,8 @@ else()
set(ROCM_SMI_LIB_DIR "${ROCM_PATH}/rocm_smi/lib")
else()
message( STATUS "ROCBLAS REORG Enabled Version: ${RVS_ROCBLAS_VERSION_FLAT}" )
- set(ROCM_SMI_INC_DIR "${ROCM_PATH}/include")
- set(ROCM_SMI_LIB_DIR "${ROCM_PATH}/lib")
+ set(ROCM_SMI_INC_DIR "${ROCM_SMI_DIR}/include")
+ set(ROCM_SMI_LIB_DIR "${ROCM_SMI_DIR}/lib")
endif()
endif()
set(ROCM_SMI_LIB "rocm_smi64" CACHE STRING "rocm_smi library name")
diff --git a/babel.so/CMakeLists.txt b/babel.so/CMakeLists.txt
index f163dae..fa85b38 100644
--- a/babel.so/CMakeLists.txt
+++ b/babel.so/CMakeLists.txt
@@ -107,13 +107,13 @@ set(HIP_HCC_LIB "amdhip64")
add_compile_options(-DRVS_ROCBLAS_VERSION_FLAT=${RVS_ROCBLAS_VERSION_FLAT})
# Determine Roc Runtime header files are accessible
-if(NOT EXISTS ${HIP_INC_DIR}/include/hip/hip_runtime.h)
- message("ERROR: ROC Runtime headers can't be found under specified path. Please set HIP_INC_DIR path. Current value is : " ${HIP_INC_DIR})
+if(NOT EXISTS ${HIP_PATH}/include/hip/hip_runtime.h)
+ message("ERROR: ROC Runtime headers can't be found under specified path. Please set HIP_PATH path. Current value is : " ${HIP_PATH})
RETURN()
endif()
-if(NOT EXISTS ${HIP_INC_DIR}/include/hip/hip_runtime_api.h)
- message("ERROR: ROC Runtime headers can't be found under specified path. Please set HIP_INC_DIR path. Current value is : " ${HIP_INC_DIR})
+if(NOT EXISTS ${HIP_PATH}/include/hip/hip_runtime_api.h)
+ message("ERROR: ROC Runtime headers can't be found under specified path. Please set HIP_PATH path. Current value is : " ${HIP_PATH})
RETURN()
endif()
@@ -133,16 +133,16 @@ if(DEFINED RVS_ROCMSMI)
endif()
-if(NOT EXISTS "${ROCR_LIB_DIR}/lib${HIP_HCC_LIB}.so")
- message("ERROR: ROC Runtime libraries can't be found under specified path. Please set ROCR_LIB_DIR path. Current value is : " ${ROCR_LIB_DIR})
+if(NOT EXISTS "${HIP_PATH}/lib/lib${HIP_HCC_LIB}.so")
+ message("ERROR: ROC Runtime libraries can't be found under specified path. Please set HIP_PATH path. Current value is : " ${HIP_PATH})
RETURN()
endif()
## define include directories
-include_directories(./ ../ ${ROCR_INC_DIR} ${HIP_INC_DIR})
+include_directories(./ ../ ${HIP_PATH})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${HIP_PATH}/lib/ ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
@@ -154,7 +154,7 @@ add_library( ${RVS_TARGET} SHARED ${SOURCES})
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${HIP_HCC_LIB} ${ROCBLAS_LIB})
+target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${HIP_HCC_LIB} ${ROCBLAS_LIB} ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/cmake_modules/tests_unit.cmake b/cmake_modules/tests_unit.cmake
index e0e9f88..7321e0a 100644
--- a/cmake_modules/tests_unit.cmake
+++ b/cmake_modules/tests_unit.cmake
@@ -27,7 +27,7 @@
## define additional unit testing include directories
include_directories(${UT_INC})
## define additional unit testing lib directories
-link_directories(${UT_LIB} ${RVS_LIB_DIR})
+link_directories(${UT_LIB} ${RVS_LIB_DIR} ${ROCM_SMI_LIB_DIR})
file(GLOB TESTSOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} test/test*.cpp )
#message ( "TESTSOURCES: ${TESTSOURCES}" )
@@ -45,6 +45,7 @@ FOREACH(SINGLE_TEST ${TESTSOURCES})
)
target_link_libraries(${TEST_NAME}
${UT_LINK_LIBS} rvslibut rvslib gtest_main gtest pthread pci
+ ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so
)
target_compile_definitions(${TEST_NAME} PUBLIC RVS_UNIT_TEST)
if(DEFINED tcd.${TEST_NAME})
diff --git a/edp.so/CMakeLists.txt b/edp.so/CMakeLists.txt
index 7dd34ea..7978abe 100644
--- a/edp.so/CMakeLists.txt
+++ b/edp.so/CMakeLists.txt
@@ -134,11 +134,11 @@ if(NOT EXISTS "${ROCR_LIB_DIR}/lib${HIP_HCC_LIB}.so")
endif()
## define include directories
-include_directories(./ ../ ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR})
+include_directories(./ ../ ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR} ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR})
+link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpciaccess.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpciaccess.so libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set (SOURCES src/rvs_module.cpp src/action.cpp src/edp_worker.cpp )
diff --git a/gm.so/CMakeLists.txt b/gm.so/CMakeLists.txt
index d3caa84..73b83ce 100644
--- a/gm.so/CMakeLists.txt
+++ b/gm.so/CMakeLists.txt
@@ -118,11 +118,11 @@ if(DEFINED RVS_ROCMSMI)
endif()
## define include directories
-include_directories(./ ../ ${ROCM_SMI_INC_DIR})
+include_directories(./ ../ ${ROCM_SMI_INC_DIR} ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
link_directories(${RVS_LIB_DIR} ${ROCM_SMI_LIB_DIR} ${ASAN_LIB_PATH})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so librocm_smi64.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp src/worker.cpp)
@@ -133,7 +133,7 @@ add_library( ${RVS_TARGET} SHARED ${SOURCES})
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${ROCM_SMI_LIB})
+target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/gpup.so/CMakeLists.txt b/gpup.so/CMakeLists.txt
index 43d337a..a234feb 100644
--- a/gpup.so/CMakeLists.txt
+++ b/gpup.so/CMakeLists.txt
@@ -109,11 +109,11 @@ else()
endif()
## define include directories
-include_directories(./ ../ include ../include)
+include_directories(./ ../ include ../include ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp)
@@ -124,7 +124,7 @@ set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/gst.so/CMakeLists.txt b/gst.so/CMakeLists.txt
index fd346ce..cb8c4b6 100644
--- a/gst.so/CMakeLists.txt
+++ b/gst.so/CMakeLists.txt
@@ -137,17 +137,17 @@ if(DEFINED RVS_ROCMSMI)
endif()
-if(NOT EXISTS "${ROCR_LIB_DIR}/lib${HIP_HCC_LIB}.so")
+if(NOT EXISTS "${HIP_INC_DIR}/lib/lib${HIP_HCC_LIB}.so")
message("ERROR: ROC Runtime libraries can't be found under specified path. Please set ROCR_LIB_DIR path. Current value is : " ${ROCR_LIB_DIR})
RETURN()
endif()
## define include directories
-include_directories(./ ../ ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR})
+include_directories(./ ../ ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR} ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${HIP_INC_DIR}/lib/ ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp src/gst_worker.cpp)
@@ -157,7 +157,7 @@ add_library( ${RVS_TARGET} SHARED ${SOURCES})
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${HIP_HCC_LIB} ${ROCBLAS_LIB})
+target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${HIP_HCC_LIB} ${ROCBLAS_LIB} )
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/iet.so/CMakeLists.txt b/iet.so/CMakeLists.txt
index a85ca98..252e565 100644
--- a/iet.so/CMakeLists.txt
+++ b/iet.so/CMakeLists.txt
@@ -140,7 +140,7 @@ if(DEFINED RVS_ROCMSMI)
endif()
endif()
-if(NOT EXISTS "${ROCR_LIB_DIR}/lib${HIP_HCC_LIB}.so")
+if(NOT EXISTS "${HIP_INC_DIR}/lib/lib${HIP_HCC_LIB}.so")
message("ERROR: ROC Runtime libraries can't be found under specified path. Please set ROCR_LIB_DIR path. Current value is : " ${ROCR_LIB_DIR})
RETURN()
endif()
@@ -159,7 +159,7 @@ include_directories(./ ../ ${ROCM_SMI_INC_DIR} ${ROCBLAS_INC_DIR} ${ROCR_INC_DIR
# Add directories to look for library files to link
link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ROCM_SMI_LIB_DIR} ${ASAN_LIB_PATH})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so librocm_smi64.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
set(SOURCES src/rvs_module.cpp src/action.cpp src/iet_worker.cpp )
@@ -168,7 +168,7 @@ add_library( ${RVS_TARGET} SHARED ${SOURCES})
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${HIP_HCC_LIB} ${ROCBLAS_LIB} ${ROCM_SMI_LIB})
+target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${HIP_INC_DIR}/lib/ ${HIP_HCC_LIB} ${ROCBLAS_LIB})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/mem.so/CMakeLists.txt b/mem.so/CMakeLists.txt
index 5133337..2462bbc 100644
--- a/mem.so/CMakeLists.txt
+++ b/mem.so/CMakeLists.txt
@@ -134,7 +134,7 @@ if(DEFINED RVS_ROCMSMI)
endif()
-if(NOT EXISTS "${ROCR_LIB_DIR}/lib${HIP_HCC_LIB}.so")
+if(NOT EXISTS "${HIP_INC_DIR}/lib/lib${HIP_HCC_LIB}.so")
message("ERROR: ROC Runtime libraries can't be found under specified path. Please set ROCR_LIB_DIR path. Current value is : " ${ROCR_LIB_DIR})
RETURN()
endif()
@@ -143,9 +143,9 @@ endif()
include_directories(./ ../ ${ROCR_INC_DIR} ${HIP_INC_DIR})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${HIP_INC_DIR}/lib ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp src/rvs_memtest.cpp src/rvs_memworker.cpp)
diff --git a/pbqt.so/CMakeLists.txt b/pbqt.so/CMakeLists.txt
index 5ae675a..892b6ac 100644
--- a/pbqt.so/CMakeLists.txt
+++ b/pbqt.so/CMakeLists.txt
@@ -136,11 +136,11 @@ if(NOT EXISTS ${ROCR_LIB_DIR}/${CORE_RUNTIME_LIBRARY}.so)
endif()
## define include directories
-include_directories(./ ../ pci ${ROCR_INC_DIR})
+include_directories(./ ../ pci ${ROCR_INC_DIR} ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCT_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${HSAKMT_LIB_DIR} ${ROCT_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp src/action_run.cpp
diff --git a/pebb.so/CMakeLists.txt b/pebb.so/CMakeLists.txt
index c4e2964..7a6b368 100644
--- a/pebb.so/CMakeLists.txt
+++ b/pebb.so/CMakeLists.txt
@@ -139,9 +139,9 @@ endif()
## define include directories
include_directories(./ ../ pci ${ROCR_INC_DIR})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCT_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${HSAKMT_LIB_DIR} ${ROCT_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR} )
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp src/action_run.cpp
diff --git a/peqt.so/CMakeLists.txt b/peqt.so/CMakeLists.txt
index ead507d..567358b 100644
--- a/peqt.so/CMakeLists.txt
+++ b/peqt.so/CMakeLists.txt
@@ -107,9 +107,9 @@ else()
endif()
## define include directories
-include_directories(./ ../)
+include_directories(./ ../ ${HSA_PATH})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${HSA_PATH}/lib/ ${HSAKMT_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR} ${YAML_CPP_INCLUDE_DIRS})
## additional libraries
set (PROJECT_LINK_LIBS rvslib libpci.so libm.so)
@@ -121,7 +121,7 @@ add_library( ${RVS_TARGET} SHARED ${SOURCES})
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/perf.so/CMakeLists.txt b/perf.so/CMakeLists.txt
index 518dac9..02d2245 100644
--- a/perf.so/CMakeLists.txt
+++ b/perf.so/CMakeLists.txt
@@ -137,7 +137,7 @@ if(DEFINED RVS_ROCMSMI)
endif()
-if(NOT EXISTS "${ROCR_LIB_DIR}/lib${HIP_HCC_LIB}.so")
+if(NOT EXISTS "${HIP_INC_DIR}/lib/lib${HIP_HCC_LIB}.so")
message("ERROR: ROC Runtime libraries can't be found under specified path. Please set ROCR_LIB_DIR path. Current value is : " ${ROCR_LIB_DIR})
RETURN()
endif()
@@ -145,9 +145,9 @@ endif()
## define include directories
include_directories(./ ../ ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${HIP_INC_DIR}/lib ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpthread.so libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp src/perf_worker.cpp)
@@ -157,7 +157,7 @@ add_library( ${RVS_TARGET} SHARED ${SOURCES})
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS} ${HIP_HCC_LIB} ${ROCBLAS_LIB})
+target_link_libraries(${RVS_TARGET} ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/pesm.so/CMakeLists.txt b/pesm.so/CMakeLists.txt
index 1f27f34..20a8bed 100644
--- a/pesm.so/CMakeLists.txt
+++ b/pesm.so/CMakeLists.txt
@@ -107,11 +107,11 @@ else()
endif()
## define include directories
-include_directories(./ ../ pci)
+include_directories(./ ../ pci ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS libpthread.so libpci.so libm.so ${PROJECT_LINK_LIBS} ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp src/worker.cpp)
@@ -121,7 +121,7 @@ add_library( ${RVS_TARGET} SHARED ${SOURCES})
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
diff --git a/rcqt.so/CMakeLists.txt b/rcqt.so/CMakeLists.txt
index c0099ab..8d92982 100644
--- a/rcqt.so/CMakeLists.txt
+++ b/rcqt.so/CMakeLists.txt
@@ -108,11 +108,11 @@ else()
endif()
## define include directories
-include_directories(./ ../)
+include_directories(./ ../ ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ASAN_LIB_PATH} ${ASAN_LIB_PATH} ${HSAKMT_LIB_DIR} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib)
+set (PROJECT_LINK_LIBS rvslib ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES
diff --git a/rvs/CMakeLists.txt b/rvs/CMakeLists.txt
index 527d474..76a5efd 100644
--- a/rvs/CMakeLists.txt
+++ b/rvs/CMakeLists.txt
@@ -113,21 +113,22 @@ else()
endif()
## define include directories
-include_directories(./ ../ ${YAML_CPP_INCLUDE_DIRS})
+include_directories(./ ../ ${YAML_INC_DIR})
## define lib directories
-link_directories(${CMAKE_CURRENT_BINARY_DIR} ${RVS_LIB_DIR} ${ROCT_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ROCM_SMI_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${CMAKE_CURRENT_BINARY_DIR} ${RVS_LIB_DIR} ${RVS_LIB_DIR}/.. ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR} ${YAML_CPP_LIBRARIES} ${ROCT_LIB_DIR} ${ROCBLAS_LIB_DIR} )
## additional libraries
-set(ROCBLAS_LIB "rocblas")
-set(ROC_THUNK_NAME "hsakmt")
-set(CORE_RUNTIME_NAME "hsa-runtime")
+set(ROCBLAS_LIB "${ROCBLAS_LIB_DIR}/librocblas.so")
+set(ROC_THUNK_NAME "${HSAKMT_LIB_DIR}/libhsakmt.a")
+set(CORE_RUNTIME_NAME "${HSA_PATH}/lib/libhsa-runtime64.so")
+set(YAML_CPP_LIB "${YAML_INC_DIR}/../lib64/libyaml-cpp.a")
set(CORE_RUNTIME_TARGET "${CORE_RUNTIME_NAME}64")
-set(PROJECT_LINK_LIBS libdl.so libpthread.so libpci.so ${YAML_CPP_LIBRARIES})
+set(PROJECT_LINK_LIBS libdl.so libpthread.so libpci.so)
## define target
add_executable(${RVS_TARGET} src/rvs.cpp)
target_link_libraries(${RVS_TARGET} rvslib
- ${ROCBLAS_LIB} ${ROCM_SMI_LIB} ${ROC_THUNK_NAME} ${CORE_RUNTIME_TARGET} ${PROJECT_LINK_LIBS})
+ ${ROCBLAS_LIB} ${ROCM_SMI_LIB} ${ROC_THUNK_NAME} ${PROJECT_LINK_LIBS} ${CORE_RUNTIME_NAME} ${YAML_CPP_LIB})
add_dependencies(${RVS_TARGET} rvslib)
install(TARGETS ${RVS_TARGET}
diff --git a/rvs/tests.cmake b/rvs/tests.cmake
index 38ae3fb..0d62675 100644
--- a/rvs/tests.cmake
+++ b/rvs/tests.cmake
@@ -41,7 +41,8 @@ link_directories(${RVS_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ROCM_SMI_LIB_DIR} ${ROCT_LI
## define target for "test-to-fail"
add_executable(${RVS_TARGET}fail src/rvs.cpp)
target_link_libraries(${RVS_TARGET}fail rvslib rvslibut ${PROJECT_LINK_LIBS}
- ${ROCM_SMI_LIB} ${ROCBLAS_LIB} ${ROC_THUNK_NAME} ${CORE_RUNTIME_TARGET})
+ ${ROCM_SMI_LIB} ${ROCBLAS_LIB} ${ROC_THUNK_NAME} ${CORE_RUNTIME_TARGET}
+ ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
target_compile_definitions(${RVS_TARGET}fail PRIVATE RVS_INVERT_RETURN_STATUS)
set_target_properties(${RVS_TARGET}fail PROPERTIES
@@ -187,7 +188,7 @@ add_test(NAME unit.ttf.rvs.config.noconfig
)
## define include directories
-include_directories(${UT_INC})
+include_directories(${UT_INC} ${YAML_INC_DIR})
## define lib directories
link_directories(${UT_LIB} ${ROCBLAS_LIB_DIR} ${ROCM_SMI_LIB_DIR} ${ROCT_LIB_DIR})
## additional libraries for unit tests
@@ -211,6 +212,7 @@ FOREACH(SINGLE_TEST ${TESTSOURCES})
${PROJECT_TEST_LINK_LIBS}
rvslib rvslibut gtest_main gtest pthread
${ROCM_SMI_LIB} ${ROCBLAS_LIB} ${ROC_THUNK_NAME} ${CORE_RUNTIME_TARGET}
+ ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so
)
add_dependencies(${TEST_NAME} rvs_gtest_target)
diff --git a/rvslib/CMakeLists.txt b/rvslib/CMakeLists.txt
index 8d29590..d52aee3 100644
--- a/rvslib/CMakeLists.txt
+++ b/rvslib/CMakeLists.txt
@@ -116,7 +116,7 @@ endif()
## define include directories
include_directories(./ ../ ../rvs
- ${ROCM_SMI_INC_DIR} ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR})
+ ${ROCM_SMI_INC_DIR} ${HIP_PATH} ${ROCBLAS_INC_DIR} ${YAML_INC_DIR})
link_directories(${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
diff --git a/smqt.so/CMakeLists.txt b/smqt.so/CMakeLists.txt
index 042586f..0133c00 100644
--- a/smqt.so/CMakeLists.txt
+++ b/smqt.so/CMakeLists.txt
@@ -106,11 +106,11 @@ else()
endif()
## define include directories
-include_directories(./ ../ pci)
+include_directories(./ ../ pci ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS rvslib libpci.so libm.so)
+set (PROJECT_LINK_LIBS rvslib libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
set(SOURCES src/rvs_module.cpp src/action.cpp)
diff --git a/testif.so/CMakeLists.txt b/testif.so/CMakeLists.txt
index 4cba0f9..34b491e 100644
--- a/testif.so/CMakeLists.txt
+++ b/testif.so/CMakeLists.txt
@@ -108,11 +108,11 @@ endif()
## define include directories
-include_directories(./ ../ pci)
+include_directories(./ ../ pci ${YAML_CPP_INCLUDE_DIRS})
# Add directories to look for library files to link
-link_directories(${RVS_LIB_DIR} ${ROCR_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH})
+link_directories(${RVS_LIB_DIR} ${ROCBLAS_LIB_DIR} ${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})
## additional libraries
-set (PROJECT_LINK_LIBS libpthread.so libpci.so libm.so)
+set (PROJECT_LINK_LIBS libpthread.so libpci.so libm.so ${ROCBLAS_LIB_DIR}/librocblas.so ${HSAKMT_LIB_DIR}/libhsakmt.a ${HSA_PATH}/lib/libhsa-runtime64.so)
## define source files
## set(SOURCES src/rvs_module.cpp src/action.cpp src/worker.cpp)
@@ -124,7 +124,7 @@ add_library( ${RVS_TARGET} SHARED src/rvs_module_no_if_methods.cpp)
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
@@ -145,7 +145,7 @@ add_library( ${RVS_TARGET} SHARED src/rvs_module_no_if0.cpp)
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
@@ -166,7 +166,7 @@ add_library( ${RVS_TARGET} SHARED src/rvs_module_no_if0_methods.cpp)
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
@@ -187,7 +187,7 @@ add_library( ${RVS_TARGET} SHARED src/rvs_module_no_if1.cpp)
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
@@ -208,7 +208,7 @@ add_library( ${RVS_TARGET} SHARED src/rvs_module_no_if1_methods.cpp)
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
@@ -229,7 +229,7 @@ add_library( ${RVS_TARGET} SHARED src/rvs_module_fail_init.cpp)
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
@@ -250,7 +250,7 @@ add_library( ${RVS_TARGET} SHARED src/rvs_module_fail_create_action.cpp)
set_target_properties(${RVS_TARGET} PROPERTIES
SUFFIX .so.${LIB_VERSION_STRING}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
-target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS} )
+target_link_libraries(${RVS_TARGET} rvslib ${PROJECT_LINK_LIBS})
add_dependencies(${RVS_TARGET} rvslib)
add_custom_command(TARGET ${RVS_TARGET} POST_BUILD
--
2.39.3

View File

@@ -15,13 +15,14 @@ class RocmValidationSuite(CMakePackage):
computing environment, enabled using the ROCm software stack on a
compatible platform."""
homepage = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite"
url = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/ROCmValidationSuite"
url = "https://github.com/ROCm/ROCmValidationSuite/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")
maintainers("srekolam", "renjithravindrankannath")
version("6.0.0", sha256="a84e36b5e50e70ba033fb6bc6fa99da2e32bf7eaef2098df3164365a77a8f14c")
version("5.7.1", sha256="202f2b6e014bbbeec40af5d3ec630c042f09a61087a77bd70715d81044ea4d65")
version("5.7.0", sha256="f049b7786a220e9b6dfe099f17727dd0d9e41be9e680fe8309eae400cc5536ea")
version("5.6.1", sha256="d5e4100e2d07311dfa101563c15d026a8130442cdee8af9ef861832cd7866c0d")
@@ -122,9 +123,8 @@ class RocmValidationSuite(CMakePackage):
"007-cleanup-path-reference-donot-download-googletest-yaml-library-path_5.6.patch",
when="@5.6",
)
patch(
"008-correcting-library-and-include-path-WITHOUT-RVS-BUILD-TESTS.patch", when="@5.7.0:5.7"
)
patch("008-correcting-library-and-include-path-WITHOUT-RVS-BUILD-TESTS.patch", when="@5.7")
patch("009-replacing-rocm-path-with-package-path.patch", when="@6.0")
depends_on("cmake@3.5:", type="build")
depends_on("zlib-api", type="link")
depends_on("yaml-cpp~shared")
@@ -165,6 +165,7 @@ def setup_build_environment(self, build_env):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("rocminfo@" + ver, when="@" + ver)

View File

@@ -10,14 +10,15 @@
class Rocminfo(CMakePackage):
"""Radeon Open Compute (ROCm) Runtime rocminfo tool"""
homepage = "https://github.com/RadeonOpenCompute/rocminfo"
git = "https://github.com/RadeonOpenCompute/rocminfo.git"
url = "https://github.com/RadeonOpenCompute/rocminfo/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocminfo"
git = "https://github.com/ROCm/rocminfo.git"
url = "https://github.com/ROCm/rocminfo/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath", "haampie")
version("master", branch="master")
version("6.0.0", sha256="bc29f1798644b6dea73895353dffada9db7366d0058274e587ebd3291a4d3844")
version("5.7.1", sha256="642dc2ec4254b3c30c43064e6690861486db820b25f4906ec78bdb47e68dcd0b")
version("5.7.0", sha256="a5a3c19513bf26f17f163a03ba5288c5c761619ef55f0cb9e15472771748b93e")
version("5.6.1", sha256="780b186ac7410a503eca1060f4bbc35db1b7b4d1d714d15c7534cd26d8af7b54")
@@ -136,12 +137,13 @@ class Rocminfo(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
"master",
]:
depends_on("hsakmt-roct@" + ver, when="@" + ver)
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
def cmake_args(self):

View File

@@ -12,9 +12,9 @@ class Rocmlir(CMakePackage):
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocMLIR"
git = "https://github.com/ROCm/rocMLIR.git"
url = "https://github.com/ROCm/rocMLIR/archive/refs/tags/rocm-6.0.0.tar.gz"
maintainers("srekolam")
version("5.5.1", commit="8c29325e7e68e3248e863172bf0e7f97055d45ee")

View File

@@ -9,14 +9,15 @@
class Rocprim(CMakePackage):
"""Radeon Open Compute Parallel Primitives Library"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocPRIM"
git = "https://github.com/ROCmSoftwarePlatform/rocPRIM.git"
url = "https://github.com/ROCmSoftwarePlatform/rocPRIM/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocPRIM"
git = "https://github.com/ROCm/rocPRIM.git"
url = "https://github.com/ROCm/rocPRIM/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")
maintainers("cgmb", "srekolam", "renjithravindrankannath")
version("6.0.0", sha256="51f26c9f891a64c8db8df51d75d86d404d682092fd9d243e966ac6b2a6de381a")
version("5.7.1", sha256="15d820a0f61aed60efbba88b6efe6942878b02d912f523f9cf8f33a4583d6cd7")
version("5.7.0", sha256="a1bf94bbad13a0410b49476771270606d8a9d257188ee3ec3a37eee80540fe9b")
version("5.6.1", sha256="e9ec1b0039c07cf3096653a04224fe5fe755afc6ba000f6838b3a8bc84df27de")
@@ -147,6 +148,7 @@ class Rocprim(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("comgr@" + ver, when="@" + ver)

View File

@@ -11,9 +11,9 @@
class RocprofilerDev(CMakePackage):
"""ROCPROFILER library for AMD HSA runtime API extension support"""
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.4.3.tar.gz"
homepage = "https://github.com/ROCm/rocprofiler"
git = "https://github.com/ROCm/rocprofiler.git"
url = "https://github.com/ROCm/rocprofiler/archive/refs/tags/rocm-5.4.3.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
@@ -133,7 +133,7 @@ class RocprofilerDev(CMakePackage):
depends_on("roctracer-dev-api@" + ver, when="@" + ver)
depends_on("numactl", type="link", when="@4.3.1")
# See https://github.com/ROCm-Developer-Tools/rocprofiler/pull/50
# See https://github.com/ROCm/rocprofiler/pull/50
patch("fix-includes.patch")
patch("0001-Continue-build-in-absence-of-aql-profile-lib.patch", when="@5.3:")

View File

@@ -14,9 +14,9 @@ class Rocrand(CMakePackage):
"""The rocRAND project provides functions that generate
pseudo-random and quasi-random numbers."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocRAND"
git = "https://github.com/ROCmSoftwarePlatform/rocRAND.git"
url = "https://github.com/ROCmSoftwarePlatform/rocRAND/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocRAND"
git = "https://github.com/ROCm/rocRAND.git"
url = "https://github.com/ROCm/rocRAND/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath")
@@ -26,6 +26,7 @@ class Rocrand(CMakePackage):
version("develop", branch="develop")
version("master", branch="master")
version("6.0.0", sha256="cee93231c088be524bb2cb0e6093ec47e62e61a55153486bebbc2ca5b3d49360")
version("5.7.1", sha256="885cd905bbd23d02ba8f3f87d5c0b79bc44bd020ea9af190f3959cf5aa33d07d")
version("5.7.0", sha256="d6053d986821e5cbc6cfec0778476efb1411ef943f11e7a8b973b1814a259dcf")
version("5.6.1", sha256="6bf71e687ffa0fcc1b00e3567dd43da4147a82390f1b2db5e6f1f594dee6066d")
@@ -149,7 +150,7 @@ class Rocrand(CMakePackage):
]:
resource(
name="hipRAND",
git="https://github.com/ROCmSoftwarePlatform/hipRAND.git",
git="https://github.com/ROCm/hipRAND.git",
commit=d_commit,
destination="",
placement="hiprand",
@@ -157,7 +158,7 @@ class Rocrand(CMakePackage):
)
resource(
name="hipRAND",
git="https://github.com/ROCmSoftwarePlatform/hipRAND.git",
git="https://github.com/ROCm/hipRAND.git",
branch="master",
destination="",
placement="hiprand",
@@ -165,7 +166,7 @@ class Rocrand(CMakePackage):
)
resource(
name="hipRAND",
git="https://github.com/ROCmSoftwarePlatform/hipRAND.git",
git="https://github.com/ROCm/hipRAND.git",
branch="develop",
destination="",
placement="hiprand",
@@ -202,6 +203,7 @@ class Rocrand(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)

View File

@@ -13,9 +13,9 @@ class Rocsolver(CMakePackage):
"""rocSOLVER is a work-in-progress implementation of a
subset of LAPACK functionality on the ROCm platform."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocSOLVER"
git = "https://github.com/ROCmSoftwarePlatform/rocSOLVER.git"
url = "https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocSOLVER"
git = "https://github.com/ROCm/rocSOLVER.git"
url = "https://github.com/ROCm/rocSOLVER/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath", "haampie")
@@ -41,6 +41,7 @@ class Rocsolver(CMakePackage):
version("develop", branch="develop")
version("master", branch="master")
version("6.0.0", sha256="5fcaba96f3efafc2ecc3f4ec104095d96545c16e1b9f95410bd571cb0fc643ae")
version("5.7.1", sha256="83e0c137b8690dbeb2e85d9e25415d96bd06979f09f2b10b2aff8e4c9f833fa4")
version("5.7.0", sha256="bb16d360f14b34fe6e8a6b8ddc6e631672a5ffccbdcb25f0ce319edddd7f9682")
version("5.6.1", sha256="6a8f366218aee599a0e56755030f94ee690b34f30e6d602748632226c5dc21bb")
@@ -136,7 +137,7 @@ class Rocsolver(CMakePackage):
depends_on("netlib-lapack@3.7.1:", type="test")
patch("link-clients-blas.patch", when="@4.3.0:4.3.2")
# Backport https://github.com/ROCmSoftwarePlatform/rocSOLVER/commit/2bbfb8976f6e4d667499c77e41a6433850063e88
# Backport https://github.com/ROCm/rocSOLVER/commit/2bbfb8976f6e4d667499c77e41a6433850063e88
patch("fmt-8.1-compatibility.patch", when="@4.5.0:5.1.3")
# Maximize compatibility with other libraries that are using fmt.
patch("fmt-9-compatibility.patch", when="@5.2.0:5.5")
@@ -180,10 +181,11 @@ class Rocsolver(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("rocblas@" + ver, when="@" + ver)
for ver in ["5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocsparse@5.2:", when="@5.6:")
for tgt in itertools.chain(["auto"], amdgpu_targets):

View File

@@ -15,9 +15,9 @@ class Rocsparse(CMakePackage):
and toolchains. rocSPARSE is created using the HIP programming
language and optimized for AMD's latest discrete GPUs."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocSPARSE"
git = "https://github.com/ROCmSoftwarePlatform/rocSPARSE.git"
url = "https://github.com/ROCmSoftwarePlatform/rocSPARSE/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocSPARSE"
git = "https://github.com/ROCm/rocSPARSE.git"
url = "https://github.com/ROCm/rocSPARSE/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath")
@@ -34,7 +34,7 @@ class Rocsparse(CMakePackage):
variant("test", default=False, description="Build rocsparse-test client")
license("MIT")
version("6.0.0", sha256="bdc618677ec78830c6af315d61194d6ab8532345b8daeeb115aca96f274d4ca4")
version("5.7.1", sha256="4c09b182b371124675d4057246021b5ed45e2833fdbf265b37a9b06b668baf0a")
version("5.7.0", sha256="a42f0eb531b015b719e2bdcdff0cfb214e9894f73107966260f26931f982ecbc")
version("5.6.1", sha256="6a50a64354507f1374e1a86aa7f5c07d1aaa96ac193ac292c279153087bb5d54")
@@ -153,6 +153,7 @@ class Rocsparse(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("rocprim@" + ver, when="@" + ver)

View File

@@ -12,12 +12,13 @@ class Rocthrust(CMakePackage):
HIP/ROCm platform, which uses the rocPRIM library. The HIP ported
library works on HIP/ROCm platforms"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocThrust"
git = "https://github.com/ROCmSoftwarePlatform/rocThrust.git"
url = "https://github.com/ROCmSoftwarePlatform/rocThrust/archive/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocThrust"
git = "https://github.com/ROCm/rocThrust.git"
url = "https://github.com/ROCm/rocThrust/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath")
version("6.0.0", sha256="a3fdafe4b6124118e07f23a3b0270d91740da324f61aaa3e8c034da08d9312b1")
version("5.7.1", sha256="b7cb9ea6c42b2c6b610c34d2c438443e0f99245bd391aff18591949bf1cd53ee")
version("5.7.0", sha256="64e10f071acfc5b8e3c168b9178289cf1afc7b168bf1962793fc256b25074d3a")
version("5.6.1", sha256="63df61d5ab46d4cfda6066d748274bacecc77151692e372e6f7df5e91852bdc2")
@@ -149,6 +150,7 @@ class Rocthrust(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hip@" + ver, when="@" + ver)
depends_on("rocprim@" + ver, when="@" + ver)

View File

@@ -11,14 +11,15 @@ class RoctracerDevApi(Package):
package, mainly to avoid circular dependencies in the ROCm ecosystem.
For the ROC-tracer library, please check out roctracer-dev."""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/roctracer"
git = "https://github.com/ROCm/roctracer.git"
url = "https://github.com/ROCm/roctracer/archive/refs/tags/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")
maintainers("srekolam", "renjithravindrankannath")
version("6.0.0", sha256="941166a0363c5689bfec118d54e986c43fb1ec8cbf18d95721d9a824bd52c0f8")
version("5.7.1", sha256="ec0453adac7e62b142eb0df1e1e2506863aac4c3f2ce9d117c3184c08c0c6b48")
version("5.7.0", sha256="40bb757920488466e29df90bb80a975cc340bf7f8771fb1d754dfbb6b688d78e")
version("5.6.1", sha256="007c498be25b067ad9a7631a2b0892f9129150ee9714e471a921225875d45e69")

View File

@@ -13,16 +13,16 @@ class RoctracerDev(CMakePackage, ROCmPackage):
The goal of the implementation is to provide a generic independent from
specific runtime profiler to trace API and asyncronous activity."""
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.5.0.tar.gz"
homepage = "https://github.com/ROCm/roctracer"
git = "https://github.com/ROCm/roctracer.git"
url = "https://github.com/ROCm/roctracer/archive/rocm-6.0.0.tar.gz"
tags = ["rocm"]
maintainers("srekolam", "renjithravindrankannath")
libraries = ["libroctracer64"]
license("MIT")
version("6.0.0", sha256="941166a0363c5689bfec118d54e986c43fb1ec8cbf18d95721d9a824bd52c0f8")
version("5.7.1", sha256="ec0453adac7e62b142eb0df1e1e2506863aac4c3f2ce9d117c3184c08c0c6b48")
version("5.7.0", sha256="40bb757920488466e29df90bb80a975cc340bf7f8771fb1d754dfbb6b688d78e")
version("5.6.1", sha256="007c498be25b067ad9a7631a2b0892f9129150ee9714e471a921225875d45e69")
@@ -83,6 +83,7 @@ class RoctracerDev(CMakePackage, ROCmPackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("hsakmt-roct@" + ver, when="@" + ver)
depends_on("hsa-rocr-dev@" + ver, when="@" + ver)
@@ -105,7 +106,7 @@ class RoctracerDev(CMakePackage, ROCmPackage):
]:
depends_on("rocprofiler-dev@" + ver, when="@" + ver)
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.5.0", "5.5.1", "5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-core@" + ver, when="@" + ver)
patch("0001-include-rocprofiler-dev-path.patch", when="@5.3:5.4")

View File

@@ -19,14 +19,15 @@ class Rocwmma(CMakePackage):
generation of kernel assembly, and does not incur additional overhead costs of
linking to external runtime libraries or having to launch separate kernels."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocWMMA"
git = "https://github.com/ROCmSoftwarePlatform/rocWMMA.git"
url = "https://github.com/ROCmSoftwarePlatform/rocWMMA/archive/refs/tags/rocm-5.5.0.tar.gz"
homepage = "https://github.com/ROCm/rocWMMA"
git = "https://github.com/ROCm/rocWMMA.git"
url = "https://github.com/ROCm/rocWMMA/archive/refs/tags/rocm-6.0.0.tar.gz"
tags = ["rocm"]
license("MIT")
maintainers("srekolam", "renjithravindrankannath")
version("6.0.0", sha256="f9e97e7c6c552d43ef8c7348e4402bead2cd978d0f81a9657d6a0f6c83a6139b")
version("5.7.1", sha256="a998a1385e6ad7062707ddb9ff82bef727ca48c39a10b4d861667024e3ffd2a3")
version("5.7.0", sha256="a8f1b090e9e504a149a924c80cfb6aca817359b43833a6512ba32e178245526f")
version("5.6.1", sha256="41a5159ee1ad5fc411fe6220f37bd754e26d3883c24c0f2378f50ef628bc1b8f")
@@ -78,6 +79,7 @@ class Rocwmma(CMakePackage):
"5.6.1",
"5.7.0",
"5.7.1",
"6.0.0",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
depends_on("llvm-amdgpu@" + ver, type="build", when="@" + ver)
@@ -85,7 +87,7 @@ class Rocwmma(CMakePackage):
depends_on("rocblas@" + ver, type="build", when="@" + ver)
depends_on("rocm-openmp-extras@" + ver, type="build", when="@" + ver)
for ver in ["5.6.0", "5.6.1", "5.7.0", "5.7.1"]:
for ver in ["5.6.0", "5.6.1", "5.7.0", "5.7.1", "6.0.0"]:
depends_on("rocm-smi-lib@" + ver, when="@" + ver)
for tgt in itertools.chain(["auto"], amdgpu_targets):

View File

@@ -0,0 +1,61 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 137896e..ca82e98 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -129,6 +129,9 @@ list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
# OpenMP
find_package(OpenMP REQUIRED)
+find_path(HALF_INCLUDE_DIR half.hpp)
+message(STATUS "HALF_INCLUDE_DIR: ${HALF_INCLUDE_DIR}")
+
if(APPLE)
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
set(OpenMP_C "${CMAKE_C_COMPILER}")
@@ -278,6 +281,7 @@ target_include_directories(${PROJECT_NAME}
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/include
${ROCM_PATH}/include
+ ${HALF_INCLUDE_DIR}
PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/src/include/cpu
${CMAKE_CURRENT_SOURCE_DIR}/src/include/common
diff --git a/src/modules/CMakeLists.txt b/src/modules/CMakeLists.txt
index 2a64d77..80c5686 100644
--- a/src/modules/CMakeLists.txt
+++ b/src/modules/CMakeLists.txt
@@ -81,6 +81,8 @@ if("${TIME_INFO}" STREQUAL "1")
endif()
# Backend specific settings
+find_path(HALF_INCLUDE_DIR half.hpp)
+message(STATUS "HALF_INCLUDE_DIR: ${HALF_INCLUDE_DIR}")
if( "${BACKEND}" STREQUAL "HIP")
# Add HIP kernels
@@ -99,7 +101,7 @@ if( "${BACKEND}" STREQUAL "HIP")
# Add HIP specific includes
set(ROCM_INC ${ROCM_PATH}/include/)
list(APPEND HIP_LOCAL_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/src/include/hip/ ${CMAKE_SOURCE_DIR}/src/include/common/)
- set(INCLUDE_LIST ${ROCM_INC} ${HIP_LOCAL_INCLUDE_DIRS} ${INCLUDE_LIST})
+ set(INCLUDE_LIST ${ROCM_INC} ${HIP_LOCAL_INCLUDE_DIRS} ${INCLUDE_LIST} ${HALF_INCLUDE_DIR})
elseif( "${BACKEND}" STREQUAL "OCL")
# Add OpenCL kernels
file(GLOB MOD_CL_CPP "cl/*.cpp" )
@@ -114,7 +116,7 @@ elseif( "${BACKEND}" STREQUAL "OCL")
# Add OpenCL specific includes
set(ROCM_INC ${ROCM_PATH}/include/)
list(APPEND OCL_LOCAL_INCLUDE_LIST ${CMAKE_SOURCE_DIR}/src/include/cl/ ${CMAKE_SOURCE_DIR}/src/include/common/)
- set(INCLUDE_LIST ${ROCM_INC} ${OCL_LOCAL_INCLUDE_LIST} ${INCLUDE_LIST})
+ set(INCLUDE_LIST ${ROCM_INC} ${OCL_LOCAL_INCLUDE_LIST} ${INCLUDE_LIST} ${HALF_INCLUDE_DIR})
elseif( "${BACKEND}" STREQUAL "CPU")
# Add CPU specific includes
set(INCLUDE_LIST ${CMAKE_SOURCE_DIR}/src/include/common/)
@@ -136,6 +138,7 @@ target_include_directories( ${PROJECT_NAME}
PUBLIC
${CMAKE_SOURCE_DIR}/include
${ROCM_INC}
+ ${HALF_INCLUDE_DIR}
PRIVATE
${CMAKE_SOURCE_DIR}/src/include/cpu
${CMAKE_SOURCE_DIR}/src/include/common

View File

@@ -29,6 +29,7 @@ def url_for_version(self, version):
license("MIT")
version("6.0.0", sha256="3626a648bc773520f5cd5ca15f494de6e74b422baf32491750ce0737c3367f15")
version("5.7.1", sha256="36fff5f1c52d969c3e2e0c75b879471f731770f193c9644aa6ab993fb8fa4bbf")
version("5.7.0", sha256="1c612cde3c3d3840ae75ee5c1ee59bd8d61b1fdbf84421ae535cda863470fc06")
version("1.2.0", sha256="660a11e1bd8706967835597b26daa874fd1507459bfebe22818149444bec540c")
@@ -54,8 +55,9 @@ def url_for_version(self, version):
description="add utilities folder which contains rpp unit tests",
)
patch("0001-include-half-openmp-through-spack-package.patch")
patch("0001-include-half-openmp-through-spack-package.patch", when="@:5.7")
patch("0002-declare-handle-in-header.patch")
patch("0003-include-half-through-spack-package.patch", when="@6.0:")
# adds half.hpp include directory and modifies how the libjpegturbo
# library is linked for the rpp unit test
@@ -118,7 +120,11 @@ def patch(self):
conflicts("+opencl+hip")
with when("+hip"):
depends_on("hip@5:")
with when("@5.7:"):
for ver in ["5.7.0", "5.7.1", "6.0.0"]:
depends_on("hip@" + ver, when="@" + ver)
with when("@:1.2"):
depends_on("hip@5:")
with when("~hip"):
depends_on("rocm-opencl@5:")

View File

@@ -0,0 +1,28 @@
From d4afbed86fc4f9925e55367267b3796a522ba5d5 Mon Sep 17 00:00:00 2001
From: Renjith Ravindran <Renjith.RavindranKannath@amd.com>
Date: Sun, 14 Jan 2024 10:20:21 +0000
Subject: [PATCH] Change HIP_PLATFORM from HCC to AMD and NVCC to NVIDIA
---
include/sundials/sundials_hip_policies.hpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/sundials/sundials_hip_policies.hpp b/include/sundials/sundials_hip_policies.hpp
index d759bbc..f6dfe41 100644
--- a/include/sundials/sundials_hip_policies.hpp
+++ b/include/sundials/sundials_hip_policies.hpp
@@ -30,9 +30,9 @@ namespace sundials
namespace hip
{
-#if defined(__HIP_PLATFORM_HCC__)
+#if defined(__HIP_PLATFORM_AMD__)
constexpr const sunindextype WARP_SIZE = 64;
-#elif defined(__HIP_PLATFORM_NVCC__)
+#elif defined(__HIP_PLATFORM_NVIDIA__)
constexpr const sunindextype WARP_SIZE = 32;
#endif
constexpr const sunindextype MAX_BLOCK_SIZE = 1024;
--
2.39.3

View File

@@ -285,6 +285,10 @@ class Sundials(CMakePackage, CudaPackage, ROCmPackage):
# https://github.com/spack/spack/issues/29526
patch("nvector-pic.patch", when="@6.1.0:6.2.0 +rocm")
# Backward compatibility is stopped from ROCm 6.0
# Need to follow the changes similar to PR https://github.com/LLNL/RAJA/pull/1568
patch("Change-HIP_PLATFORM-from-HCC-to-AMD-and-NVCC-to-NVIDIA.patch", when="^hip@6.0.0 +rocm")
# remove OpenMP header file and function from hypre vector test code
patch("test_nvector_parhyp.patch", when="@2.7.0:3.0.0")
patch("FindPackageMultipass.cmake.patch", when="@5.0.0")

View File

@@ -0,0 +1,26 @@
From e7fa7ea37423d3d17d77334ac849c5df00feb20e Mon Sep 17 00:00:00 2001
From: sreenivasa murthy kolam <sreenivasamurthy.kolam@amd.com>
Date: Tue, 16 Jan 2024 10:09:34 +0000
Subject: [PATCH] use the gcnArchName inplace of gcnArch as gcnArch is
deprecated from rocm-6.0.0
---
packages/kokkos/core/src/HIP/Kokkos_HIP_Instance.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/packages/kokkos/core/src/HIP/Kokkos_HIP_Instance.cpp b/packages/kokkos/core/src/HIP/Kokkos_HIP_Instance.cpp
index 7840ad9..882d143 100644
--- a/packages/kokkos/core/src/HIP/Kokkos_HIP_Instance.cpp
+++ b/packages/kokkos/core/src/HIP/Kokkos_HIP_Instance.cpp
@@ -86,7 +86,7 @@ void HIPInternal::print_configuration(std::ostream &s) const {
KOKKOS_IMPL_HIP_SAFE_CALL(hipGetDeviceProperties(&hipProp, i));
s << "Kokkos::HIP[ " << i << " ] "
- << "gcnArch " << hipProp.gcnArch << ", Total Global Memory: "
+ << "gcnArchName " << hipProp.gcnArchName << ", Total Global Memory: "
<< ::Kokkos::Impl::human_memory_size(hipProp.totalGlobalMem)
<< ", Shared Memory per Block: "
<< ::Kokkos::Impl::human_memory_size(hipProp.sharedMemPerBlock);
--
2.39.3

View File

@@ -489,6 +489,11 @@ class Trilinos(CMakePackage, CudaPackage, ROCmPackage):
# workaround an NVCC bug with c++14 (https://github.com/trilinos/Trilinos/issues/6954)
# avoid calling deprecated functions with CUDA-11
patch("fix_cxx14_cuda11.patch", when="@13.0.0:13.0.1 cxxstd=14 ^cuda@11:")
patch(
"0001-use-the-gcnArchName-inplace-of-gcnArch-as-gcnArch-is.patch",
when="@15.0.0 ^hip@6.0.0 +rocm",
)
# Allow building with +teko gotype=long
patch(
"https://github.com/trilinos/Trilinos/commit/b17f20a0b91e0b9fc5b1b0af3c8a34e2a4874f3f.patch?full_index=1",