summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTapish Narwal <10693329+ikbuibui@users.noreply.github.com>2024-10-03 04:03:30 +0200
committerGitHub <noreply@github.com>2024-10-03 04:03:30 +0200
commitaa53007f82eab3183ff5d107e1de67daeb9bd20d (patch)
treeba12219509b36130ef7137bd3839cf2a40230d1b
parent12fd940e8111631ca33f0d06464a3df5c95eba24 (diff)
downloadspack-aa53007f82eab3183ff5d107e1de67daeb9bd20d.tar.gz
spack-aa53007f82eab3183ff5d107e1de67daeb9bd20d.tar.bz2
spack-aa53007f82eab3183ff5d107e1de67daeb9bd20d.tar.xz
spack-aa53007f82eab3183ff5d107e1de67daeb9bd20d.zip
alpaka: add v0.9.0, v1.0.0, v1.1.0, v1.2.0 (#46607)
-rw-r--r--var/spack/repos/builtin/packages/alpaka/package.py79
1 files changed, 56 insertions, 23 deletions
diff --git a/var/spack/repos/builtin/packages/alpaka/package.py b/var/spack/repos/builtin/packages/alpaka/package.py
index 29a5b2ccf9..85eaea4f38 100644
--- a/var/spack/repos/builtin/packages/alpaka/package.py
+++ b/var/spack/repos/builtin/packages/alpaka/package.py
@@ -10,7 +10,7 @@ from spack.package import *
class Alpaka(CMakePackage, CudaPackage):
"""Abstraction Library for Parallel Kernel Acceleration."""
- homepage = "https://alpaka.readthedocs.io"
+ homepage = "https://github.com/alpaka-group/alpaka"
url = "https://github.com/alpaka-group/alpaka/archive/refs/tags/0.6.0.tar.gz"
git = "https://github.com/alpaka-group/alpaka.git"
@@ -19,11 +19,35 @@ class Alpaka(CMakePackage, CudaPackage):
license("MPL-2.0-no-copyleft-exception")
version("develop", branch="develop")
- version("0.8.0", sha256="e01bc377a7657d9a3e0c5f8d3f83dffbd7d0b830283c59efcbc1fb98cf88de43")
- version("0.7.0", sha256="4b61119a7b3b073f281ba15b63430db98b77dbd9420bc290a114f80121fbdd97")
- version("0.6.0", sha256="7424ecaee3af15e587b327e983998410fa379c61d987bfe923c7e95d65db11a3")
- version("0.5.0", sha256="0ba08ea19961dd986160219ba00d6162fe7758980d88a606eff6494d7b3a6cd1")
- version("0.4.0", sha256="ad7905b13c22abcee4344ba225a65078e3f452ad45a9eda907e7d27c08315e46")
+ version("1.2.0", sha256="069ea68ac950b17cffb3a3e790973aa5115f07ab23c0247a167e815b3c6e6fa2")
+ version("1.1.0", sha256="95a8f1b706105d8a213116b6ba00e27bd904855c377f5a22a04aa0b86054dc35")
+ version("1.0.0", sha256="38223dc1ca5bcf3916ff91f8825fb8caab7047430877222847e0ceb93bffecc9")
+ version("0.9.0", sha256="3b2a5631366619fab5f3ceaf860219362f35db6c1148a601a3779a836cf29363")
+ version(
+ "0.8.0",
+ sha256="e01bc377a7657d9a3e0c5f8d3f83dffbd7d0b830283c59efcbc1fb98cf88de43",
+ deprecated=True,
+ )
+ version(
+ "0.7.0",
+ sha256="4b61119a7b3b073f281ba15b63430db98b77dbd9420bc290a114f80121fbdd97",
+ deprecated=True,
+ )
+ version(
+ "0.6.0",
+ sha256="7424ecaee3af15e587b327e983998410fa379c61d987bfe923c7e95d65db11a3",
+ deprecated=True,
+ )
+ version(
+ "0.5.0",
+ sha256="0ba08ea19961dd986160219ba00d6162fe7758980d88a606eff6494d7b3a6cd1",
+ deprecated=True,
+ )
+ version(
+ "0.4.0",
+ sha256="ad7905b13c22abcee4344ba225a65078e3f452ad45a9eda907e7d27c08315e46",
+ deprecated=True,
+ )
depends_on("cxx", type="build") # generated
@@ -33,16 +57,16 @@ class Alpaka(CMakePackage, CudaPackage):
values=(
"serial",
"threads",
- "fiber",
"tbb",
"omp2_gridblock",
"omp2_blockthread",
- "omp5",
- "oacc",
"cuda",
"cuda_only",
"hip",
"hip_only",
+ "sycl_cpu",
+ "sycl_gpu",
+ "sycl_fpga",
),
description="Backends to enable",
default="serial",
@@ -50,28 +74,33 @@ class Alpaka(CMakePackage, CudaPackage):
variant("examples", default=False, description="Build alpaka examples")
- depends_on("boost")
- depends_on("boost+fiber", when="backend=fiber")
- depends_on("cmake@3.18:", when="@0.7.0:")
+ depends_on("boost@1.65.1:", when="@0.4.0:0.8.0")
+ depends_on("boost@1.74:", when="@0.9.0:")
+
+ depends_on("cmake@3.11.4:", when="@0.4.0")
+ depends_on("cmake@3.15:", when="@0.5.0:0.7.0")
+ depends_on("cmake@3.18:", when="@0.8.0:0.9.0")
+ depends_on("cmake@3.22:", when="@1.0.0:")
# make sure no other backend is enabled if using cuda_only or hip_only
for v in (
"serial",
"threads",
- "fiber",
"tbb",
- "oacc",
"omp2_gridblock",
"omp2_blockthread",
- "omp5",
"cuda",
"hip",
+ "sycl_cpu",
+ "sycl_gpu",
+ "sycl_fpga",
):
conflicts("backend=cuda_only,%s" % v)
conflicts("backend=hip_only,%s" % v)
conflicts("backend=cuda_only,hip_only")
- for v in ("omp2_blockthread", "omp2_blockthread", "omp5"):
- conflicts("backend=oacc,%s" % v)
+
+ for v in ("sycl_cpu", "sycl_gpu", "sycl_fpga"):
+ conflicts("backend=%s" % v, when="@0.9.0:")
# todo: add conflict between cuda 11.3 and gcc 10.3.0
# see https://github.com/alpaka-group/alpaka/issues/1297
@@ -83,18 +112,12 @@ class Alpaka(CMakePackage, CudaPackage):
args.append(self.define("ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLE", True))
if self.spec.satisfies("backend=threads"):
args.append(self.define("ALPAKA_ACC_CPU_B_SEQ_T_THREADS_ENABLE", True))
- if spec.satisfies("backend=fiber"):
- args.append(self.define("ALPAKA_ACC_CPU_B_SEQ_T_FIBERS_ENABLE", True))
if spec.satisfies("backend=tbb"):
args.append(self.define("ALPAKA_ACC_CPU_B_TBB_T_SEQ_ENABLE", True))
if spec.satisfies("backend=omp2_gridblock"):
args.append(self.define("ALPAKA_ACC_CPU_B_OMP2_T_SEQ_ENABLE", True))
if spec.satisfies("backend=omp2_blockthread"):
args.append(self.define("ALPAKA_ACC_CPU_B_SEQ_T_OMP2_ENABLE", True))
- if spec.satisfies("backend=omp5"):
- args.append(self.define("ALPAKA_ACC_ANY_BT_OMP5_ENABLE", True))
- if spec.satisfies("backend=oacc"):
- args.append(self.define("ALPAKA_ACC_ANY_BT_OACC_ENABLE", True))
if spec.satisfies("backend=cuda"):
args.append(self.define("ALPAKA_ACC_GPU_CUDA_ENABLE", True))
if spec.satisfies("backend=cuda_only"):
@@ -105,6 +128,16 @@ class Alpaka(CMakePackage, CudaPackage):
if spec.satisfies("backend=hip_only"):
args.append(self.define("ALPAKA_ACC_GPU_HIP_ENABLE", True))
args.append(self.define("ALPAKA_ACC_GPU_HIP_ONLY_MODE", True))
+ if spec.satisfies("backend=sycl_cpu"):
+ args.append(self.define("ALPAKA_ACC_SYCL_ENABLE", True))
+ args.append(self.define("ALPAKA_SYCL_ONEAPI_CPU", True))
+ if spec.satisfies("backend=sycl_gpu"):
+ args.append(self.define("ALPAKA_ACC_SYCL_ENABLE", True))
+ args.append(self.define("ALPAKA_SYCL_ONEAPI_GPU", True))
+ args.append(self.define("ALPAKA_SYCL_ONEAPI_GPU_DEVICES", "spir64"))
+ if spec.satisfies("backend=sycl_fpga"):
+ args.append(self.define("ALPAKA_ACC_SYCL_ENABLE", True))
+ args.append(self.define("ALPAKA_SYCL_ONEAPI_FPGA", True))
args.append(self.define_from_variant("alpaka_BUILD_EXAMPLES", "examples"))
# need to define, as it is explicitly declared as an option by alpaka: