Compare commits

...

2 Commits

Author SHA1 Message Date
jordialcaraz
f00c80eae8 patch tau@2.34 +rocm rocprofiler support 2025-05-19 16:54:33 -07:00
Barry
82978251fa variorum: fix ppc and arm builds 2025-05-13 08:58:54 -07:00
3 changed files with 83 additions and 27 deletions

View File

@ -206,6 +206,8 @@ class Tau(Package):
# https://github.com/UO-OACISS/tau2/commit/1d2cb6b
patch("tau-rocm-disable-llvm-plugin.patch", when="@2.33.2 +rocm")
# https://github.com/UO-OACISS/tau2/commit/523df968dd17ffad74f0d944ecbb958ba0e8c6e8
patch("tau-rocm-disable-rocprofiler-default.patch", when="@2.34 +rocm")
filter_compiler_wrappers("Makefile", relative_root="include")
filter_compiler_wrappers("Makefile.tau*", relative_root="lib")

View File

@ -0,0 +1,21 @@
spack-src/configure spack-src-patched/configurediff -ruN
--- spack-src/configure 2024-11-05 17:07:38.000000000 -0800
+++ spack-src-patched/configure 2025-05-19 08:56:22.311253328 -0700
@@ -3191,7 +3191,7 @@
#fixmakeargs="$fixmakeargs rocmdir=$rocmdir ROCM ROCPROFILER"
fixmakeargs="$fixmakeargs rocmdir=$rocmdir ROCM"
rocm=yes
- rocprofiler=yes
+ #rocprofiler=yes
tauoptions="${tauoptions}-rocm"
pthread=yes
shift
@@ -3207,7 +3207,7 @@
rocm=yes
fi
#fixmakeargs="$fixmakeargs ROCPROFILER"
- rocprofiler=yes
+ #rocprofiler=yes
tauoptions="${tauoptions}-rocm"
pthread=yes
shift

View File

@ -12,14 +12,14 @@ class Variorum(CMakePackage):
homepage = "https://variorum.readthedocs.io"
git = "https://github.com/llnl/variorum.git"
url = "https://github.com/llnl/variorum/archive/v0.1.0.tar.gz"
url = "https://github.com/llnl/variorum/archive/v0.8.0.tar.gz"
maintainers("slabasan", "rountree")
license("MIT")
version("dev", branch="dev")
version("0.8.0", sha256="0e7288d523488b2a585af8ffeb7874721526f46df563b21fc51e8846bf65f7d8")
version("0.8.0", sha256="0e7288d523488b2a585af8ffeb7874721526f46df563b21fc51e8846bf65f7d8", preferred=True)
version("0.7.0", sha256="36ec0219379ea2b7c8f9770b3271335c776ff5a3de71585714c33356345b2f0c")
version("0.6.0", sha256="c0928a0e6901808ee50142d1034de15edc2c90d7d1b9fbce43757226e7c04306")
version("0.5.0", sha256="de331762e7945ee882d08454ff9c66436e2b6f87f761d2b31c6ab3028723bfed")
@ -29,33 +29,38 @@ class Variorum(CMakePackage):
version("0.2.0", sha256="b8c010b26aad8acc75d146c4461532cf5d9d3d24d6fc30ee68f6330a68e65744")
version("0.1.0", tag="v0.1.0", commit="7747ee48cc60567bb3f09e732f24c041ecac894d")
depends_on("c", type="build") # generated
depends_on("cxx", type="build") # generated
depends_on("fortran", type="build") # generated
############
# Variants #
############
variant("shared", default=True, description="Build Variorum as shared lib")
variant("docs", default=False, description="Build Variorum's documentation")
variant(
"build_type",
default="Release",
description="CMake build type",
values=("Debug", "Release"),
)
variant( "cpu", default="Intel", description="Supported CPU architecture",
values=("Intel", "INTEL", "intel", "AMD", "amd", "IBM", "ibm", "ARM", "arm"), multi=False )
variant( "gpu", default="none", description="Supported GPU architecture",
values=("Intel", "INTEL", "intel", "AMD", "amd", "NVIDIA", "nvidia", "none" ), multi=False )
########################
# Package dependencies #
########################
depends_on("cmake@2.8:", type="build")
depends_on("hwloc")
depends_on("jansson", type="link")
#########################
# Documentation related #
#########################
depends_on("py-sphinx", when="+docs", type="build")
# cuda@10.1.243 works, as does 12.4.1
depends_on("cuda", type=("build","link"), when="gpu=nvidia") # required for nvml
depends_on("cuda", type=("build","link"), when="gpu=NVIDIA")
depends_on("hwloc +nvml", type=("build", "link"), when="gpu=nvidia")
depends_on("hwloc +nvml", type=("build", "link"), when="gpu=NVIDIA")
depends_on("hwloc", type=("build", "link"), when="gpu=none")
depends_on("hwloc", type=("build", "link"), when="gpu=AMD")
depends_on("hwloc", type=("build", "link"), when="gpu=amd")
root_cmakelists_dir = "src"
@ -65,31 +70,59 @@ def cmake_args(self):
cmake_args.append("-DJANSSON_DIR={0}".format(spec["jansson"].prefix))
# The examples remain in the build directory
cmake_args.append("-DBUILD_EXAMPLES=ON")
cmake_args.append("-DBUILD_TESTS=ON")
if spec.satisfies("%cce"):
cmake_args.append("-DCMAKE_C_FLAGS=-fcommon")
cmake_args.append("-DCMAKE_CCC_FLAGS=-fcommon")
cmake_args.append("-DCMAKE_Fortran_FLAGS=-ef")
if "+shared" in spec:
cmake_args.append("-DBUILD_SHARED_LIBS=ON")
else:
cmake_args.append("-DBUILD_SHARED_LIBS=OFF")
# CPU architecture selection.
if any( s in spec for s in ("cpu_Intel", "cpu=INTEL", "cpu=intel") ):
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=ON")
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=OFF")
elif any( s in spec for s in ("cpu_AMD", "cpu=amd") ):
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=ON")
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=OFF")
elif any( s in spec for s in ("cpu_IBM", "cpu=ibm") ):
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=ON")
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=OFF")
elif any( s in spec for s in ("cpu_ARM", "cpu=arm") ):
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=OFF")
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=ON")
if "+docs" in spec:
cmake_args.append("-DBUILD_DOCS=ON")
sphinx_build_exe = join_path(spec["py-sphinx"].prefix.bin, "sphinx-build")
cmake_args.append("-DSPHINX_EXECUTABLE=" + sphinx_build_exe)
# GPU architecture selection.
if any( s in spec for s in ("gpu_Intel", "gpu=INTEL", "gpu=intel") ):
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=ON")
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=OFF")
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=OFF")
elif any( s in spec for s in ("gpu_AMD", "gpu=amd") ):
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=OFF")
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=ON")
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=OFF")
elif any( s in spec for s in ("gpu_NVIDIA", "gpu=nvidia") ):
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=OFF")
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=OFF")
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=ON")
cmake_args.append("-DNVML_DIR={0}".format(spec["cuda"].prefix))
else:
cmake_args.append("-DBUILD_DOCS=OFF")
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=OFF")
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=OFF")
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=OFF")
if "build_type=Debug" in spec:
cmake_args.append("-DVARIORUM_DEBUG=ON")
else:
cmake_args.append("-DVARIORUM_DEBUG=OFF")
if self.run_tests:
cmake_args.append("-DBUILD_TESTS=ON")
else:
cmake_args.append("-DBUILD_TESTS=OFF")
return cmake_args