Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cmssw-tools.spec
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ Requires: icc
Requires: icx
Requires: intel-vtune
Requires: ruff
%{!?without_rocm:Requires: rocm rocm-rocrand}
%{!?without_rocm:Requires: rocm}
Requires: cmsmon-tools
Requires: dip
%else
Expand Down
2 changes: 1 addition & 1 deletion fwlite-tools.spec
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# tool is added
## INITENV SET CMSSW_TOOL_CONF_ROOT $FWLITE_TOOL_CONF_ROOT

%{!?without_rocm:Requires: rocm rocm-rocrand}
%{!?without_rocm:Requires: rocm}
%{!?without_cuda:Requires: cuda cuda-compatible-runtime}

Requires: alpaka
Expand Down
11 changes: 11 additions & 0 deletions rocm-flags.file
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
### FILE rocm-flags
# define the ROCm compilation flags in a way that can be shared by SCRAM-based and regular tools

# build support for Instinct MI100 (gfx908), Instinct MI210/MI250X (gfx90a), Instinct MI300X (gfx942), Radeon Pro W6800 (gfx1030), Radeon Pro W7800/W7900 (gfx1100), and Radeon Pro W7600 (gfx1102)
%define rocm_archs gfx908:sramecc+ gfx90a:sramecc+ gfx942:sramecc+ gfx1030 gfx1100 gfx1102

# LLVM/hipcc style for listing the supported ROCm compute architectures
%define hipcc_flags_rocm_archs %(echo $(for ARCH in %rocm_archs; do echo "--offload-arch=$ARCH"; done))

# all ROCm flags
%define rocm_flags %{hipcc_flags_rocm_archs}
34 changes: 0 additions & 34 deletions rocm-rocrand.spec

This file was deleted.

71 changes: 32 additions & 39 deletions rocm.spec
Original file line number Diff line number Diff line change
Expand Up @@ -23,43 +23,39 @@
%define rocprofiler_register_pkg rocprofiler-register-%{rocprofiler_register_tag}

Source0: https://%{repository}/%{repoversion}/main/amd-smi-lib-24.7.1.60302-66.el%{rhel}.%{_arch}.rpm
Source1: https://%{repository}/%{repoversion}/main/amd-smi-lib-debuginfo-24.7.1.60302-66.el%{rhel}.%{_arch}.rpm
Source2: https://%{repository}/%{repoversion}/main/comgr-2.8.0.60302-66.el%{rhel}.%{_arch}.rpm
Source3: https://%{repository}/%{repoversion}/main/comgr-debuginfo-2.8.0.60302-66.el%{rhel}.%{_arch}.rpm
Source4: https://%{repository}/%{repoversion}/main/hip-devel-6.3.42134.60302-66.el%{rhel}.%{_arch}.rpm
Source5: https://%{repository}/%{repoversion}/main/hip-runtime-amd-6.3.42134.60302-66.el%{rhel}.%{_arch}.rpm
Source6: https://%{repository}/%{repoversion}/main/hip-runtime-amd-debuginfo-6.3.42134.60302-66.el%{rhel}.%{_arch}.rpm
Source7: https://%{repository}/%{repoversion}/main/hipcc-1.1.1.60302-66.el%{rhel}.%{_arch}.rpm
Source8: https://%{repository}/%{repoversion}/main/hipcc-debuginfo-1.1.1.60302-66.el%{rhel}.%{_arch}.rpm
Source9: https://%{repository}/%{repoversion}/main/hsa-rocr-1.14.0.60302-66.el%{rhel}.%{_arch}.rpm
Source10: https://%{repository}/%{repoversion}/main/hsa-rocr-debuginfo-1.14.0.60302-66.el%{rhel}.%{_arch}.rpm
Source11: https://%{repository}/%{repoversion}/main/openmp-extras-devel-18.63.0.60302-66.el%{rhel}.%{_arch}.rpm
Source12: https://%{repository}/%{repoversion}/main/openmp-extras-runtime-18.63.0.60302-66.el%{rhel}.%{_arch}.rpm
Source13: https://%{repository}/%{repoversion}/main/rocm-core-6.3.2.60302-66.el%{rhel}.%{_arch}.rpm
Source14: https://%{repository}/%{repoversion}/main/rocm-dbgapi-0.77.0.60302-66.el%{rhel}.%{_arch}.rpm
Source15: https://%{repository}/%{repoversion}/main/rocm-dbgapi-debuginfo-0.77.0.60302-66.el%{rhel}.%{_arch}.rpm
Source16: https://%{repository}/%{repoversion}/main/rocm-device-libs-1.0.0.60302-66.el%{rhel}.%{_arch}.rpm
Source17: https://%{repository}/%{repoversion}/main/rocm-llvm-18.0.0.25012.60302-66.el%{rhel}.%{_arch}.rpm
Source18: https://%{repository}/%{repoversion}/main/rocm-smi-lib-7.4.0.60302-66.el%{rhel}.%{_arch}.rpm
Source19: https://%{repository}/%{repoversion}/main/rocm-smi-lib-debuginfo-7.4.0.60302-66.el%{rhel}.%{_arch}.rpm
Source20: https://%{repository}/%{repoversion}/main/rocminfo-1.0.0.60302-66.el%{rhel}.%{_arch}.rpm
Source21: https://%{repository}/%{repoversion}/main/rocminfo-debuginfo-1.0.0.60302-66.el%{rhel}.%{_arch}.rpm
Source22: https://%{repository}/%{repoversion}/main/rocprim-devel-3.3.0.60302-66.el%{rhel}.%{_arch}.rpm
Source23: https://%{repository}/%{repoversion}/main/rocprofiler-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source24: https://%{repository}/%{repoversion}/main/rocprofiler-compute-3.0.0.60302-66.el%{rhel}.%{_arch}.rpm
Source25: https://%{repository}/%{repoversion}/main/rocprofiler-debuginfo-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source26: https://%{repository}/%{repoversion}/main/rocprofiler-devel-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source27: https://%{repository}/%{repoversion}/main/rocprofiler-docs-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source28: https://%{repository}/%{repoversion}/main/rocprofiler-plugins-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source29: https://%{repository}/%{repoversion}/main/rocprofiler-plugins-debuginfo-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source30: https://%{repository}/%{repoversion}/main/rocprofiler-register-0.4.0.60302-66.el%{rhel}.%{_arch}.rpm
Source31: https://%{repository}/%{repoversion}/main/rocprofiler-systems-0.1.1.60302-66.el%{rhel}.%{_arch}.rpm
Source32: https://%{repository}/%{repoversion}/main/rocprofiler-systems-debuginfo-0.1.1.60302-66.el%{rhel}.%{_arch}.rpm
Source33: https://%{repository}/%{repoversion}/main/rocthrust-devel-3.3.0.60302-66.el%{rhel}.%{_arch}.rpm

