Add dlaf variant to cp2k (#40702)
This commit is contained in:
parent
1ecb100e43
commit
f4bbc0dbd2
@ -83,6 +83,13 @@ class Cp2k(MakefilePackage, CudaPackage, CMakePackage, ROCmPackage):
|
||||
description="Enable optimised diagonalisation routines from ELPA",
|
||||
when="@6.1:",
|
||||
)
|
||||
variant(
|
||||
"dlaf",
|
||||
default=False,
|
||||
description="Enable DLA-Future eigensolver and Cholesky decomposition",
|
||||
# TODO: Pin version when integrated in a release
|
||||
when="@master build_system=cmake",
|
||||
)
|
||||
variant(
|
||||
"sirius",
|
||||
default=False,
|
||||
@ -226,6 +233,15 @@ class Cp2k(MakefilePackage, CudaPackage, CMakePackage, ROCmPackage):
|
||||
depends_on("elpa@2021.11.001:", when="@9.1:")
|
||||
depends_on("elpa@2023.05.001:", when="@2023.2:")
|
||||
|
||||
with when("+dlaf"):
|
||||
conflicts(
|
||||
"~mpi", msg="DLA-Future requires MPI. Only the distributed eigensolver is available."
|
||||
)
|
||||
depends_on("dla-future@0.2.1: +scalapack")
|
||||
depends_on("dla-future ~cuda~rocm", when="~cuda~rocm")
|
||||
depends_on("dla-future +cuda", when="+cuda")
|
||||
depends_on("dla-future +rocm", when="+rocm")
|
||||
|
||||
with when("+plumed"):
|
||||
depends_on("plumed+shared")
|
||||
depends_on("plumed+mpi", when="+mpi")
|
||||
@ -945,6 +961,7 @@ def cmake_args(self):
|
||||
args += [
|
||||
self.define_from_variant("CP2K_ENABLE_REGTESTS", "enable_regtests"),
|
||||
self.define_from_variant("CP2K_USE_ELPA", "elpa"),
|
||||
self.define_from_variant("CP2K_USE_DLAF", "dlaf"),
|
||||
self.define_from_variant("CP2K_USE_LIBINT2", "libint"),
|
||||
self.define_from_variant("CP2K_USE_SIRIUS", "sirius"),
|
||||
self.define_from_variant("CP2K_USE_SPLA", "spla"),
|
||||
|
Loading…
Reference in New Issue
Block a user