diff --git a/spack/package.py b/spack/package.py index 14fe8ea1408d282e4521ef3755634bb994baf0bc..f39f7c102392fdcd1a06c91623f06c3dc203ec33 100644 --- a/spack/package.py +++ b/spack/package.py @@ -56,6 +56,12 @@ class Arbor(CMakePackage, CudaPackage): default=False, description="Enable vectorization of computational kernels", ) + variant( + "gpu_rng", + default=False, + description="Use GPU generated random numbers -- not bitwise equal to CPU version", + when="+cuda", + ) # https://docs.arbor-sim.org/en/latest/install/build_install.html#compilers conflicts("%gcc@:8") @@ -109,6 +115,7 @@ class Arbor(CMakePackage, CudaPackage): if "+cuda" in self.spec: args.append("-DARB_GPU=cuda") + args.append(self.define_from_variant("ARB_USE_GPU_RNG", "gpu_rng")) # query spack for the architecture-specific compiler flags set by its wrapper args.append("-DARB_ARCH=none")