Source1: https://%{repository}/%{repoversion}/main/comgr-2.8.0.60302-66.el%{rhel}.%{_arch}.rpm
Source2: https://%{repository}/%{repoversion}/main/hip-devel-6.3.42134.60302-66.el%{rhel}.%{_arch}.rpm
Source3: https://%{repository}/%{repoversion}/main/hip-runtime-amd-6.3.42134.60302-66.el%{rhel}.%{_arch}.rpm
Source4: https://%{repository}/%{repoversion}/main/hipcc-1.1.1.60302-66.el%{rhel}.%{_arch}.rpm
Source5: https://%{repository}/%{repoversion}/main/hsa-rocr-1.14.0.60302-66.el%{rhel}.%{_arch}.rpm
Source6: https://%{repository}/%{repoversion}/main/hsa-rocr-devel-1.14.0.60302-66.el%{rhel}.%{_arch}.rpm
Source7: https://%{repository}/%{repoversion}/main/openmp-extras-devel-18.63.0.60302-66.el%{rhel}.%{_arch}.rpm
Source8: https://%{repository}/%{repoversion}/main/openmp-extras-runtime-18.63.0.60302-66.el%{rhel}.%{_arch}.rpm
Source9: https://%{repository}/%{repoversion}/main/rocm-core-6.3.2.60302-66.el%{rhel}.%{_arch}.rpm
Source10: https://%{repository}/%{repoversion}/main/rocm-dbgapi-0.77.0.60302-66.el%{rhel}.%{_arch}.rpm
Source11: https://%{repository}/%{repoversion}/main/rocm-device-libs-1.0.0.60302-66.el%{rhel}.%{_arch}.rpm
Source12: https://%{repository}/%{repoversion}/main/rocm-llvm-18.0.0.25012.60302-66.el%{rhel}.%{_arch}.rpm
Source13: https://%{repository}/%{repoversion}/main/rocm-smi-lib-7.4.0.60302-66.el%{rhel}.%{_arch}.rpm
Source14: https://%{repository}/%{repoversion}/main/rocminfo-1.0.0.60302-66.el%{rhel}.%{_arch}.rpm
Source15: https://%{repository}/%{repoversion}/main/rocprim-devel-3.3.0.60302-66.el%{rhel}.%{_arch}.rpm
Source16: https://%{repository}/%{repoversion}/main/rocprofiler-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source17: https://%{repository}/%{repoversion}/main/rocprofiler-compute-3.0.0.60302-66.el%{rhel}.%{_arch}.rpm
Source18: https://%{repository}/%{repoversion}/main/rocprofiler-devel-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source19: https://%{repository}/%{repoversion}/main/rocprofiler-docs-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source20: https://%{repository}/%{repoversion}/main/rocprofiler-plugins-2.0.60302.60302-66.el%{rhel}.%{_arch}.rpm
Source21: https://%{repository}/%{repoversion}/main/rocprofiler-register-0.4.0.60302-66.el%{rhel}.%{_arch}.rpm
Source22: https://%{repository}/%{repoversion}/main/rocprofiler-systems-0.1.1.60302-66.el%{rhel}.%{_arch}.rpm
Source23: https://%{repository}/%{repoversion}/main/hipcub-devel-3.3.0.60302-66.el%{rhel}.%{_arch}.rpm
Source24: https://%{repository}/%{repoversion}/main/rocthrust-devel-3.3.0.60302-66.el%{rhel}.%{_arch}.rpm
Source25: https://%{repository}/%{repoversion}/main/hiprand-2.11.1.60302-66.el%{rhel}.%{_arch}.rpm
Source26: https://%{repository}/%{repoversion}/main/hiprand-devel-2.11.1.60302-66.el%{rhel}.%{_arch}.rpm
Source27: https://%{repository}/%{repoversion}/main/rocrand-3.2.0.60302-66.el%{rhel}.%{_arch}.rpm
Source28: https://%{repository}/%{repoversion}/main/rocrand-devel-3.2.0.60302-66.el%{rhel}.%{_arch}.rpm
Source29: https://%{repository}/%{repoversion}/main/rccl-2.21.5.60302-66.el%{rhel}.%{_arch}.rpm
Source30: https://%{repository}/%{repoversion}/main/rccl-devel-2.21.5.60302-66.el%{rhel}.%{_arch}.rpm

# sources for rocprofiler-register
Source34: git+https://github.com/ROCm/rocprofiler-register.git?obj=%{rocprofiler_register_branch}/%{rocprofiler_register_tag}&export=%{rocprofiler_register_pkg}&submodules=1&output=/%{rocprofiler_register_pkg}.tgz
Source99: git+https://github.com/ROCm/rocprofiler-register.git?obj=%{rocprofiler_register_branch}/%{rocprofiler_register_tag}&export=%{rocprofiler_register_pkg}&submodules=1&output=/%{rocprofiler_register_pkg}.tgz

BuildRequires: gmake cmake
Requires: numactl zstd fmt
Expand All @@ -70,7 +66,7 @@ AutoReq: no

# unpack rocprofiler-register
mkdir src
tar xavf %{SOURCE34} -C src
tar xavf %{SOURCE99} -C src

%build
rpm2cpio %{SOURCE0} | cpio -idmv
Expand Down Expand Up @@ -104,9 +100,6 @@ rpm2cpio %{SOURCE27} | cpio -idmv
rpm2cpio %{SOURCE28} | cpio -idmv
rpm2cpio %{SOURCE29} | cpio -idmv
rpm2cpio %{SOURCE30} | cpio -idmv
rpm2cpio %{SOURCE31} | cpio -idmv
rpm2cpio %{SOURCE32} | cpio -idmv
rpm2cpio %{SOURCE33} | cpio -idmv

