bump up the version for ROCm-6.4.0 (#50037)

* bump up the version for ROCm-6.4.0
* update rocm-openmp-extras
* fix for rocprofiler-sdk
* fix hipblaslt ci fail
* bump hipsparselt
* set clang to use llvm-amdgpu
* modify rom-smi-lib and update hip-tensor
* miopen-hip: replace patch with commit
* miopen-hip: remove patch
* fix rocdecode libdrm error
* rocjpeg fix libdrm error
* rocm-bandwidth-test and amdsmi: add c dependency
* add explicit roctracer-dev dependency
* fix issue with rocm-openmp-extras using external
* add c dependency to rocm-debug-agent and rocm-dbgapi
* rocm-debug-agent: set clang as compiler
* hip-tensor: add c dependency
* hipsparselt: modify patch
* hipsparselt: fix ROCM_SMI_PATH
* hipsparselt: add c dependency
* rocm-validation-suite: add patch for libdrm
* rdc: remove rocm-smi-lib dependency
* rocmwmma: replace patch
* rocmwmma: remove old patch
* rocwmma: modify patch
* add c dependencies
* add c dependency to rocwmma and rocm-examples
* rocAL: force use of spack python
* rdc: add c dependency
* roctracer-dev: use llvm-amdgpu clang++
* rocm-tensile: add patch
* rocm-cmake: fix standalone test
* rocblas: fix client test error
* roctracer-dev: fix ci fail
* hipblaslt: add patch for client test
* hipfort: add c dependency
* py-tensorflow restrict to rocm 6.3
This commit is contained in:
Afzal Patel 2025-05-21 14:53:30 -04:00 committed by GitHub
parent 7d27e11698
commit 4d563acd1b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
76 changed files with 711 additions and 90 deletions

View File

@ -21,6 +21,7 @@ class Amdsmi(CMakePackage):
libraries = ["libamd_smi"]
license("MIT")
version("6.4.0", sha256="6f0200ba7305171e9dadbfcd41ff00c194b98d2b88e0555c57739ef01c767233")
version("6.3.3", sha256="e23abc65a1cd75764d7da049b91cce2a095b287279efcd4f90b4b9b63b974dd5")
version("6.3.2", sha256="1ed452eedfe51ac6e615d7bfe0bd7a0614f21113874ae3cbea7df72343cc2d13")
version("6.3.1", sha256="a3a5a711052e813b9be9304d5e818351d3797f668ec2a455e61253a73429c355")
@ -38,6 +39,7 @@ class Amdsmi(CMakePackage):
version("5.5.1", sha256="b794c7fd562fd92f2c9f2bbdc2d5dded7486101fcd4598f2e8c3484c9a939281")
version("5.5.0", sha256="dcfbd96e93afcf86b1261464e008e9ef7e521670871a1885e6eaffc7cdc8f555")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
depends_on("cmake@3.11:")

View File

@ -10,6 +10,20 @@
from spack.package import *
_versions = {
"6.4.0": {
"apt": (
"5ec56bc3c227ad37227072bd513c58c9501e1ceefb06692ad4812f337853dca4",
"https://repo.radeon.com/rocm/apt/6.4/pool/main/h/hsa-amd-aqlprofile/hsa-amd-aqlprofile_1.0.0.60400-47~22.04_amd64.deb",
),
"yum": (
"22ed4c6a999ca6823e5e6bf9f4ab560cba68025f354346b1ac2ebb4757239c56",
"https://repo.radeon.com/rocm/rhel8/6.4/main/hsa-amd-aqlprofile-1.0.0.60400-47.el8.x86_64.rpm",
),
"zyp": (
"7a4c9ca0e6ca178c65776f9b1d9d01ca7576eaa555fdcbf49a42def1ce6d6041",
"https://repo.radeon.com/rocm/zyp/6.4/main/hsa-amd-aqlprofile-1.0.0.60400-sles156.47.x86_64.rpm",
),
},
"6.3.3": {
"apt": (
"5fe2b18e75e8c0a66069af8446399796818f7340a9ef5f2b52adaa79ee8e2a37",
@ -307,6 +321,7 @@ class Aqlprofile(Package):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")

View File

@ -31,6 +31,7 @@ def url_for_version(self, version):
license("NCSA")
version("master", branch="amd-stg-open", deprecated=True)
version("6.4.0", sha256="dca1c145a23f05229d5d646241f9d1d3c5dbf1d745b338ae020eabe33beb965c")
version("6.3.3", sha256="4df9aba24e574edf23844c0d2d9dda112811db5c2b08c9428604a21b819eb23d")
version("6.3.2", sha256="1f52e45660ea508d3fe717a9903fe27020cee96de95a3541434838e0193a4827")
version("6.3.1", sha256="e9c2481cccacdea72c1f8d3970956c447cec47e18dfb9712cbbba76a2820552c")
@ -94,6 +95,7 @@ def url_for_version(self, version):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
# llvm libs are linked statically, so this *could* be a build dep
@ -123,6 +125,7 @@ def url_for_version(self, version):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -21,6 +21,7 @@ class ComposableKernel(CMakePackage):
license("MIT")
version("master", branch="develop", deprecated=True)
version("6.4.0", sha256="8dbfea0bdc4950ca60e8d1ea43edf1f515c4a34e47ead951415c49a0669a3baf")
version("6.3.3", sha256="b7102efba044455416a6127af1951019fe8365a653ea7eb0b1d83bb4542c9309")
version("6.3.2", sha256="875237fe493ff040f8f63b827cddf2ff30a8d3aa18864f87d0e35323c7d62a2d")
version("6.3.1", sha256="3e8c8c832ca3f9ceb99ab90f654b93b7db876f08d90eda87a70bc629c854052a")
@ -65,6 +66,7 @@ class ComposableKernel(CMakePackage):
for ver in [
"master",
"6.4.0",
"6.3.3",
"6.3.2",
"6.3.1",

View File

@ -27,6 +27,7 @@ class Hip(CMakePackage):
license("MIT")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="bec899ba67df9aa7056297e5ad104b8e36938b1bab22f1f418f69a8e0043d07f")
version("6.3.3", sha256="aa3a5466304d1dbee0d976b50fccb710dd12e2e1d5534793396447c0ff845e2c")
version("6.3.2", sha256="66a4eba98bd74fc7126ce7cb4d59653b22075fe95a70412fe283dc806ae366e0")
version("6.3.1", sha256="76f862493c4912a06e0e0b8da3917c2ba7481f1e05f2c23ffd5e05f8c44e3037")
@ -123,6 +124,7 @@ class Hip(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
depends_on(f"comgr@{ver}", when=f"@{ver}")
@ -151,6 +153,7 @@ class Hip(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hipify-clang@{ver}", when=f"@{ver}")
@ -173,6 +176,7 @@ class Hip(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
@ -192,10 +196,11 @@ class Hip(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hipcc@{ver}", when=f"@{ver}")
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"rocprofiler-register@{ver}", when=f"@{ver}")
# roc-obj-ls requirements
@ -257,6 +262,7 @@ class Hip(CMakePackage):
)
# Add hip-clr sources thru the below
for d_version, d_shasum in [
("6.4.0", "76fd0ad83da0dabf7c91ca4cff6c51f2be8ab259e08ad9743af47d1b3473c2ff"),
("6.3.3", "8e5adca8f8c2d99d4a4e49605dd6b56b7881b762ee8ce15b4a7000e3cd982fec"),
("6.3.2", "ec13dc4ffe212beee22171cb2825d2b16cdce103c835adddb482b9238cf4f050"),
("6.3.1", "bfb8a4a59e7bd958e2cd4bf6f14c6cdea601d9827ebf6dc7af053a90e963770f"),
@ -317,6 +323,7 @@ class Hip(CMakePackage):
)
# Add hipother sources thru the below
for d_version, d_shasum in [
("6.4.0", "53d5654d34e00f4bfa0846b291fe87ef6d43087349917159e663a842ea29a783"),
("6.3.3", "95cb2aab4bd996f0bd5f38427412cd768692a11fad70b97d20e402f32b1ef03e"),
("6.3.2", "1623d823de49471aae3ecb1fad0e9cdddf9301a4089f1fd44f78ac2ff0c20fb2"),
("6.3.1", "caa69147227bf72fa7b076867f84579456ef55af63efec29914265a80602df42"),
@ -676,4 +683,6 @@ def cmake_args(self):
args.append(self.define("HIPCC_BIN_DIR", self.stage.source_path + "/hipcc/bin"))
if self.spec.satisfies("@6.0:"):
args.append(self.define("HIPCC_BIN_DIR", self.spec["hipcc"].prefix.bin))
if self.spec.satisfies("@6.4.0:"):
args.append(self.define("clang", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang"))
return args

View File

@ -19,6 +19,7 @@ class HipTensor(CMakePackage, ROCmPackage):
maintainers("srekolam", "afzpatel")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="cc2a738defa72cd2b39f4d358c7967dc93b490160b6eb74f893c4626ad334310")
version("6.3.3", sha256="2f4e34c5a96004e24fcdf70f9157f1079ab177a78f6dbf96ea8290f668257c23")
version("6.3.2", sha256="094db6d759eb32e9d15c36fce7f5b5d46ba81416953a8d9435b2fb9c161d8c83")
version("6.3.1", sha256="142401331526e6da3fa172cce283f1c053056cb59cf431264443da76cee2f168")
@ -36,6 +37,7 @@ class HipTensor(CMakePackage, ROCmPackage):
variant("asan", default=False, description="Build with address-sanitizer enabled or disabled")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
for ver in [
@ -53,6 +55,7 @@ class HipTensor(CMakePackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"composable-kernel@{ver}", when=f"@{ver}")
@ -69,6 +72,7 @@ class HipTensor(CMakePackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hipcc@{ver}", when=f"@{ver}")

View File

@ -20,6 +20,8 @@ class HipTests(CMakePackage):
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="bf609b7b4c7a567ed265d3cb305510321a47c5f311a80ae8d1beed1f4891c070")
version("6.3.3", sha256="7c8ccc78bdc7d684f2bc55ef1affa64e7ddad4b2bf28f12a5aede079002b8a12")
version("6.3.2", sha256="5af72efd608962df5a73c8b66b479954dc432fe01828b671a91bce0451ac688b")
version("6.3.1", sha256="0fc1cf4f46f2bbef377d65803d86c2489b01b598c468070c79c5114a661f07c6")
version("6.3.0", sha256="8081d4ab1a43ffa1cebd646668d83008b799ab98c14daf7b455922355a439c8a")
@ -34,7 +36,19 @@ class HipTests(CMakePackage):
depends_on("cxx", type="build") # generated
depends_on("cmake", type="run")
for ver in ["6.1.0", "6.1.1", "6.1.2", "6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2"]:
for ver in [
"6.1.0",
"6.1.1",
"6.1.2",
"6.2.0",
"6.2.1",
"6.2.4",
"6.3.0",
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -27,6 +27,7 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
version("develop", branch="develop", deprecated=True)
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="544a302bdc494af02147dc14c75d088031927e1c3a2f7a349d817497000b1c34")
version("6.3.3", sha256="8f645a5c9298170e71354437188eeca8272ff2b98077e9f34d1ca0fd7f27b7f8")
version("6.3.2", sha256="6e86d4f8657e13665e37fdf3174c3a30f4c7dff2c4e2431d1be110cd7d463971")
version("6.3.1", sha256="77a1845254d738c43a48bc52fa3e94499ed83535b5771408ff476122bc4b7b7c")
@ -99,6 +100,7 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-cmake@{ver}", when=f"+rocm @{ver}")
depends_on(f"rocm-openmp-extras@{ver}", type="test", when=f"+rocm @{ver}")
@ -128,6 +130,7 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
"develop",
]:
@ -136,7 +139,7 @@ class Hipblas(CMakePackage, CudaPackage, ROCmPackage):
for tgt in ROCmPackage.amdgpu_targets:
depends_on(f"rocblas amdgpu_target={tgt}", when=f"+rocm amdgpu_target={tgt}")
depends_on(f"rocsolver amdgpu_target={tgt}", when=f"+rocm amdgpu_target={tgt}")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"hipblas-common@{ver}", when=f"@{ver}")
@classmethod

View File

@ -17,6 +17,7 @@ class HipblasCommon(CMakePackage):
license("MIT")
version("6.4.0", sha256="8953bcf13ba1aa03cb29481bd90eaef373bf0e41cadff68e567ecd2ec0b07363")
version("6.3.3", sha256="b2b77abb5c851674839b583dc313684b5f6aa676e8186ff0a5696b6962c2b4da")
version("6.3.2", sha256="29aa1ac1a0f684a09fe2ea8a34ae8af3622c27708c7df403a7481e75174e1984")
version("6.3.1", sha256="512e652483b5580713eca14db3fa633d0441cd7c02cdb0d26e631ea605b9231b")

View File

@ -0,0 +1,51 @@
diff --git a/library/CMakeLists.txt b/library/CMakeLists.txt
index 24e25ab..1907108 100644
--- a/library/CMakeLists.txt
+++ b/library/CMakeLists.txt
@@ -72,6 +72,7 @@ include(src/CMakeLists.txt)
# Create hipBLASLt library
add_library(hipblaslt ${hipblaslt_source} ${hipblaslt_headers_public})
add_library(roc::hipblaslt ALIAS hipblaslt)
+target_include_directories( hipblaslt PRIVATE ${MSGPACK_DIR}/include )
# Target compile definitions
if(NOT BUILD_CUDA)
@@ -159,7 +160,9 @@ if(NOT BUILD_CUDA)
endif()
if(HIPBLASLT_ENABLE_MARKER)
- target_link_libraries(hipblaslt PRIVATE -lroctx64)
+ find_path(ROCTRACER_INCLUDE_DIR "roctracer/roctx.h")
+ target_include_directories(hipblaslt PRIVATE ${ROCTRACER_INCLUDE_DIR})
+ target_link_libraries(hipblaslt PRIVATE ${rocTracer})
endif()
if( NOT BUILD_CUDA AND NOT LEGACY_HIPBLAS_DIRECT )
diff --git a/tensilelite/Tensile/Source/client/CMakeLists.txt b/tensilelite/Tensile/Source/client/CMakeLists.txt
index 8dc7401..e6d0ba9 100644
--- a/tensilelite/Tensile/Source/client/CMakeLists.txt
+++ b/tensilelite/Tensile/Source/client/CMakeLists.txt
@@ -64,7 +64,9 @@ target_include_directories(TensileClient PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/inc
target_link_libraries(TensileClient PRIVATE TensileHost Boost::program_options Boost::filesystem rocm_smi)
if(Tensile_ENABLE_MARKER)
- target_link_libraries(TensileClient PRIVATE -lroctx64)
+ find_path(ROCTRACER_INCLUDE_DIR "roctracer/roctx.h")
+ target_include_directories(TensileClient PRIVATE ${ROCTRACER_INCLUDE_DIR})
+ target_link_libraries(TensileClient PRIVATE ${rocTracer})
endif()
if(TENSILE_USE_OPENMP)
diff --git a/tensilelite/Tensile/cmake/TensileConfig.cmake b/tensilelite/Tensile/cmake/TensileConfig.cmake
index 7627780..ac3560a 100644
--- a/tensilelite/Tensile/cmake/TensileConfig.cmake
+++ b/tensilelite/Tensile/cmake/TensileConfig.cmake
@@ -234,6 +234,8 @@ function(TensileCreateLibraryFiles
set(Options ${Options} "--build-id=${Tensile_BUILD_ID}")
endif()
+ set(Options ${Options} "--offload-bundler=$ENV{TENSILE_ROCM_OFFLOAD_BUNDLER_PATH}")
+
set(CommandLine ${VIRTUALENV_BIN_DIR}/${VIRTUALENV_PYTHON_EXENAME} ${Script} ${Options} ${Tensile_LOGIC_PATH} ${Tensile_OUTPUT_PATH} HIP)
message(STATUS "Tensile_CREATE_COMMAND: ${CommandLine}")

View File

@ -0,0 +1,15 @@
diff --git a/clients/CMakeLists.txt b/clients/CMakeLists.txt
index 02ae47d..6b66209 100755
--- a/clients/CMakeLists.txt
+++ b/clients/CMakeLists.txt
@@ -97,8 +97,8 @@ if( BUILD_CLIENTS_BENCHMARKS OR BUILD_CLIENTS_TESTS)
# Find the package ROCmSMI
if(NOT WIN32)
- find_package(ROCmSMI REQUIRED)
- list( APPEND COMMON_LINK_LIBS rocm_smi )
+ find_package(rocm_smi CONFIG REQUIRED)
+ list( APPEND COMMON_LINK_LIBS rocm_smi64 )
endif()
# common source files used in subdirectories benchmarks and gtest thus ../common

View File

@ -19,6 +19,7 @@ class Hipblaslt(CMakePackage):
maintainers("srekolam", "afzpatel", "renjithravindrankannath")
license("MIT")
version("6.4.0", sha256="a4baa0c7336db9d46a0884c8ccfd0fb7e00a502b478aed9f588aa26fa8773353")
version("6.3.3", sha256="f32d666b37bdbecbf924cc98653fa3d30a0de629039d4dad44d35a2082e39e5a")
version("6.3.2", sha256="cc4875b1a5cf1708a7576c42aff6b4cb790cb7337f5dc2df33119a4aadcef027")
version("6.3.1", sha256="9a18a2e44264a21cfe58ed102fd3e34b336f23d6c191ca2da726e8e0883ed663")
@ -45,6 +46,8 @@ class Hipblaslt(CMakePackage):
depends_on("c", type="build")
depends_on("cxx", type="build")
depends_on("cmake@3.25.2:", type="build", when="@6.2.0:")
depends_on("python@3.7:")
depends_on("python@3.8:", when="@6.4:")
for ver in [
"6.0.0",
@ -59,6 +62,7 @@ class Hipblaslt(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"llvm-amdgpu@{ver}", when=f"@{ver}")
@ -67,15 +71,19 @@ class Hipblaslt(CMakePackage):
for ver in ["6.0.0", "6.0.2", "6.1.0", "6.1.1", "6.1.2", "6.2.0", "6.2.1", "6.2.4"]:
depends_on(f"hipblas@{ver}", when=f"@{ver}")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"hipblas-common@{ver}", when=f"@{ver}")
depends_on(f"rocm-smi-lib@{ver}", when=f"@{ver}")
for ver in ["6.4.0"]:
depends_on(f"roctracer-dev@{ver}", when=f"@{ver}")
depends_on("msgpack-c")
depends_on("py-joblib", type=("build", "link"))
depends_on("googletest@1.10.0:", type="test")
depends_on("netlib-lapack@3.7.1:", type="test")
depends_on("py-pyyaml", type="test")
depends_on("python-venv", when="@6.4:")
# Sets the proper for clang++ and clang-offload-blunder.
# Also adds hipblas and msgpack include directories
@ -83,7 +91,9 @@ class Hipblaslt(CMakePackage):
# Below patch sets the proper path for clang++ and clang-offload-blunder.
# Also adds hipblas and msgpack include directories for 6.1.0 release.
patch("0001-Set-LLVM_Path-Add-Hiblas-Include-to-CmakeLists-6.1.Patch", when="@6.1:6.2")
patch("0001-Set-LLVM-Path-6.3.Patch", when="@6.3:")
patch("0001-Set-LLVM-Path-6.3.Patch", when="@6.3")
patch("002-link-roctracer.patch", when="@6.4")
patch("003-use-rocm-smi-config.patch", when="@6.4")
def setup_build_environment(self, env: EnvironmentModifications) -> None:
env.set("CXX", self.spec["hip"].hipcc)
@ -115,6 +125,13 @@ def patch(self):
"library/src/amd_detail/rocblaslt/src/kernels/compile_code_object.sh",
string=True,
)
if self.spec.satisfies("@6.3:"):
filter_file(
"${rocm_path}/bin/amdclang++",
f'{self.spec["llvm-amdgpu"].prefix}/bin/amdclang++',
"tensilelite/Tensile/Ops/gen_assembly.sh",
string=True,
)
def cmake_args(self):
args = [
@ -129,4 +146,6 @@ def cmake_args(self):
args.append(
self.define("ROCM_OPENMP_EXTRAS_DIR", self.spec["rocm-openmp-extras"].prefix)
)
if self.spec.satisfies("@6.4:"):
args.append(self.define("Python_ROOT", self.spec["python"].prefix.bin))
return args

View File

@ -25,6 +25,7 @@ def url_for_version(self, version):
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
license("MIT")
version("6.4.0", sha256="dca1c145a23f05229d5d646241f9d1d3c5dbf1d745b338ae020eabe33beb965c")
version("6.3.3", sha256="4df9aba24e574edf23844c0d2d9dda112811db5c2b08c9428604a21b819eb23d")
version("6.3.2", sha256="1f52e45660ea508d3fe717a9903fe27020cee96de95a3541434838e0193a4827")
version("6.3.1", sha256="e9c2481cccacdea72c1f8d3970956c447cec47e18dfb9712cbbba76a2820552c")

View File

@ -20,6 +20,7 @@ class Hipcub(CMakePackage, CudaPackage, ROCmPackage):
license("BSD-3-Clause")
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="2c044ed9bf53b9410ef6de4ca578384569b0a89cac4e8604dfdde390b2918481")
version("6.3.3", sha256="4ce22aba007c6c8a8b2231adefa7785b1869e5fdd4af29b0371a499a523c2dc6")
version("6.3.2", sha256="4a1443c2ea12c3aa05fb65703eb309ccf8b893f9e6cbebec4ccf5502ba54b940")
version("6.3.1", sha256="e5d100c7b8f95fe6243ad9f22170c136aa34db4e588136bec54ede7cb2e7f12f")
@ -91,6 +92,7 @@ class Hipcub(CMakePackage, CudaPackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocprim@{ver}", when=f"+rocm @{ver}")
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")

View File

@ -27,6 +27,7 @@ class Hipfft(CMakePackage, CudaPackage, ROCmPackage):
license("MIT")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="f16859ba3823f8b29f2aac120cef3395109babf93a0a5069c3b4c7c67ef35e96")
version("6.3.3", sha256="c032d59a45b0eb4441539498bd4c22d8442fbc554cb08d6cb452a1d27be6c57c")
version("6.3.2", sha256="5d9e662c7d67f4c814cad70476b57651df5ae6b65f371ca6dbb5aa51d9eeb6f5")
version("6.3.1", sha256="b709df2d0115748ed004d0cddce829cb0f9ec3761eb855e61f0097cab04e4806")
@ -98,6 +99,7 @@ class Hipfft(CMakePackage, CudaPackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")

View File

@ -18,6 +18,7 @@ class Hipfort(CMakePackage):
license("MIT")
maintainers("cgmb", "srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="a2e4c10f1c6561789208ba5a41a00b562c8048ec503339cb4eed236ee3cf6131")
version("6.3.3", sha256="dacb7d5a30689e6a8f81ec251daaa4a74b40f1d28145953c7d42ccd29cecee7c")
version("6.3.2", sha256="d2438971199637eb2e09519c1f2300cdd7a84b4d948034a7cd1ce3e441faf5de")
version("6.3.1", sha256="8141bf3d05ab4f91c561815134707123e3d06486bf775224b9a3a4cc8ee8f56f")
@ -42,6 +43,7 @@ class Hipfort(CMakePackage):
version("5.3.3", sha256="593be86502578b68215ffe767c26849fd27d4dbd92c8e76762275805f99e64f5")
version("5.3.0", sha256="9e2aa142de45b2d2c29449d6f82293fb62844d511fbf51fa597845ba05c700fa")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
depends_on("fortran", type="build") # generated
@ -74,6 +76,7 @@ class Hipfort(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", type="build", when=f"@{ver}")

View File

@ -21,6 +21,7 @@ class HipifyClang(CMakePackage):
license("MIT")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="874e3ee9801f795aaae30d6ea86e5edc991d5f71a5dee0a8e8eb7ce6379a51eb")
version("6.3.3", sha256="94d32b0e02c0c34debb9a8034cb5fcd6c2ee35b67350c64690034cf94cd38ddd")
version("6.3.2", sha256="c0da5118be8207fab6d19803417c0b8d2db5bc766279038527cbd6fa92b25c67")
version("6.3.1", sha256="5f9d9a65545f97b18c6a0d4394dca1bcdee10737a5635b79378ea505081f9315")
@ -82,6 +83,7 @@ class HipifyClang(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"llvm-amdgpu@{ver}", when=f"@{ver}")
@ -105,6 +107,7 @@ class HipifyClang(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -27,6 +27,7 @@ class Hiprand(CMakePackage, CudaPackage, ROCmPackage):
version("develop", branch="develop", deprecated=True)
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="60e9153edf617e984361696aa60af3ad44c5ae01ed75ad610c617a387b0559a4")
version("6.3.3", sha256="ea0d7638a463c06d30692205f8c591d3fe025b58a772226ca1c972e723118a2f")
version("6.3.2", sha256="0a08ed7554c161b095c866cd5e6f0d63cdf063e5b3c1183afa6ac18bad94a575")
version("6.3.1", sha256="ec43bf64eda348cf53c2767e553fd9561540dc50ae3ce95ca916404aa9a3eafb")
@ -110,6 +111,7 @@ class Hiprand(CMakePackage, CudaPackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
"develop",
]:

View File

@ -32,6 +32,7 @@ class Hipsolver(CMakePackage, CudaPackage, ROCmPackage):
version("develop", branch="develop", deprecated=True)
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="d6cf798c5f2d1d00a442f7a3f07c6f3a9e4ce5b3be36608aac7c97175dac9eb0")
version("6.3.3", sha256="529263f9abe5b7485bbabedc3993630abaa0d5fd547c4add0993d1cb0d71e226")
version("6.3.2", sha256="885c999da8e4aa0b4cb9584bc0fc0d6a8c8d56f5e7ee6d211c608003eff22aa7")
version("6.3.1", sha256="793074ebaa4a3b16dc6e4d2a54ecbb259f1e0ec7fdcd7f885da622a1d1478b76")
@ -116,6 +117,7 @@ class Hipsolver(CMakePackage, CudaPackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
"develop",
]:

View File

@ -24,6 +24,7 @@ class Hipsparse(CMakePackage, CudaPackage, ROCmPackage):
libraries = ["libhipsparse"]
license("MIT")
version("6.4.0", sha256="aaab3e9a905f5c5f470634ed7a0929ef93e28d2c5fe4f6f89338b39a937f1825")
version("6.3.3", sha256="61c26eb93e857c942a03ea4350a403e20191be465041e542ad7da00058e89ead")
version("6.3.2", sha256="9fbc3468632fdc828d7bae386c2737eb371d78811f53da7348b417fb00d62808")
version("6.3.1", sha256="d64bc48e0aa5ec2f48853272a9c554b37ec98cb0724135e45f21b1340df7bccb")
@ -66,6 +67,7 @@ class Hipsparse(CMakePackage, CudaPackage, ROCmPackage):
conflicts("+cuda +rocm", msg="CUDA and ROCm support are mutually exclusive")
conflicts("~cuda ~rocm", msg="CUDA or ROCm support is required")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
depends_on("fortran", type="build") # generated
@ -98,6 +100,7 @@ class Hipsparse(CMakePackage, CudaPackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")
depends_on(f"rocsparse@{ver}", when=f"+rocm @{ver}")

View File

@ -0,0 +1,25 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5904f78..a0b0c92 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -204,7 +204,7 @@ else()
set( tensile_fork "ROCmSoftwarePlatform" CACHE STRING "Tensile fork to use" )
file (STRINGS "tensilelite_tag.txt" read_tensile_tag)
set( tensile_tag ${read_tensile_tag} CACHE STRING "Tensile tag to download" )
- virtualenv_install("git+https://github.com/${tensile_fork}/hipBLASLt.git@${tensile_tag}#subdirectory=tensilelite")
+ virtualenv_install("git+https://github.com/ROCm/hipBLASLt.git@modify-tensilelite-spack-6.4#subdirectory=tensilelite")
message (STATUS "using GIT Tensile fork=${tensile_fork} from branch=${tensile_tag}")
endif()
diff --git a/library/CMakeLists.txt b/library/CMakeLists.txt
index aac8506..345147f 100644
--- a/library/CMakeLists.txt
+++ b/library/CMakeLists.txt
@@ -123,6 +123,7 @@ target_include_directories(hipsparselt
PUBLIC $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/library/include>
$<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/include>
$<BUILD_INTERFACE:${HIP_INCLUDE_DIRS}>
+ $<BUILD_INTERFACE:${HIPSPARSE_INCLUDE_DIRS}>
$<INSTALL_INTERFACE:include>
)

View File

@ -23,6 +23,7 @@ class Hipsparselt(CMakePackage, ROCmPackage):
maintainers("srekolam", "afzpatel", "renjithravindrankannath")
license("MIT")
version("6.4.0", sha256="3950f424c5623bdf764e23c263f3a63de62e3690f491251b88054e27560dc604")
version("6.3.3", sha256="6b756e20fddb37b8c1237ef8e124452c9bdd46acad8a40699d10b609d0d2ebfc")
version("6.3.2", sha256="a0b30b478eff822dd7fa1c116ad99dcdf14ece1c33aae04ac71b594efd4d9866")
version("6.3.1", sha256="403d4c0ef47f89510452a20be6cce72962f21761081fc19a7e0e27e7f0c4ccfd")
@ -50,6 +51,7 @@ class Hipsparselt(CMakePackage, ROCmPackage):
)
variant("asan", default=False, description="Build with address-sanitizer enabled or disabled")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
for ver in [
@ -65,13 +67,14 @@ class Hipsparselt(CMakePackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"hipsparse@{ver}", when=f"@{ver}")
depends_on(f"rocm-openmp-extras@{ver}", when=f"@{ver}", type="test")
depends_on(f"llvm-amdgpu@{ver}", when=f"@{ver}")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"rocm-smi-lib@{ver}", when=f"@{ver}")
depends_on("cmake@3.5:", type="build")
@ -92,6 +95,7 @@ class Hipsparselt(CMakePackage, ROCmPackage):
patch("0001-update-llvm-path-add-hipsparse-include-dir-for-spack-6.1.patch", when="@6.1")
patch("0001-update-llvm-path-add-hipsparse-include-dir-for-spack-6.2.patch", when="@6.2")
patch("0001-update-llvm-path-add-hipsparse-include-dir-for-spack-6.3.patch", when="@6.3")
patch("0002-add-hipsparse-include.patch", when="@6.4")
def setup_build_environment(self, env: EnvironmentModifications) -> None:
env.set("CXX", self.spec["hip"].hipcc)
@ -106,7 +110,8 @@ def setup_build_environment(self, env: EnvironmentModifications) -> None:
"ROCM_AGENT_ENUMERATOR_PATH",
f"{self.spec['rocminfo'].prefix}/bin/rocm_agent_enumerator",
)
env.set("ROCM_SMI_PATH", f"{self.spec['rocm-smi-lib'].prefix}/bin/rocm-smi")
if self.spec.satisfies("@6.3:"):
env.set("ROCM_SMI_PATH", f"{self.spec['rocm-smi-lib'].prefix}/bin/rocm-smi")
def cmake_args(self):
args = [

View File

@ -25,6 +25,7 @@ class HsaRocrDev(CMakePackage):
libraries = ["libhsa-runtime64"]
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="ff740e8c8f2229c6dc47577363f707b1a44ea4254f8ad74f8f0a669998829535")
version("6.3.3", sha256="aa2e30d3d68707d6df4840e954bb08cc13cd312cec1a98a64d97adbe07262f50")
version("6.3.2", sha256="aaecaa7206b6fa1d5d7b8f7c1f7c5057a944327ba4779448980d7e7c7122b074")
version("6.3.1", sha256="547ceeeda9a41cdffa21e57809dc5834f94938a0a2809c283aebcbcf01901df0")
@ -112,6 +113,7 @@ class HsaRocrDev(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"llvm-amdgpu@{ver}", when=f"@{ver}")
@ -137,9 +139,13 @@ class HsaRocrDev(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"rocprofiler-register@{ver}", when=f"@{ver}")
patch("0002-Remove-explicit-RPATH-again.patch", when="@3.7.0:5.6")
@property
@ -206,5 +212,7 @@ def cmake_args(self):
args.append(self.define("ROCM_PATCH_VERSION", "60300"))
if self.spec.satisfies("@5.7.0:"):
args.append(self.define_from_variant("ADDRESS_SANITIZER", "asan"))
if self.spec.satisfies("@6.3.2:"):
args.append(self.define("SHARED_LIBS", "ON"))
args.append(self.define("BUILD_SHARED_LIBS", "ON"))
return args

View File

@ -38,6 +38,7 @@ class LlvmAmdgpu(CMakePackage, LlvmDetection, CompilerPackage):
license("Apache-2.0")
version("master", branch="amd-stg-open", deprecated=True)
version("6.4.0", sha256="dca1c145a23f05229d5d646241f9d1d3c5dbf1d745b338ae020eabe33beb965c")
version("6.3.3", sha256="4df9aba24e574edf23844c0d2d9dda112811db5c2b08c9428604a21b819eb23d")
version("6.3.2", sha256="1f52e45660ea508d3fe717a9903fe27020cee96de95a3541434838e0193a4827")
version("6.3.1", sha256="e9c2481cccacdea72c1f8d3970956c447cec47e18dfb9712cbbba76a2820552c")
@ -88,7 +89,8 @@ class LlvmAmdgpu(CMakePackage, LlvmDetection, CompilerPackage):
provides("libllvm@15", when="@5.3:5.4")
provides("libllvm@16", when="@5.5:5.6")
provides("libllvm@17", when="@5.7:6.1")
provides("libllvm@18", when="@6.2:")
provides("libllvm@18", when="@6.2:6.3")
provides("libllvm@19", when="@6.4:")
depends_on("c", type="build") # generated
depends_on("cxx", type="build") # generated
@ -179,6 +181,7 @@ class LlvmAmdgpu(CMakePackage, LlvmDetection, CompilerPackage):
when="@master +rocm-device-libs",
)
for d_version, d_shasum in [
("6.4.0", "ff740e8c8f2229c6dc47577363f707b1a44ea4254f8ad74f8f0a669998829535"),
("6.3.3", "aa2e30d3d68707d6df4840e954bb08cc13cd312cec1a98a64d97adbe07262f50"),
("6.3.2", "aaecaa7206b6fa1d5d7b8f7c1f7c5057a944327ba4779448980d7e7c7122b074"),
("6.3.1", "547ceeeda9a41cdffa21e57809dc5834f94938a0a2809c283aebcbcf01901df0"),
@ -288,7 +291,7 @@ def cmake_args(self):
args.append(self.define("CLANG_LINK_CLANG_DYLIB", True))
# Get the GCC prefix for LLVM.
if self.compiler.name == "gcc":
if self.compiler.name == "gcc" and self.spec.satisfies("@:6.3"):
args.append(self.define("GCC_INSTALL_PREFIX", self.compiler.prefix))
if self.spec.satisfies("@5.4.3:"):
args.append("-DCMAKE_INSTALL_LIBDIR=lib")

View File

@ -21,6 +21,7 @@ class Migraphx(CMakePackage):
libraries = ["libmigraphx"]
license("MIT")
version("6.4.0", sha256="9041ea3c0ea0a22884e049f2a12559b6221eac897d31b3ebe0cf3e7a5b7d0268")
version("6.3.3", sha256="a268baa99b145a32fe282e407cf923b1c1022f2ddab36d7178537b860fdfcf8d")
version("6.3.2", sha256="4e6b9800919e99070c0289616657592c23ff66a55230409f38e5c7e099c0d89b")
version("6.3.1", sha256="c60df20b3c890c469265ae6f273fb5d43cc13c8c514f76dd7b4d195d9e44ba85")
@ -111,6 +112,7 @@ class Migraphx(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")
depends_on(f"hip@{ver}", when=f"@{ver}")
@ -130,6 +132,7 @@ class Migraphx(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocmlir@{ver}", when=f"@{ver}")

View File

@ -1,45 +0,0 @@
diff --git a/driver/CMakeLists.txt b/driver/CMakeLists.txt
index 60d6fe6..bba3ad6 100644
--- a/driver/CMakeLists.txt
+++ b/driver/CMakeLists.txt
@@ -71,7 +71,11 @@ if(WIN32)
endif()
add_dependencies(MIOpenDriver generate_kernels)
target_include_directories(MIOpenDriver PRIVATE ../src/kernels)
-target_link_libraries(MIOpenDriver MIOpen Threads::Threads roc::rocrand)
+target_link_libraries(MIOpenDriver MIOpen Threads::Threads roc::rocrand roc::hipblas roc::hipblaslt)
+if(MIOPEN_USE_ROCTRACER)
+ target_include_directories(MIOpenDriver PRIVATE ${ROCTRACER_INCLUDE_DIR})
+ target_link_libraries(MIOpenDriver ${rocTracer})
+endif()
if(NOT MIOPEN_EMBED_DB STREQUAL "")
target_link_libraries(MIOpenDriver $<BUILD_INTERFACE:miopen_data> )
endif()
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 92e4f42..7e169a1 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -940,6 +940,13 @@ if(hipblaslt_FOUND)
target_link_libraries( MIOpen PRIVATE roc::hipblaslt )
endif()
+if(hipblas_FOUND)
+ target_link_libraries( MIOpen PRIVATE roc::hipblas )
+endif()
+if(rocrand_FOUND)
+ target_link_libraries( MIOpen PRIVATE roc::rocrand )
+endif()
+
# For backward compatibility with ROCm 5.3
# Build with library libMLIRMIOpen
if(LIBMLIRMIOPEN)
@@ -994,7 +1001,8 @@ if(NOT WIN32 AND NOT APPLE)
endif()
if(MIOPEN_USE_ROCTRACER)
- target_link_libraries(MIOpen PRIVATE roctx64)
+ target_include_directories(MIOpen PRIVATE ${ROCTRACER_INCLUDE_DIR})
+ target_link_libraries(MIOpen PRIVATE ${rocTracer})
endif()
############################################################

View File

@ -23,6 +23,7 @@ class MiopenHip(CMakePackage):
libraries = ["libMIOpen"]
license("MIT")
version("6.4.0", sha256="5b101f9177d49654968a3f3c01c9eede561a8fe5178f2ae4d8e5acb16b0b17e6")
version("6.3.3", sha256="755beaec2e97aa4fafcdb07e4becbcddcb0c3cef6af256a04716d46e90c2f520")
version("6.3.2", sha256="7abda3b437e396a1611a6f63e73ab1656d45d5405194504136c0ccbb75b81fea")
version("6.3.1", sha256="edb82a74086fb96f8d7ee9e50a180302f716332cd0dff96bf7244bdc6fab5895")
@ -78,12 +79,16 @@ class MiopenHip(CMakePackage):
patch("0002-add-include-dir-miopen-hip-6.0.0.patch", when="@6.0")
patch("0001-link-with-roctracer-when-building-miopendriver-6.1.0.patch", when="@6.1")
patch("0001-link-with-roctracer-when-building-miopendriver-6.2.0.patch", when="@6.2")
patch("0003-link-with-hipblas-roctracer-rocrand-6.3.0.patch", when="@6.3")
patch(
"https://github.com/ROCm/MIOpen/commit/f60aa1ff89f8fb596b4a6a4c70aa7d557803db87.patch?full_index=1",
sha256="7f382c872d89f22da1ad499e85ffe9881cc7404c8465e42877a210a09382e2ea",
when="@5.7",
)
patch(
"https://github.com/ROCm/MIOpen/commit/d1a25ad0f4fc90dffea7a5dbb9cc7a9983a004c2.patch?full_index=1",
sha256="3001a90202b572a5cd86a51905064903bcee74d8fa0d9649ee9732274c207801",
when="@6.3:",
)
for ver in [
"5.3.0",
@ -108,6 +113,7 @@ class MiopenHip(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")
depends_on(f"hip@{ver}", when=f"@{ver}")
@ -153,6 +159,7 @@ class MiopenHip(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"composable-kernel@{ver}", when=f"@{ver} +ck")
for ver in ["5.4.0", "5.4.3", "5.5.0"]:
@ -170,11 +177,12 @@ class MiopenHip(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"roctracer-dev@{ver}", when=f"@{ver}")
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"rocrand@{ver}", when=f"@{ver}")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"hipblas@{ver}", when=f"@{ver}")
depends_on(f"hipblaslt@{ver}", when=f"@{ver}")

View File

@ -12,9 +12,9 @@ class Mivisionx(CMakePackage):
vision and machine intelligence libraries, utilities, and
applications bundled into a single toolkit."""
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-6.1.2.tar.gz"
homepage = "https://github.com/ROCm/MIVisionX"
git = "https://github.com/ROCm/MIVisionX.git"
url = "https://github.com/ROCm/MIVisionX/archive/rocm-6.4.0.tar.gz"
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
tags = ["rocm"]
@ -27,6 +27,7 @@ def url_for_version(self, version):
return url.format(version)
license("MIT")
version("6.4.0", sha256="de3902ad2402bf29e4f53617ec10d34188b0c67547fc290390ff0c8ac4ad505a")
version("6.3.3", sha256="6ab255305b786c6152ffe12211f329d2bc56823bb2192a945b9aa5efe6731b82")
version("6.3.2", sha256="2e7984e4ef2e6195aa9afa11030b8418aee885bec9befa220b9b53b5229b7fae")
version("6.3.1", sha256="1f7bd1f6b61401bc642b50e96411344b092b09189534c5d6ba2f4c661d1af0ce")
@ -244,6 +245,7 @@ def patch(self):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"miopen-hip@{ver}", when=f"@{ver}")
for ver in [
@ -268,6 +270,7 @@ def patch(self):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"migraphx@{ver}", when=f"@{ver}")
depends_on(f"hip@{ver}", when=f"@{ver}")
@ -291,6 +294,7 @@ def patch(self):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
depends_on("python@3.5:", type="build")
@ -310,6 +314,7 @@ def patch(self):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rpp@{ver}", when=f"@{ver}")

View File

@ -408,6 +408,7 @@ class PyTensorflow(Package, CudaPackage, ROCmPackage, PythonExtension):
with when("+rocm"):
for pkg_dep in rocm_dependencies:
depends_on(f"{pkg_dep}@6.0:", when="@2.14:")
depends_on(f"{pkg_dep}@:6.3", when="@:2.18")
depends_on(pkg_dep)
# Check configure and configure.py to see when these variants are supported

View File

@ -0,0 +1,44 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 45ba954f..4fbf5116 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -173,7 +173,7 @@ message(STATUS "${COMPILER_EXE_NAME} HIP version: ${hip_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})
@@ -324,6 +324,7 @@ endif()
# Check for ROCTX
if(ROCTX)
find_library(ROCTX_LIB NAMES roctx64)
+ find_path(ROCTRACER_INCLUDE_DIR "roctracer/roctx.h")
if(ROCTX_LIB)
set(ROCTX_ENABLE ON)
message(STATUS "ROCTX library found: ${ROCTX_LIB}")
@@ -687,9 +688,13 @@ target_include_directories(rccl PRIVATE ${HIPIFY_DIR}/src/device/network/unpack)
target_include_directories(rccl PRIVATE ${HIPIFY_DIR}/gensrc)
target_include_directories(rccl PRIVATE ${HSA_INCLUDE_PATH})
target_include_directories(rccl PRIVATE ${ROCM_SMI_INCLUDE_DIR})
+target_include_directories(rccl PRIVATE $ENV{ROCMCORE_PATH}/include)
if(DEMANGLE_DIR)
target_include_directories(rccl PRIVATE ${DEMANGLE_DIR})
endif()
+if(ROCTX_ENABLE)
+ target_include_directories(rccl PRIVATE ${ROCTRACER_INCLUDE_DIR})
+endif()
## Set RCCL compile definitions
if(COLLTRACE)
@@ -816,7 +821,7 @@ if (HAVE_BFD)
endif()
endif()
if (ROCTX_ENABLE)
- target_link_libraries(rccl PRIVATE -lroctx64)
+ target_link_libraries(rccl PRIVATE ${ROCTX_LIB})
endif()
target_link_libraries(rccl PRIVATE -fgpu-rdc) # Required when linking relocatable device code
target_link_libraries(rccl PRIVATE Threads::Threads)

View File

@ -23,6 +23,12 @@ class Rccl(CMakePackage):
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
libraries = ["librccl"]
version(
"6.4.0",
tag="rocm-6.4.0",
commit="7b86f83d8468a577ed59d9b2a34a8d7639d36072",
submodules=True,
)
version(
"6.3.3",
tag="rocm-6.3.3",
@ -80,6 +86,7 @@ class Rccl(CMakePackage):
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:6.2")
patch("0004-Set-rocm-core-path-for-version-file-6.3.patch", when="@6.3")
patch("0004-Set-rocm-core-path-for-version-file-6.4.patch", when="@6.4")
depends_on("c", type="build") # generated
depends_on("cxx", type="build") # generated
@ -111,6 +118,7 @@ class Rccl(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")
depends_on(f"hip@{ver}", when=f"@{ver}")
@ -136,9 +144,14 @@ class Rccl(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
for ver in ["6.4.0"]:
depends_on(f"roctracer-dev@{ver}", when=f"@{ver}")
depends_on(f"rocprofiler-register@{ver}", when=f"@{ver}")
depends_on("googletest@1.11.0:", type="test", when="@5.3:")
@classmethod

View File

@ -28,6 +28,7 @@ def url_for_version(self, version):
return url.format(version)
license("MIT")
version("6.4.0", sha256="2ee3def1e90784923f2043220974d30fe9581ec0d54c93628911ed8292fc56c4")
version("6.3.3", sha256="9be314ea8d7e7af58ac4a24f5720f54d51ba553d3e1751bc9cfc4bff98494fab")
version("6.3.2", sha256="e0780b8ef46d7b9885eb06a0b9eb56924fdf090ade71a66360a0bee1d9d7295d")
version("6.3.1", sha256="88a96f13c0010a7f9e63f7a5a5531ae1d57ef1a722bac232c8544cde6245e120")
@ -52,6 +53,7 @@ def url_for_version(self, version):
version("5.3.3", sha256="1bf1a02f305e3a629801e62584116a34eafbd1b26627837a2a8c10550fcf611b")
version("5.3.0", sha256="ce9c85dad8e0c0b21e8e5938bf16f86a62dc5f6ded5f453c61acd43666634d6b")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
depends_on("cmake@3.15:", type="build")
@ -63,6 +65,25 @@ def url_for_version(self, version):
depends_on("protobuf")
depends_on("libcap")
for ver in [
"5.3.0",
"5.3.3",
"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",
"6.0.2",
"6.1.0",
"6.1.1",
"6.1.2",
]:
depends_on(f"rocm-smi-lib@{ver}", type=("build", "link"), when=f"@{ver}")
for ver in [
"5.3.0",
"5.3.3",
@ -86,8 +107,8 @@ def url_for_version(self, version):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-smi-lib@{ver}", type=("build", "link"), when=f"@{ver}")
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
for ver in [
@ -109,11 +130,15 @@ def url_for_version(self, version):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"amdsmi@{ver}", when=f"@{ver}")
for ver in ["6.4.0"]:
depends_on(f"rocm-validation-suite@{ver}", when=f"@{ver}")
def patch(self):
filter_file(r"\${ROCM_DIR}/rocm_smi", "${ROCM_SMI_DIR}", "CMakeLists.txt")
filter_file(

View File

@ -17,6 +17,7 @@ class Rocal(CMakePackage):
maintainers("afzpatel", "srekolam", "renjithravindrankannath")
license("MIT")
version("6.4.0", sha256="6239caa398c2779c1c7ecff3cebe7d206cd2fa591c1800f6f2ae16329876dd4a")
version("6.3.3", sha256="aaccd951f176356561d8ab8210696d80a94553fd48ace72993a7cfac4b98d6cf")
version("6.3.2", sha256="ceae8a86770c1f5d8cb56f4c38d6b354e16bda6b877cf93417d6a3e4e33354c6")
version("6.3.1", sha256="e332c9c2b2eb4081d7dd8a66a141f95fe8c7fccbbfdd0fea7572a62a28a62bbb")
@ -27,15 +28,22 @@ class Rocal(CMakePackage):
depends_on("libjpeg-turbo@2.0.6+partial_decoder", when="@6.2.0")
depends_on("libjpeg-turbo@3.0.2:", when="@6.2.1:")
depends_on("python@3")
depends_on("rapidjson")
depends_on("ffmpeg@4.4:")
depends_on("abseil-cpp", when="@6.3:")
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"mivisionx@{ver}", when=f"@{ver}")
depends_on(f"llvm-amdgpu@{ver}", when=f"@{ver}")
depends_on(f"rpp@{ver}", when=f"@{ver}")
patch(
"https://github.com/ROCm/rocAL/commit/357dfcb25b9ff959615efa45736d4368cf7b51fd.patch?full_index=1",
sha256="5df45c3a0e870d6e6310a23071e05f1795a450eef5fde6445cb37caf2653a86f",
when="@6.4:",
)
def patch(self):
filter_file(
r"${ROCM_PATH}/llvm/bin/clang++",
@ -113,6 +121,18 @@ def cmake_args(self):
args.append(
self.define("CMAKE_CXX_FLAGS", "-I{0} -I{1}".format(abspath, rapidjsonpath))
)
if self.spec.satisfies("@6.4.0:"):
args.append(
self.define("CMAKE_C_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang")
)
args.append(
self.define(
"CMAKE_CXX_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang++"
)
)
# force rocAL to use Spack installed python
args.append(self.define("PYTHON_VERSION_SUGGESTED", self.spec["python"].version))
args.append(self.define("Python3_ROOT_DIR", self.spec["python"].prefix))
return args
def check(self):

View File

@ -28,6 +28,7 @@ class Rocalution(CMakePackage):
libraries = ["librocalution_hip"]
license("MIT")
version("6.4.0", sha256="dcd6cccb55136362bedb4681f10eb9c9fe7f958f63802f85573732c2cd7a5185")
version("6.3.3", sha256="bec6388e74b74922c2dc3af0d73ff0e4cafdabad9e8473181079df09de81c11a")
version("6.3.2", sha256="b13118a5c0af08a666d80af78d52bdfba12ed134f6745ab36d8de75ed3bc7584")
version("6.3.1", sha256="94b78b34ac750c09831aa70a3d7f8cd220c540a75e4f91c391ba435de420c536")
@ -93,6 +94,7 @@ class Rocalution(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocprim@{ver}", when=f"@{ver}")

View File

@ -0,0 +1,16 @@
diff --git a/library/CMakeLists.txt b/library/CMakeLists.txt
index 762580d..1692578 100644
--- a/library/CMakeLists.txt
+++ b/library/CMakeLists.txt
@@ -81,7 +81,10 @@ function( rocblas_library_settings lib_target_ )
else()
target_link_libraries( ${lib_target_} PRIVATE hip::device -lstdc++fs --rtlib=compiler-rt --unwindlib=libgcc)
if (BUILD_SHARED_LIBS)
- target_link_libraries(${lib_target_} PRIVATE -lroctx64)
+ find_path(ROCTRACER_INCLUDE_DIR "roctracer/roctx.h")
+ target_include_directories(${lib_target_} PUBLIC ${ROCTRACER_INCLUDE_DIR})
+ find_library(ROCTX_LIB NAMES roctx64)
+ target_link_libraries(${lib_target_} PRIVATE ${ROCTX_LIB})
endif()
endif()
target_link_libraries( ${lib_target_} PRIVATE Threads::Threads )

View File

@ -0,0 +1,15 @@
diff --git a/clients/CMakeLists.txt b/clients/CMakeLists.txt
index 6194286..292bd8d 100644
--- a/clients/CMakeLists.txt
+++ b/clients/CMakeLists.txt
@@ -178,8 +178,8 @@ if( BUILD_CLIENTS_BENCHMARKS OR BUILD_CLIENTS_TESTS)
# Find the package ROCmSMI
if(NOT WIN32)
- find_package(ROCmSMI REQUIRED)
- list( APPEND COMMON_LINK_LIBS rocm_smi )
+ find_package(rocm_smi CONFIG REQUIRED)
+ list( APPEND COMMON_LINK_LIBS rocm_smi64 )
endif()
find_package( GTest REQUIRED )

View File

@ -25,6 +25,7 @@ class Rocblas(CMakePackage):
version("develop", branch="develop", deprecated=True)
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="ab8e75c9f98d17817a650aa4f06ff1e6c6af92cd143079e361cb6a0c96676aaa")
version("6.3.3", sha256="73e91bd50c920b818742fa5bf9990c0676be5bfbafe321d5781607dc2ce27060")
version("6.3.2", sha256="455cad760d926c21101594197c4456f617e5873a8f17bb3e14bd762018545a9e")
version("6.3.1", sha256="88d2de6ce6b23a157eea8be63408350848935e4dfc3e27e5f2add78834c6d6ba")
@ -95,10 +96,11 @@ class Rocblas(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-openmp-extras@{ver}", type="test", when=f"@{ver}")
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"rocm-smi-lib@{ver}", type="test", when=f"@{ver}")
depends_on("rocm-cmake@master", type="build", when="@master:")
@ -126,14 +128,18 @@ class Rocblas(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"llvm-amdgpu@{ver}", type="build", when=f"@{ver}")
depends_on(f"rocminfo@{ver}", type="build", when=f"@{ver}")
depends_on(f"rocm-cmake@{ver}", type="build", when=f"@{ver}")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"hipblaslt@{ver}", when=f"@{ver}")
for ver in ["6.4.0"]:
depends_on(f"roctracer-dev@{ver}", when=f"@{ver}")
depends_on("python@3.6:", type="build")
with when("+tensile"):
@ -171,6 +177,7 @@ class Rocblas(CMakePackage):
("@6.3.1", "aca95d1743c243dd0dd0c8b924608bc915ce1ae7"),
("@6.3.2", "aca95d1743c243dd0dd0c8b924608bc915ce1ae7"),
("@6.3.3", "aca95d1743c243dd0dd0c8b924608bc915ce1ae7"),
("@6.4.0", "be49885fce2a61b600ae4593f1c2d00c8b4fa11e"),
]:
resource(
name="Tensile",
@ -191,6 +198,8 @@ class Rocblas(CMakePackage):
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:5.7")
patch("0008-link-roctracer.patch", when="@6.4")
patch("0009-use-rocm-smi-config.patch", when="@6.4")
def setup_build_environment(self, env: EnvironmentModifications) -> None:
env.set("CXX", self.spec["hip"].hipcc)

View File

@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 817b0fc..c5815c7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -134,6 +134,8 @@ if(HIP_FOUND AND Libva_FOUND)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++17")
target_link_libraries(${PROJECT_NAME} ${LINK_LIBRARY_LIST})
+
+ target_include_directories(${PROJECT_NAME} PRIVATE ${AMDGPU_DRM_INCLUDE_DIRS})
set_target_properties(${PROJECT_NAME} PROPERTIES POSITION_INDEPENDENT_CODE ON)
set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)

View File

@ -20,6 +20,7 @@ class Rocdecode(CMakePackage):
maintainers("afzpatel", "srekolam", "renjithravindrankannath")
license("MIT")
version("6.4.0", sha256="d82c17687cc8ccac67fe2d401edd25c9825b38777b7a7b4100f84658838a1e50")
version("6.3.3", sha256="e72f53674527b7a6c3cba3b7555fee32117f0875107fd9e632a2ec1d5ce03489")
version("6.3.2", sha256="39ff3c21c81a73910dcfe6a147edaddecc21575a3077f0f99971c8d2f6d0e7d5")
version("6.3.1", sha256="94da1a61167abaf3f983ae5d62bffb22bb8ba3eb1c9d9fc7c68ed9a066aa4e52")
@ -41,6 +42,7 @@ class Rocdecode(CMakePackage):
)
depends_on("libva", type="build", when="@6.2:")
depends_on("libdrm", type="build", when="@6.4:")
for ver in [
"6.1.0",
@ -53,9 +55,12 @@ class Rocdecode(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
patch("0001-add-amdgpu-drm-include.patch", when="@6.4")
def patch(self):
filter_file(
r"${ROCM_PATH}/llvm/bin/clang++",
@ -76,4 +81,14 @@ def cmake_args(self):
args.append(self.define_from_variant("AMDGPU_TARGETS", "amdgpu_target"))
if self.spec.satisfies("@6.3.0:"):
args.append(self.define("LIBVA_INCLUDE_DIR", self.spec["libva"].prefix.include))
if self.spec.satisfies("@6.4.0:"):
args.append(
self.define("CMAKE_C_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang")
)
args.append(
self.define(
"CMAKE_CXX_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang++"
)
)
args.append(self.define("AMDGPU_DRM_INCLUDE_DIRS", self.spec["libdrm"].prefix.include))
return args

View File

@ -23,6 +23,7 @@ class Rocfft(CMakePackage):
license("MIT")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="0e9f3f23d8facee65e32baaec7941119b56eb17313b8b514e1c3994c9777c320")
version("6.3.3", sha256="b2edb5c39215b98e0abc485d2b277a0b8c6f87f06e9b0770a60f5568ef52e62e")
version("6.3.2", sha256="0511d04d2367dcac6b35bc6b449337ba37bb623b8382fb11178fc608b5435437")
version("6.3.1", sha256="f8aa0e68d8e303725d0be8ae1d7c0113b6ca019a3b9f08572abf8a02db690662")
@ -104,6 +105,7 @@ class Rocfft(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")

View File

@ -0,0 +1,20 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b8233cf..939b221 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -161,6 +161,8 @@ if(HIP_FOUND AND Libva_FOUND)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++17")
target_link_libraries(${PROJECT_NAME} ${LINK_LIBRARY_LIST})
+ target_include_directories(${PROJECT_NAME} PRIVATE ${AMDGPU_DRM_INCLUDE_DIRS})
+
set_target_properties(${PROJECT_NAME} PROPERTIES POSITION_INDEPENDENT_CODE ON)
set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)
set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
@@ -375,4 +377,4 @@ else()
if(NOT Libva_FOUND)
message(FATAL_ERROR "-- ERROR!: libva Not Found - please install libva-amdgpu-dev(DEBIAN)/libva-amdgpu-devel(RPM) package!")
endif()
-endif()
\ No newline at end of file
+endif()

View File

@ -20,6 +20,7 @@ class Rocjpeg(CMakePackage):
license("MIT")
version("6.4.0", sha256="5488f5ab9c475566716d99ad32fb4c20686ac1bcc00c9242221abdbde2b94ffe")
version("6.3.3", sha256="65081b20ab3df82337fdcaf3d4e614c75f946656a4ea7bc00ac0d1bbd81e3e83")
version("6.3.2", sha256="4e1ec9604152e818afa85360f1e0ef9e98bfb8a97ca0989980063e2ece015c16")
version("6.3.1", sha256="f4913cbc63e11b9b418d33b0f9ba0fec0aa00b23285090acfd435e1ba1c21e42")
@ -27,11 +28,13 @@ class Rocjpeg(CMakePackage):
depends_on("cxx", type="build")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"llvm-amdgpu@{ver}", when=f"@{ver}")
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on("libva", type="build", when="@6.2:")
depends_on("libdrm", type="build", when="@6.4:")
patch("0001-add-amdgpu-drm-include.patch", when="@6.4")
def patch(self):
filter_file(
@ -43,4 +46,14 @@ def patch(self):
def cmake_args(self):
args = [self.define("LIBVA_INCLUDE_DIR", self.spec["libva"].prefix.include)]
if self.spec.satisfies("@6.4.0:"):
args.append(
self.define("CMAKE_C_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang")
)
args.append(
self.define(
"CMAKE_CXX_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang++"
)
)
args.append(self.define("AMDGPU_DRM_INCLUDE_DIRS", self.spec["libdrm"].prefix.include))
return args

View File

@ -19,6 +19,7 @@ class RocmBandwidthTest(CMakePackage):
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="0a4c8aa32e041f0344eda448927d677b4a65835dda9736a7f2ab72b8e7f14d1c")
version("6.3.3", sha256="d33f656eb6ba7db78b41c4bcf6d830b511dc97c6d645760e6d05edd07fcaefba")
version("6.3.2", sha256="3754831244d7c4f6314fc25b3e929adf9abe44c9cb60621dd8ae5d1aa930ae55")
version("6.3.1", sha256="98002e4104929a62a308114ed82fba530880359a17f90ebd62a2ca49c2baac78")
@ -43,6 +44,7 @@ class RocmBandwidthTest(CMakePackage):
version("5.3.3", sha256="2bc079297e639d45d57c8017f6f47bc44d4ed34613ec76c80574bb703d79b498")
version("5.3.0", sha256="a97365c04d79663db7c85027c63a12d56356abc0a351697f49c2d82bf9ef8999")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
depends_on("cmake@3:", type="build")
@ -92,6 +94,7 @@ class RocmBandwidthTest(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
@ -115,6 +118,7 @@ class RocmBandwidthTest(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -22,6 +22,7 @@ class RocmCmake(CMakePackage):
license("MIT")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="be8109c52e9309d1ae9553e067346ecdf1a25f653cc21974ddc542f31ce54615")
version("6.3.3", sha256="4238cccc22226ba9487185fc2faa66b11c0cb8e7982240332e1b919cec8d909e")
version("6.3.2", sha256="f5104c2289da99a70d8c4c1befbca4f8efa7c89711eaac7b6b63592cd4bd99a8")
version("6.3.1", sha256="6994a5bdeea55cd41ec01ab4142785ea02bbdcb83e70f6911095c7cea766ebe8")
@ -69,6 +70,7 @@ class RocmCmake(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
@ -85,6 +87,7 @@ def test_cmake(self):
test_dir = join_path(self.test_suite.current_test_cache_dir, self.test_src_dir)
with working_dir(test_dir, create=True):
cc_options = [f"-DCMAKE_PREFIX_PATH={self.prefix}", "."]
make = self.spec["gmake"].command
cmake = self.spec["cmake"].command
cmake(*cc_options)
make()

View File

@ -21,6 +21,7 @@ class RocmCore(CMakePackage):
libraries = ["librocm-core"]
license("MIT")
version("6.4.0", sha256="058739404c91105c1b34117803f6b48917a23191291ce67020e6b983b45450c1")
version("6.3.3", sha256="d2a3900424dea1dcc0e303c288d2c07e1345c2d5348398449998e8007fe7fd44")
version("6.3.2", sha256="3243f661e5e995341e81127a6096ac80169b8481826ebadc02e24020f1ff985d")
version("6.3.1", sha256="f8196f3aafe03bd93ae2947162f34098fd08ddbad4eb3deaf92acd434b480304")
@ -59,6 +60,7 @@ class RocmCore(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on("llvm-amdgpu", when=f"@{ver}+asan")

View File

@ -26,6 +26,7 @@ class RocmDbgapi(CMakePackage):
license("MIT")
version("master", branch="amd-master", deprecated=True)
version("6.4.0", sha256="5dcf627245cc9511c7ff22f46410c5e5777187fab97b7cfcd95e03e61069f72c")
version("6.3.3", sha256="25c8e9f4a22f23004f2fc1998c284095b193591eb6143b47380455754948ab98")
version("6.3.2", sha256="0e7cea6ae2eb737ad378787d2ef5f6cbaf9dfb483bb5e61e716601a145677adf")
version("6.3.1", sha256="1843423c91a22cf83bef5f14cb50f55ba333047e03e75296b9f9522facde5822")
@ -57,6 +58,8 @@ class RocmDbgapi(CMakePackage):
conflicts("+asan", when="os=centos8")
depends_on("cxx", type="build") # generated
depends_on("c", type="build")
depends_on("cmake@3:", type="build")
depends_on("hwdata", when="@5.5.0:")
depends_on("pciutils", when="@5.5.0:")
@ -84,6 +87,7 @@ class RocmDbgapi(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"hsa-rocr-dev@{ver}", type="build", when=f"@{ver}")
@ -108,6 +112,7 @@ class RocmDbgapi(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -19,6 +19,7 @@ class RocmDebugAgent(CMakePackage):
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
libraries = ["librocm-debug-agent"]
version("6.4.0", sha256="699af72a1ff7edf3cff6ef293469345538da06aaedefb3540dd61f55ea862330")
version("6.3.3", sha256="27407c5cabec3d9757ffe5eb729639ccb3ad3b086f57f101854b73479a6f0f51")
version("6.3.2", sha256="578aa08b10a456eebd2b548afd86339bd5a5df807611ffd20cc3006eaae74836")
version("6.3.1", sha256="0e28a9febf3b95cc6bbf8eae91091bf22a8f49fe9558171251f8f9afe666f9d7")
@ -50,9 +51,10 @@ class RocmDebugAgent(CMakePackage):
conflicts("+asan", when="os=centos8")
depends_on("cxx", type="build") # generated
depends_on("c", type="build")
depends_on("cmake@3:", type="build")
depends_on("elfutils@:0.168", type="link")
depends_on("elfutils@0.188:", type="link")
for ver in [
"5.3.0",
@ -99,6 +101,7 @@ class RocmDebugAgent(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
depends_on(f"rocm-dbgapi@{ver}", when=f"@{ver}")
@ -122,12 +125,13 @@ class RocmDebugAgent(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
# https://github.com/ROCm/rocr_debug_agent/pull/4
patch("0001-Drop-overly-strict-Werror-flag.patch")
patch("0002-add-hip-architecture.patch")
patch("0002-add-hip-architecture.patch", when="@:6.3")
@classmethod
def determine_version(cls, lib):
@ -139,9 +143,9 @@ def determine_version(cls, lib):
return None
def setup_build_environment(self, env: EnvironmentModifications) -> None:
env.set("CC", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang")
env.set("CXX", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang++")
if self.spec.satisfies("+asan"):
env.set("CC", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang")
env.set("CXX", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang++")
env.set("ASAN_OPTIONS", "detect_leaks=0")
env.set("CFLAGS", "-fsanitize=address -shared-libasan")
env.set("CXXFLAGS", "-fsanitize=address -shared-libasan")

View File

@ -26,6 +26,7 @@ def url_for_version(self, version):
maintainers("srekolam", "renjithravindrankannath", "haampie", "afzpatel")
version("master", branch="amd-stg-open", deprecated=True)
version("6.4.0", sha256="dca1c145a23f05229d5d646241f9d1d3c5dbf1d745b338ae020eabe33beb965c")
version("6.3.3", sha256="4df9aba24e574edf23844c0d2d9dda112811db5c2b08c9428604a21b819eb23d")
version("6.3.2", sha256="1f52e45660ea508d3fe717a9903fe27020cee96de95a3541434838e0193a4827")
version("6.3.1", sha256="e9c2481cccacdea72c1f8d3970956c447cec47e18dfb9712cbbba76a2820552c")

View File

@ -20,6 +20,7 @@ class RocmExamples(CMakePackage):
license("MIT")
version("6.4.0", sha256="af2be5806982a72c726cf052c512493cc004bfa98d0136fbf8fed2754a4f4b80")
version("6.3.3", sha256="5e5bdffb4bf56d30c5f8dd8fda95d162362d17e446396e6b6a3afe8d293039f3")
version("6.3.2", sha256="7a71dcfec782338af1d838f86b692974368e362de8ad85d5ec26c23b0afbab9e")
version("6.3.1", sha256="c5093cd6641de478b940d2e36d6723f7ef1ccad3f4f96caf0394def2e6c7e325")
@ -28,11 +29,12 @@ class RocmExamples(CMakePackage):
version("6.2.1", sha256="2e426572aa5f5b44c7893ea256945c8733b79db39cca84754380f40c8b44a563")
version("6.2.0", sha256="6fb1f954ed32b5c4085c7f071058d278c2e1e8b7b71118ee5e85cf9bbc024df0")
depends_on("c", type="build")
depends_on("cxx", type="build")
depends_on("glfw", type="build")
for ver in ["6.3.3", "6.3.2", "6.3.1", "6.3.0", "6.2.4", "6.2.1", "6.2.0"]:
for ver in ["6.4.0", "6.3.3", "6.3.2", "6.3.1", "6.3.0", "6.2.4", "6.2.1", "6.2.0"]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"hipify-clang@{ver}", when=f"@{ver}")
depends_on(f"hipcub@{ver}", when=f"@{ver}")
@ -44,6 +46,10 @@ class RocmExamples(CMakePackage):
depends_on(f"rocsparse@{ver}", when=f"@{ver}")
depends_on(f"rocsolver@{ver}", when=f"@{ver}")
for ver in ["6.4.0", "6.3.3", "6.3.2", "6.3.1", "6.3.0"]:
depends_on(f"hipfft@{ver}", when=f"@{ver}")
depends_on(f"rocfft@{ver}", when=f"@{ver}")
def patch(self):
filter_file(
r"${ROCM_ROOT}/bin/hipify-perl",

View File

@ -19,6 +19,7 @@ class RocmGdb(AutotoolsPackage):
license("LGPL-2.0-or-later")
maintainers("srekolam", "renjithravindrankannath")
version("6.4.0", sha256="ef32529b2e3799dd8ab15647701063fcdcadd6d043a0d376a98c3ca10813817a")
version("6.3.3", sha256="51678b588f65f92f50c2336707322cf4973fa96d03e268ec5956ac1a9f2ebaa3")
version("6.3.2", sha256="85b03c1fb99f55272f4732dff58e8ba0a1add454a79d2b9d471df200366d0c7e")
version("6.3.1", sha256="954236518491ba547f849be7c86e71ff95ef24535f66acabfd45040e11c25d7b")
@ -83,6 +84,7 @@ class RocmGdb(AutotoolsPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-dbgapi@{ver}", type="link", when=f"@{ver}")
depends_on(f"comgr@{ver}", type="link", when=f"@{ver}")
@ -106,6 +108,7 @@ class RocmGdb(AutotoolsPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -37,6 +37,7 @@ def url_for_version(self, version):
license("MIT")
version("master", branch="main", deprecated=True)
version("6.4.0", sha256="76fd0ad83da0dabf7c91ca4cff6c51f2be8ab259e08ad9743af47d1b3473c2ff")
version("6.3.3", sha256="8e5adca8f8c2d99d4a4e49605dd6b56b7881b762ee8ce15b4a7000e3cd982fec")
version("6.3.2", sha256="ec13dc4ffe212beee22171cb2825d2b16cdce103c835adddb482b9238cf4f050")
version("6.3.1", sha256="bfb8a4a59e7bd958e2cd4bf6f14c6cdea601d9827ebf6dc7af053a90e963770f")
@ -135,6 +136,7 @@ def url_for_version(self, version):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"comgr@{ver}", type="build", when=f"@{ver}")
@ -153,6 +155,7 @@ def url_for_version(self, version):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"aqlprofile@{ver}", type="link", when=f"@{ver}")
@ -175,6 +178,7 @@ def url_for_version(self, version):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -0,0 +1,13 @@
diff --git a/rocm-openmp-extras/llvm-project/offload/plugins-nextgen/cuda/CMakeLists.txt b/rocm-openmp-extras/llvm-project/offload/plugins-nextgen/cuda/CMakeLists.txt
index 5fdfb8f..7e13320 100644
--- a/rocm-openmp-extras/llvm-project/offload/plugins-nextgen/cuda/CMakeLists.txt
+++ b/rocm-openmp-extras/llvm-project/offload/plugins-nextgen/cuda/CMakeLists.txt
@@ -18,8 +18,6 @@ endif()
option(LIBOMPTARGET_FORCE_NVIDIA_TESTS "Build NVIDIA libomptarget tests" OFF)
if (LIBOMPTARGET_FOUND_NVIDIA_GPU OR LIBOMPTARGET_FORCE_NVIDIA_TESTS)
message(STATUS "Enable tests using CUDA plugin")
- set(LIBOMPTARGET_SYSTEM_TARGETS
- "${LIBOMPTARGET_SYSTEM_TARGETS} nvptx64-nvidia-cuda nvptx64-nvidia-cuda-LTO" PARENT_SCOPE)
list(APPEND LIBOMPTARGET_TESTED_PLUGINS "omptarget.rtl.cuda")
set(LIBOMPTARGET_TESTED_PLUGINS "${LIBOMPTARGET_TESTED_PLUGINS}" PARENT_SCOPE)
else()

View File

@ -39,6 +39,7 @@
"8fefdd0d9eecd11866ddecbe039347560469eb69d974934005d480eac4432b81",
"eeda81dafd17df7e1d2b9dbf91a23924c6dd8de29f0792725fc25a6cd1d9c5fa",
"b43b889b5778572d6d348c6a6614dc02258212004d1f1f64f0cdc74dc3249e86",
"b9b1537fcbb7226d99145a1c01e8c5961ab83a5834286397943ff86676d545ed",
]
devlib = [
@ -64,6 +65,7 @@
"e9c2481cccacdea72c1f8d3970956c447cec47e18dfb9712cbbba76a2820552c",
"1f52e45660ea508d3fe717a9903fe27020cee96de95a3541434838e0193a4827",
"4df9aba24e574edf23844c0d2d9dda112811db5c2b08c9428604a21b819eb23d",
"dca1c145a23f05229d5d646241f9d1d3c5dbf1d745b338ae020eabe33beb965c",
]
llvm = [
@ -89,6 +91,7 @@
"e9c2481cccacdea72c1f8d3970956c447cec47e18dfb9712cbbba76a2820552c",
"1f52e45660ea508d3fe717a9903fe27020cee96de95a3541434838e0193a4827",
"4df9aba24e574edf23844c0d2d9dda112811db5c2b08c9428604a21b819eb23d",
"dca1c145a23f05229d5d646241f9d1d3c5dbf1d745b338ae020eabe33beb965c",
]
flang = [
@ -114,6 +117,7 @@
"2e38ba138312d18b2677347839a960802bb04090bb92b5e6a15ac06ed789dbc0",
"4b4d8025a215c52e62dd6317cafce224d95f91040e90942c9a93ade568a8dd48",
"e0f650fc633ab4a8eab30b0c1ba0efb46ec596b540c3a4c13ca24d92c512d255",
"a51fbdda9d5d968fe6d23eaeabbe04a0db810a88a7a609ae924e3caaed4539f1",
]
extras = [
@ -139,6 +143,7 @@
"4050c60cbbf582122cc0a30b4a99200341c426f2fa3d81ac8dc61f5a0890ed15",
"70b49c1198bf176498ec4a94584b8ed8a07f623ebfa567e4fcf1a6545b635185",
"9615235b4d5ae78e43ca4854f316b83e75f7d9ed3fc187ed1869b7d8d7e26341",
"105dd0ccae2864275de5a6370010d923d25307e6a8c35af3befdd0064ea743bc",
]
versions = [
@ -164,6 +169,7 @@
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]
versions_dict = dict() # type: Dict[str,Dict[str,str]]
components = ["aomp", "devlib", "llvm", "flang", "extras"]
@ -187,6 +193,7 @@ class RocmOpenmpExtras(Package):
license("Apache-2.0")
maintainers("srekolam", "renjithravindrankannath", "estewart08", "afzpatel")
version("6.4.0", sha256=versions_dict["6.4.0"]["aomp"])
version("6.3.3", sha256=versions_dict["6.3.3"]["aomp"])
version("6.3.2", sha256=versions_dict["6.3.2"]["aomp"])
version("6.3.1", sha256=versions_dict["6.3.1"]["aomp"])
@ -247,6 +254,7 @@ class RocmOpenmpExtras(Package):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
@ -321,6 +329,7 @@ class RocmOpenmpExtras(Package):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"comgr@{ver}", when=f"@{ver}")
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
@ -362,12 +371,20 @@ class RocmOpenmpExtras(Package):
when="@6.1",
)
patch("0001-Avoid-duplicate-registration-on-cuda-env.patch", when="@6.1")
patch("0001-Avoid-duplicate-registration-on-cuda-env-6.2.patch", when="@6.2:")
patch("0001-Avoid-duplicate-registration-on-cuda-env-6.2.patch", when="@6.2:6.3")
patch("0001-Avoid-duplicate-registration-on-cuda-env-6.4.patch", when="@6.4:")
def setup_run_environment(self, env: EnvironmentModifications) -> None:
devlibs_prefix = self.spec["llvm-amdgpu"].prefix
llvm_prefix = self.spec["llvm-amdgpu"].prefix
hsa_prefix = self.spec["hsa-rocr-dev"].prefix
if self.spec.external:
devlibs_prefix = self.prefix
llvm_prefix = self.prefix
# prefix is set to either <rocm_path>/llvm or <rocm_path>/lib/llvm
path_parts = self.prefix.rstrip("llvm").rstrip("lib/")
hsa_prefix = os.path.dirname(path_parts)
else:
devlibs_prefix = self.spec["llvm-amdgpu"].prefix
llvm_prefix = self.spec["llvm-amdgpu"].prefix
hsa_prefix = self.spec["hsa-rocr-dev"].prefix
env.set("AOMP", f"{llvm_prefix}")
env.set("HIP_DEVICE_LIB_PATH", f"{devlibs_prefix}/amdgcn/bitcode")
env.prepend_path("CPATH", f"{self.prefix}/include")
@ -391,7 +408,10 @@ def setup_build_environment(self, env: EnvironmentModifications) -> None:
def patch(self):
src = self.stage.source_path
libomptarget = "{0}/rocm-openmp-extras/llvm-project/openmp/libomptarget"
if self.spec.satisfies("@6.4:"):
libomptarget = "{0}/rocm-openmp-extras/llvm-project/offload"
else:
libomptarget = "{0}/rocm-openmp-extras/llvm-project/openmp/libomptarget"
flang = "{0}/rocm-openmp-extras/flang/"
plugin = "/plugins/amdgpu/CMakeLists.txt"

View File

@ -0,0 +1,31 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 289cca0..d05a779 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -41,6 +41,8 @@ set(SHARE_INSTALL_PREFIX
# provide git to utilities
find_program (GIT NAMES git)
+pkg_check_modules(DRM REQUIRED libdrm)
+pkg_check_modules(AMDGPU_DRM REQUIRED libdrm_amdgpu)
## Setup the package version based on git tags.
set(PKG_VERSION_GIT_TAG_PREFIX "rsmi_pkg_ver")
diff --git a/rocm_smi/CMakeLists.txt b/rocm_smi/CMakeLists.txt
index 257309b..a3d7357 100755
--- a/rocm_smi/CMakeLists.txt
+++ b/rocm_smi/CMakeLists.txt
@@ -98,6 +98,13 @@ if(FILE_REORG_BACKWARD_COMPATIBILITY)
"$<INSTALL_INTERFACE:${ROCM_SMI}/include>")
endif()
+
+target_include_directories(${ROCM_SMI_TARGET}
+ INTERFACE
+ ${DRM_INCLUDE_DIRS}
+ ${AMDGPU_DRM_INCLUDE_DIRS}
+)
+
## Set the VERSION and SOVERSION values
set_property(TARGET ${ROCM_SMI_TARGET} PROPERTY
SOVERSION "${VERSION_MAJOR}")

View File

@ -25,6 +25,7 @@ class RocmSmiLib(CMakePackage):
libraries = ["librocm_smi64"]
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="0c462520b4fa0cf9b49515b207b0ead32a5f96ddba487c5d4fa07a403690c05a")
version("6.3.3", sha256="679dfd0cbd213d27660e546584ab013afea286eff95928d748d168503305c9c4")
version("6.3.2", sha256="29a9190143dfcbafeac93d8064b00c9320dbca57a3344adb009ec17d9b09d036")
version("6.3.1", sha256="0f45e4823e361a1c6ac560eabf6000c3b59e08bcd96e87150149149e861c6a63")
@ -77,6 +78,7 @@ class RocmSmiLib(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
@ -91,9 +93,13 @@ class RocmSmiLib(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on("llvm-amdgpu", when=f"@{ver}+asan")
depends_on("pkg-config", when="@6.4:")
depends_on("libdrm", when="@6.4:")
patch(
"https://github.com/ROCm/rocm_smi_lib/commit/11f12b86517d0e9868f4d16d74d4e8504c3ba7da.patch?full_index=1",
sha256="62be7262f6e1e71bf82a03f500a424a536638f04e913d0f4b477f60e8e1190fd",
@ -101,6 +107,12 @@ class RocmSmiLib(CMakePackage):
)
patch("disable_pdf_generation_with_doxygen_and_latex.patch", when="@:5.6")
patch(
"https://github.com/ROCm/rocm_smi_lib/commit/ce405476cabf66a884a351cb2e3253bd5c29e06b.patch?full_index=1",
sha256="54094b5dbd05b79341e38e95f785dcbb0ba4a5aef4bad19e075ea77470164138",
when="@6.4",
)
patch("0001-add-libdrm-include-dir.patch", when="@6.4")
def cmake_args(self):
args = [

View File

@ -0,0 +1,24 @@
diff --git a/Tensile/Source/client/CMakeLists.txt b/Tensile/Source/client/CMakeLists.txt
index a9ac80a..087e0c5 100644
--- a/Tensile/Source/client/CMakeLists.txt
+++ b/Tensile/Source/client/CMakeLists.txt
@@ -58,8 +58,8 @@ set_target_properties(TensileClient
find_package(Boost COMPONENTS program_options REQUIRED)
if (NOT WIN32)
- find_package(ROCmSMI QUIET)
- if(NOT ROCmSMI_FOUND)
+ find_package(rocm_smi CONFIG QUIET)
+ if(NOT rocm_smi_FOUND)
set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" "${Tensile_DIR}" "${Tensile_DIR}/../Source/cmake" "${CMAKE_HOME_DIRECTORY}/cmake")
find_package(ROCmSMI REQUIRED)
endif()
@@ -72,7 +72,7 @@ target_include_directories(TensileClient PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/inc
target_link_libraries(TensileClient PRIVATE TensileHost ${Boost_LIBRARIES})
if(NOT WIN32)
- target_link_libraries(TensileClient PRIVATE TensileHost rocm_smi)
+ target_link_libraries(TensileClient PRIVATE TensileHost ${ROCM_SMI_LIBRARY})
endif()
if(TENSILE_USE_OPENMP)

View File

@ -21,6 +21,7 @@ class RocmTensile(CMakePackage):
license("MIT")
maintainers("srekolam", "renjithravindrankannath", "haampie", "afzpatel")
version("6.4.0", sha256="cfe32aa31aa0dd79018d0cdd36e09df3a548159cb7b8e18d0ef6513d0febce90")
version("6.3.3", sha256="5849fc3898e9cea05569c0ee102c13043c4df67079119572687bc42f274ae496")
version("6.3.2", sha256="700e43a22d7e6309bf74624b18a42bb0132ef35716fccec897d3045a97759e6a")
version("6.3.1", sha256="9882e8f949e1eb1d4b7dbd215370ecce643852dd2ce6e021d59cd49d32ba9dea")
@ -65,6 +66,7 @@ class RocmTensile(CMakePackage):
)
variant("openmp", default=True, description="Enable OpenMP")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
depends_on("cmake@3:", type="build")
@ -95,6 +97,7 @@ class RocmTensile(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-cmake@{ver}", type="build", when=f"@{ver}")
depends_on(f"hip@{ver}", when=f"@{ver}")
@ -106,6 +109,7 @@ class RocmTensile(CMakePackage):
root_cmakelists_dir = "Tensile/Source"
patch("0003-require-openmp-extras-when-tensile-use-openmp.patch", when="@5.1.0:")
patch("0004-replace_rocm_smi.patch", when="@6.4")
def setup_build_environment(self, env: EnvironmentModifications) -> None:
env.set("CXX", self.spec["hip"].hipcc)

View File

@ -0,0 +1,16 @@
diff --git a/rvslib/CMakeLists.txt b/rvslib/CMakeLists.txt
index d3ea8af..55b26c3 100644
--- a/rvslib/CMakeLists.txt
+++ b/rvslib/CMakeLists.txt
@@ -114,9 +114,10 @@ else()
set(ASAN_LIB_PATH "$ENV{LD_LIBRARY_PATH}")
endif()
+find_path(DRM_INCLUDE_DIR libdrm/drm.h PATHS /usr/include /usr/local/include)
## define include directories
include_directories(./ ../ ../rvs
- ${ROCM_SMI_INC_DIR} ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR} ${HIPBLASLT_INC_DIR} ${YAML_CPP_INCLUDE_DIR} ${HIPRAND_INC_DIR} ${ROCRAND_INC_DIR} ${HIPBLAS-COMMON_INCLUDE_DIR})
+ ${ROCM_SMI_INC_DIR} ${ROCR_INC_DIR} ${ROCBLAS_INC_DIR} ${HIP_INC_DIR} ${HIPBLASLT_INC_DIR} ${YAML_CPP_INCLUDE_DIR} ${HIPRAND_INC_DIR} ${ROCRAND_INC_DIR} ${HIPBLAS-COMMON_INCLUDE_DIR} ${DRM_INCLUDE_DIR})
link_directories(${ASAN_LIB_PATH} ${ROCM_SMI_LIB_DIR})

View File

@ -23,6 +23,7 @@ class RocmValidationSuite(CMakePackage):
license("MIT")
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="1963aa0ec6f6b7e957a5521dbfba615c2047ef7f432048b4a14c979c90a6f995")
version("6.3.3", sha256="3d1afc47f6bd491991f6deb80f84d00041497e7fd564fd0129622263b5b87cc1")
version("6.3.2", sha256="c13d1efc21358901074f73c48f9cc8531cd5c6d28b7702d022f3efbbaf4b4286")
version("6.3.1", sha256="5a5ec682729292d57838191e217a3475d662c5c25a7bd79c4996fdf4b5e36a5a")
@ -47,6 +48,7 @@ class RocmValidationSuite(CMakePackage):
version("5.3.3", sha256="9acbc8de9b2e18659f51bd49f6e92ab6c93742e2ed0046322025f017fc12497f")
version("5.3.0", sha256="d6afb8a5f4eaf860fd510bcfe65e735cbf96d4b8817c758ea7aee84d4c994382")
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
patch(
@ -69,13 +71,15 @@ class RocmValidationSuite(CMakePackage):
patch(
"https://github.com/ROCm/ROCmValidationSuite/commit/bd63256d43d11ae09a2c203e05cb002c7a730c59.patch?full_index=1",
sha256="bd63baeb4dea00ac4104ef7e9fab907bc04a1eccb93036478c005d0ac11034de",
when="@6.3.0:",
when="@6.3",
)
patch("010-add-drm-include-path.patch", when="@6.4")
depends_on("cmake@3.5:", type="build")
depends_on("zlib-api", type="link")
depends_on("yaml-cpp~shared")
depends_on("googletest")
depends_on("doxygen", type="build")
depends_on("libdrm", when="@6.4:")
def setup_build_environment(self, env: EnvironmentModifications) -> None:
spec = self.spec
@ -126,17 +130,18 @@ def setup_build_environment(self, env: EnvironmentModifications) -> None:
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocminfo@{ver}", when=f"@{ver}")
depends_on(f"rocblas@{ver}", when=f"@{ver}")
depends_on(f"rocm-smi-lib@{ver}", when=f"@{ver}")
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
for ver in ["6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"hiprand@{ver}", when=f"@{ver}")
depends_on(f"rocrand@{ver}", when=f"@{ver}")
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"hipblaslt@{ver}", when=f"@{ver}")
def patch(self):

View File

@ -19,6 +19,7 @@ class Rocminfo(CMakePackage):
maintainers("srekolam", "renjithravindrankannath", "haampie")
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="060184e70755cb267017553ec37cc5b36af2c94e6b0643cad4b9fed270199a79")
version("6.3.3", sha256="08390b2babe6dc832887098c5d3a5253d655430a18751f3446a56c7422b26dd2")
version("6.3.2", sha256="a98a32bae0e118397b5559b4a584c9363191bb2d1f45fe13b09f502016745e8f")
version("6.3.1", sha256="30cf7ed537c066e325a8731d0fbe62be2f0f66c8700a06f334e787e9f0f87437")
@ -94,6 +95,7 @@ class Rocminfo(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"master",
]:
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
@ -117,6 +119,7 @@ class Rocminfo(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")

View File

@ -19,6 +19,7 @@ class Rocmlir(CMakePackage):
maintainers("srekolam", "afzpatel", "renjithravindrankannath")
version("6.4.0", sha256="e377ad70fd5a5723427edf9464dde8e7892dabd1f783123d39a2fa2faf87079f")
version("6.3.3", sha256="87242b811536132a02ce79fe430c70485f9b1477de22d8376e7e923a9c9ad98b")
version("6.3.2", sha256="5911e880a66faecb08d242efa3e5eb6f8ce32cb21ea09dec36f4aef111c395fb")
version("6.3.1", sha256="b9e0ea8cfb83c20553b1ec1556752958afaa421a8d7326b1da748395ba7b75ac")
@ -84,6 +85,7 @@ def patch(self):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"llvm-amdgpu@{ver}", when=f"@{ver}")

View File

@ -19,6 +19,7 @@ class Rocprim(CMakePackage):
license("MIT")
maintainers("cgmb", "srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="c35c568b83f8894fc3b9b722343b0ea75c3bd961be24075fb3527d5230788e26")
version("6.3.3", sha256="15e4f8dfc71175c568f8afa87e3e0e3c7ad0680c8bca0d9db3a39936ec185813")
version("6.3.2", sha256="fbb4839992eaba838f798408636da30f0d61b669513dae185ab790c5fa5595c4")
version("6.3.1", sha256="37690d9f326d68379d52a21fe9184061d38b15263a566f1f182d539e4b3277d5")
@ -86,6 +87,7 @@ class Rocprim(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"comgr@{ver}", when=f"@{ver}")

View File

@ -19,6 +19,8 @@ class RocprofilerCompute(CMakePackage):
maintainers("afzpatel", "srekolam", "renjithravindrankannath")
license("MIT")
version("6.4.0", sha256="484a8974ebf973fa00241bf3665eac790b3c317aa36b794cc2998f892b3036fc")
version("6.3.3", sha256="0f563874f71b593cbdcdf0eea58b08c7437f1abf807f0886a3a30afa9e7f4953")
version("6.3.2", sha256="317f19acfa6e6780923e6c8144c3c223b523c382588df528b6df001fae38d13d")

View File

@ -20,6 +20,7 @@ class RocprofilerDev(CMakePackage):
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
libraries = ["librocprofiler64"]
license("MIT")
version("6.4.0", sha256="c605bdbf5245f46267d4a422746fc941213beae494cd3f902b67fc5423979a57")
version("6.3.3", sha256="7ca6900b4a81f9dc0d7cdfe3be39372b3bf25f3c8304256705003294772890bd")
version("6.3.2", sha256="c440ac79fa9f3e8c1decbfd83557d5cbbc4bb720927880b33dc36e682f37ec26")
version("6.3.1", sha256="c4666c1167e551cfafc343b092506834477556ba6f7b0739552d660fd69c30fb")
@ -114,6 +115,7 @@ class RocprofilerDev(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocm-smi-lib@{ver}", when=f"@{ver}")
@ -137,6 +139,7 @@ class RocprofilerDev(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"aqlprofile@{ver}", when=f"@{ver}")
depends_on(f"comgr@{ver}", when=f"@{ver}")

View File

@ -21,6 +21,7 @@ class RocprofilerRegister(CMakePackage):
maintainers("afzpatel", "srekolam", "renjithravindrankannath")
license("MIT")
version("6.4.0", sha256="7439d789f722971b2dd2f8e7b5c5cbdb1522e47a6fbb428fd9bcb24234c6fd48")
version("6.3.3", sha256="afe4b1017ca604259de8cf7d06f98680bae63180214b914fcd7bd5da116b58c3")
version("6.3.2", sha256="2e973dd10af220cd37838c13f3c7d52671f5cf846a3f06311b138770b62f51f4")
version("6.3.1", sha256="82e2fbd2da058503398848c3e662f518e99f9bccb7b98880aa321c1f6511fca9")

View File

@ -23,6 +23,12 @@ class RocprofilerSdk(CMakePackage):
license("MIT")
version(
"6.4.0",
tag="rocm-6.4.0",
commit="e8e49fe76971000a42a5a177d9a727d16dd0ebcf",
submodules=True,
)
version(
"6.3.3",
tag="rocm-6.3.3",
@ -56,9 +62,15 @@ class RocprofilerSdk(CMakePackage):
depends_on("c", type="build")
depends_on("cxx", type="build")
for ver in ["6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocm-cmake@{ver}", when=f"@{ver}")
depends_on(f"aqlprofile@{ver}", when=f"@{ver}")
depends_on(f"rccl@{ver}", when=f"@{ver}")
depends_on(f"rocprofiler-register@{ver}", when=f"@{ver}")
for ver in ["6.4.0"]:
depends_on(f"rocdecode@{ver}", when=f"@{ver}")
def setup_run_environment(self, env):
env.prepend_path("LD_LIBRARY_PATH", self.spec["aqlprofile"].prefix.lib)

View File

@ -15,6 +15,7 @@ class Rocpydecode(CMakePackage):
url = "https://github.com/ROCm/rocPyDecode/archive/refs/tags/rocm-6.2.0.tar.gz"
maintainers("afzpatel", "srekolam", "renjithravindrankannath")
version("6.4.0", sha256="c7fd47f98dc0ef005a0fda0dc73e71e1d5318901d038489ba69f51473b7aca6a")
version("6.3.3", sha256="df45b4a64ed3e550229fd91bcf7896d1a8fe377dd1ff88d2e6a71897b981180d")
version("6.3.2", sha256="c1b4dba9f8a28299279ad4e4aeb0c857c3a9772d016fcc0f164940f22faa6dee")
version("6.3.1", sha256="77ed22ee23409b004676fb1a11b963324b878e786dae0a56fdef58375716c9eb")
@ -27,7 +28,7 @@ class Rocpydecode(CMakePackage):
depends_on("ffmpeg@4.4:6")
depends_on("dlpack")
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3"]:
for ver in ["6.2.0", "6.2.1", "6.2.4", "6.3.0", "6.3.1", "6.3.2", "6.3.3", "6.4.0"]:
depends_on(f"rocdecode@{ver}", when=f"@{ver}")
def patch(self):
@ -55,7 +56,6 @@ def cmake_args(self):
self.define("rocDecode_PATH", self.spec["rocdecode"].prefix),
self.define("FFMPEG_INCLUDE_DIR", self.spec["ffmpeg"].prefix.include),
self.define("CMAKE_INSTALL_PREFIX_PYTHON", self.spec.prefix),
self.define("CMAKE_CXX_FLAGS", "-I{0}".format(self.spec["dlpack"].prefix.include)),
self.define(
"CMAKE_CXX_FLAGS",
"-DUSE_AVCODEC_GREATER_THAN_58_134 -I{0}".format(
@ -63,4 +63,13 @@ def cmake_args(self):
),
),
]
if self.spec.satisfies("@6.4.0:"):
args.append(
self.define("CMAKE_C_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang")
)
args.append(
self.define(
"CMAKE_CXX_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang++"
)
)
return args

View File

@ -27,6 +27,7 @@ class Rocrand(CMakePackage):
version("develop", branch="develop", deprecated=True)
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="689bc7de81741a0b3feb9f4415a55c2cf1ae58a378fbd9b1a33769caf62bbf95")
version("6.3.3", sha256="d55be9d367af28d87d983d649329b7ef04641e74d39064b98aeee4b9980af4eb")
version("6.3.2", sha256="57f364806369ddb80761ce44187920075cf446de527dd1fbc6adbb4b4b3e9bb8")
version("6.3.1", sha256="80d86c31ec9cb40f5c5532281b42cf99fbc8a81e3ffd3bc8b3bbe4a7e509bf5f")
@ -136,6 +137,7 @@ class Rocrand(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocm-cmake@{ver}:", type="build", when=f"@{ver}")

View File

@ -48,6 +48,7 @@ class Rocsolver(CMakePackage):
version("develop", branch="develop", deprecated=True)
version("master", branch="master", deprecated=True)
version("6.4.0", sha256="48930842ac441a6a5d7e25d6c5c6ac6b5fe26549a1add49a102b374e02f5b60e")
version("6.3.3", sha256="0e8bb906513555d349b6a20cb17976402f5ea6702668efcdda595a2e2d516b46")
version("6.3.2", sha256="834f532c54bdf0e4900e73ffb0544068071976175559c8bf3c50d7a3b7230a3a")
version("6.3.1", sha256="ffa70c4dedeb20a33cf79d4ae3e95ade2ae5202f819459b19a0ebf62c380bba0")
@ -118,6 +119,7 @@ class Rocsolver(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocblas@{ver}", when=f"@{ver}")

View File

@ -41,6 +41,7 @@ class Rocsparse(CMakePackage):
conflicts("+asan", when="os=centos8")
license("MIT")
version("6.4.0", sha256="a0fb423b80da72f072a6d80b9837c80c671b5fae719f57c0e83d7e4e27d3d187")
version("6.3.3", sha256="e316d46b40e99976f4acaa097d6ebf5c2caf1ff2bd3c5b1de04c93c1dac90516")
version("6.3.2", sha256="665a85517d50e5ef37b1f953ccb17108d6a5cb30db21c5364bd50a41d44c61f2")
version("6.3.1", sha256="95c9dcc8421711f2f203a34c2830c5ac504e127922e0a83dbc68bccd5509c72f")
@ -94,6 +95,7 @@ class Rocsparse(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocprim@{ver}", when=f"@{ver}")

View File

@ -20,6 +20,7 @@ class Rocthrust(CMakePackage):
tags = ["rocm"]
maintainers("cgmb", "srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="b590b69cfecf30b66202e426ad1adcb577651d72ed9dd7425281b5668e6262fe")
version("6.3.3", sha256="564f5b2621bc707c0dda0d09702642876fc4d1b8cd9a83d1324539b768653e8b")
version("6.3.2", sha256="c3991bbd9f8b0e3ecbc18a7d014446608bfe2a3660a8d9e3dcc136d784883935")
version("6.3.1", sha256="a63dd161f4b30be7fcc4ad4184b948646233d59b5ca13c239f723ab59c607a1a")
@ -85,6 +86,7 @@ class Rocthrust(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hip@{ver}", when=f"@{ver}")
depends_on(f"rocprim@{ver}", when=f"@{ver}")

View File

@ -24,6 +24,7 @@ class RoctracerDev(CMakePackage, ROCmPackage):
libraries = ["libroctracer64"]
license("MIT")
version("6.4.0", sha256="e5c6e3b20ed3c0d2dca61ad472f9878107c9ce09a2108ff6583ae32031298022")
version("6.3.3", sha256="0d03ebd058291d584be6bf8b114292c666a799b0fd23c697e1c6cb2b6d43f990")
version("6.3.2", sha256="ca8e93fc37f4671db28df5cb7a24b48f3d4879a188e4780e45961bba3725bb8a")
version("6.3.1", sha256="89e4ab249f527131f684714c9135c69eaad1a63b7e74bae718b1617543b94426")
@ -102,6 +103,7 @@ class RoctracerDev(CMakePackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"hsa-rocr-dev@{ver}", when=f"@{ver}")
depends_on(f"rocminfo@{ver}", when=f"@{ver}")
@ -129,6 +131,7 @@ class RoctracerDev(CMakePackage, ROCmPackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on(f"rocm-core@{ver}", when=f"@{ver}")
@ -169,6 +172,7 @@ def cmake_args(self):
self.define("CMAKE_MODULE_PATH", f"{self.stage.source_path}/cmake_modules"),
self.define("HSA_RUNTIME_HSA_INC_PATH", self.spec["hsa-rocr-dev"].prefix.include),
self.define("CMAKE_POSITION_INDEPENDENT_CODE", True),
self.define("HIP_CXX_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang++"),
]
if self.spec.satisfies("@:5.4.0"):
args.append(self.define("ROCPROFILER_PATH", self.spec["rocprofiler-dev"].prefix))

View File

@ -20,6 +20,7 @@ class RoctracerDevApi(Package):
license("MIT")
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="e5c6e3b20ed3c0d2dca61ad472f9878107c9ce09a2108ff6583ae32031298022")
version("6.3.3", sha256="0d03ebd058291d584be6bf8b114292c666a799b0fd23c697e1c6cb2b6d43f990")
version("6.3.2", sha256="ca8e93fc37f4671db28df5cb7a24b48f3d4879a188e4780e45961bba3725bb8a")
version("6.3.1", sha256="89e4ab249f527131f684714c9135c69eaad1a63b7e74bae718b1617543b94426")

View File

@ -0,0 +1,28 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index eced8d8..c017349 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -132,13 +132,16 @@ find_package( hip REQUIRED )
find_package( hiprtc REQUIRED )
find_package( OpenMP REQUIRED )
-find_path(ROCM_SMI_ROOT "include/rocm_smi/rocm_smi.h"
- PATHS "${ROCM_ROOT}"
- PATH_SUFFIXES "rocm_smi"
- )
-
-find_library(ROCM_SMI_LIBRARY rocm_smi64
- PATHS "${ROCM_SMI_ROOT}/lib")
+## Check for ROCM-smi
+find_package(rocm_smi PATHS ${ROCM_PATH}/lib/cmake/rocm_smi)
+if (rocm_smi_FOUND)
+ message(STATUS "Found rocm_smi at ${ROCM_SMI_INCLUDE_DIR}")
+else()
+ message(STATUS "Checking old include directory structure for rocm_smi")
+ set(ROCM_SMI_INCLUDE_DIR "${ROCM_PATH}/rocm_smi/include")
+ set(ROCM_SMI_LIB_DIR "${ROCM_PATH}/rocm_smi/lib")
+ set(ROCM_SMI_LIBRARIES rocm_smi64)
+endif()
add_library(rocwmma INTERFACE)
target_link_libraries(rocwmma INTERFACE hip::device hip::host OpenMP::OpenMP_CXX ${ROCM_SMI_LIBRARY})

View File

@ -28,6 +28,7 @@ class Rocwmma(CMakePackage):
license("MIT")
maintainers("srekolam", "renjithravindrankannath", "afzpatel")
version("6.4.0", sha256="d95d53f70b4a2adc565bf4490515626cb7109f1d2e8a9978626610d3f178cf42")
version("6.3.3", sha256="5bfd2909cc9b4601bb83ddd79da6cfa4075afa6d6e9396d9bbe1df844163fbd2")
version("6.3.2", sha256="f9dc5e837ac30efe4600775fb309e46ed8ef112a673435663d2ef7fdf28f8f12")
version("6.3.1", sha256="9afd06c58b405dd86535ea1ca479fd6f9d717fa8665710bb64fc8027a26e6ac7")
@ -70,6 +71,7 @@ class Rocwmma(CMakePackage):
description="CMake build type",
)
depends_on("c", type="build")
depends_on("cxx", type="build") # generated
depends_on("cmake@3.16:", type="build", when="@5.2.0:")
@ -100,6 +102,7 @@ class Rocwmma(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on("rocm-cmake@%s:" % ver, type="build", when="@" + ver)
depends_on("llvm-amdgpu@" + ver, type="build", when="@" + ver)
@ -124,13 +127,15 @@ class Rocwmma(CMakePackage):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on("rocm-smi-lib@" + ver, when="@" + ver)
for tgt in itertools.chain(["auto"], amdgpu_targets):
depends_on("rocblas amdgpu_target={0}".format(tgt), when="amdgpu_target={0}".format(tgt))
patch("0001-add-rocm-smi-lib-path-for-building-tests.patch", when="@5.6:")
patch("0001-add-rocm-smi-lib-path-for-building-tests.patch", when="@5.6:6.3")
patch("0002-use-find-package-rocm-smi.patch", when="@6.4:")
def setup_build_environment(self, env: EnvironmentModifications) -> None:
env.set("CXX", self.spec["hip"].hipcc)

View File

@ -15,13 +15,13 @@ class Rpp(CMakePackage):
performance computer vision library for AMD (CPU and GPU) with HIP
and OPENCL back-ends"""
homepage = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/rpp"
git = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/rpp.git"
url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/rpp/archive/refs/tags/rocm-6.1.2.tar.gz"
homepage = "https://github.com/ROCm/rpp"
git = "https://github.com/ROCm/rpp.git"
url = "https://github.com/ROCm/rpp/archive/refs/tags/rocm-6.4.0.tar.gz"
def url_for_version(self, version):
if version >= Version("5.7.0"):
url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/rpp/archive/refs/tags/rocm-{0}.tar.gz"
url = "https://github.com/ROCm/rpp/archive/refs/tags/rocm-{0}.tar.gz"
else:
url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/rpp/archive/{0}.tar.gz"
return url.format(version)
@ -30,6 +30,7 @@ def url_for_version(self, version):
maintainers("srekolam", "afzpatel")
license("MIT")
version("6.4.0", sha256="e59e5aa6b140de062430cab03c9c2b88a3b444c53ae17c6b885898e16aefd39b")
version("6.3.3", sha256="e6b586679a3705bf6b7bb3c5852541d329bd967e110999ac59dc052b49a92cbc")
version("6.3.2", sha256="05f0e063c61f5039661a4d5a80113ebb7b9782d0958c29375a8e1e2e759b88bc")
version("6.3.1", sha256="6e7da82bf7b6d642d605370329e4e719af10bb5c6af30079b5d0b60cdcb91a48")
@ -76,7 +77,7 @@ def url_for_version(self, version):
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:")
patch("0003-include-half-through-spack-package.patch", when="@6.0:6.3")
# adds half.hpp include directory and modifies how the libjpegturbo
# library is linked for the rpp unit test
@ -177,6 +178,7 @@ def patch(self):
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
]:
depends_on("hip@" + ver, when="@" + ver)
with when("@:1.2"):
@ -193,7 +195,7 @@ def setup_run_environment(self, env: EnvironmentModifications) -> None:
def setup_build_environment(self, env: EnvironmentModifications) -> None:
if self.spec.satisfies("+asan"):
env.set("CC", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang")
env.set("CXX", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang")
env.set("CXX", f"{self.spec['llvm-amdgpu'].prefix}/bin/clang++")
env.set("ASAN_OPTIONS", "detect_leaks=0")
env.set("CFLAGS", "-fsanitize=address -shared-libasan")
env.set("CXXFLAGS", "-fsanitize=address -shared-libasan")
@ -215,4 +217,10 @@ def cmake_args(self):
"COMPILER_FOR_HIP", "{0}/bin/clang++".format(spec["llvm-amdgpu"].prefix)
)
)
if self.spec.satisfies("@6.4:"):
args.append(
self.define(
"CMAKE_CXX_COMPILER", f"{self.spec['llvm-amdgpu'].prefix}/bin/amdclang++"
)
)
return args