# build rocprofiler-register
sed -i -e 's|add_subdirectory(external)|find_package(fmt REQUIRED)\nadd_subdirectory(external)|' src/%{rocprofiler_register_pkg}/CMakeLists.txt
Expand Down
1 change: 1 addition & 0 deletions scram-tools.file/tool-env.file
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ export COMPILER_WARNINGS="%{?warning_flags}"
export ORACLE_ENV_ROOT=""
export CUDA_FLAGS="%{nvcc_cuda_flags}"
export CUDA_HOST_CXXFLAGS="%{nvcc_flags_stdcxx}"
export ROCM_FLAGS="%{rocm_flags}"
export LTO_FLAGS="%{?lto_build_flags}"
export PGO_FLAGS="%{?pgo_build_flags}"
if [ $(echo ' %requiredtools ' | grep ' python3 ' |wc -l) -gt 0 ] ; then export PYTHON3_LIB_SITE_PACKAGES ; fi
Expand Down
14 changes: 0 additions & 14 deletions scram-tools.file/tools/rocm-rocrand/rocm-rocrand.xml

This file was deleted.

5 changes: 5 additions & 0 deletions scram-tools.file/tools/rocm/rocm-rccl.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<tool name="rocm-rccl" version="@TOOL_VERSION@" revision="1">
<info url="https://rocm.docs.amd.com/projects/rccl/en/docs-@TOOL_VERSION@/"/>
<use name="rocm"/>
<lib name="rccl"/>
</tool>
6 changes: 6 additions & 0 deletions scram-tools.file/tools/rocm/rocm-rocrand.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<tool name="rocm-rocrand" version="@TOOL_VERSION@" revision="1">
<info url="https://rocm.docs.amd.com/projects/rocRAND/en/docs-@TOOL_VERSION@/"/>
<use name="rocm"/>
<lib name="hiprand"/>
<lib name="rocrand"/>
</tool>
12 changes: 4 additions & 8 deletions scram-tools.file/tools/rocm/rocm.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<tool name="rocm" version="@TOOL_VERSION@" revision="3">
<info url="https://docs.amd.com/"/>
<tool name="rocm" version="@TOOL_VERSION@" revision="4">
<info url="https://rocm.docs.amd.com/en/docs-@TOOL_VERSION@/"/>
<lib name="amdhip64"/>
<lib name="hsa-runtime64"/>
<lib name="rocm_smi64"/>
Expand All @@ -11,12 +11,7 @@
<environment name="INCLUDE" default="$ROCM_BASE/include"/>
</client>
<flags CPPDEFINES="__HIP_PLATFORM_HCC__ __HIP_PLATFORM_AMD__"/>
<flags ROCM_FLAGS="--offload-arch=gfx908:sramecc+:xnack-"/> <!-- Instinct MI100 -->
<flags ROCM_FLAGS="--offload-arch=gfx90a:sramecc+:xnack-"/> <!-- Instinct MI210/MI250 -->
<flags ROCM_FLAGS="--offload-arch=gfx942:sramecc+:xnack-"/> <!-- Instinct MI300X -->
<flags ROCM_FLAGS="--offload-arch=gfx1030"/> <!-- Radeon Pro W6800 -->
<flags ROCM_FLAGS="--offload-arch=gfx1100"/> <!-- Radeon Pro W7800/W7900 -->
<flags ROCM_FLAGS="--offload-arch=gfx1102"/> <!-- Radeon Pro W7600 -->
<flags ROCM_FLAGS="@ROCM_FLAGS@"/>
<flags ROCM_FLAGS="-fgpu-rdc --target=@COMPILER_HOST@ --gcc-toolchain=$(COMPILER_PATH)"/>
%if "%{default_microarch_name}"
%if "%{default_microarch_name}" != "%{min_microarch_name}"
Expand All @@ -28,5 +23,6 @@
<flags SYSTEM_INCLUDE="1"/>
<runtime name="ROOT_INCLUDE_PATH" value="$INCLUDE" type="path" join="1"/>
<runtime name="PATH" value="$ROCM_BASE/bin" type="path"/>
<runtime name="HSA_XNACK" value="1"/>
<use name="fmt"/>
</tool>
1 change: 1 addition & 0 deletions toolflags.file
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
## INCLUDE compilation_flags
## INCLUDE compilation_flags_lto
## INCLUDE cuda-flags
## INCLUDE rocm-flags
## INCLUDE cpp-standard
## INCLUDE warning-flags
## INCLUDE vecgeom-opt
Expand Down