Skip to content
Snippets Groups Projects
Unverified Commit 7df76156 authored by Cody Melton's avatar Cody Melton Committed by GitHub
Browse files

Qmcpack: new variant +afqmc (#14882)

* add preliminary afqmc support in qmcpack

* afqmc updates

* fix spack typos

* edit AFQMC to only allow up 3.7 or above

* added NCCL library support for AFQMC build

* add CMAKE args for BUILD_AFQMC_WITH_NCCL

* update for just AFQMC support. No AFQMC+GPU support

* remove nccl for afqmc

* flake8 whitespace fix
parent 8a4f02fb
No related branches found
No related tags found
No related merge requests found
...@@ -57,6 +57,8 @@ class Qmcpack(CMakePackage, CudaPackage): ...@@ -57,6 +57,8 @@ class Qmcpack(CMakePackage, CudaPackage):
description='Install with Matplotlib (long installation time)') description='Install with Matplotlib (long installation time)')
variant('qe', default=False, variant('qe', default=False,
description='Install with patched Quantum Espresso 6.4.1') description='Install with patched Quantum Espresso 6.4.1')
variant('afqmc', default=False,
description='Install with AFQMC support')
# cuda variant implies mixed precision variant by default, but there is # cuda variant implies mixed precision variant by default, but there is
# no way to express this in variant syntax, need something like # no way to express this in variant syntax, need something like
...@@ -94,6 +96,12 @@ class Qmcpack(CMakePackage, CudaPackage): ...@@ -94,6 +96,12 @@ class Qmcpack(CMakePackage, CudaPackage):
conflicts('%pgi@:17', when='@3.6.0:', msg=compiler_warning) conflicts('%pgi@:17', when='@3.6.0:', msg=compiler_warning)
conflicts('%llvm@:3.4', when='@3.6.0:', msg=compiler_warning) conflicts('%llvm@:3.4', when='@3.6.0:', msg=compiler_warning)
conflicts('+afqmc', when='@:3.6.0', msg='AFQMC not recommended before v3.7')
conflicts('+afqmc', when='~mpi', msg='AFQMC requires building with +mpi')
conflicts('+afqmc', when='%gcc@:6.0', msg='AFQMC code requires gcc@6.1 or greater')
conflicts('+afqmc', when='%clang@:4.0', msg='AFQMC code requires clang 4.1 or greater')
conflicts('+afqmc', when='%intel@:18', msg='AFQMC code requires intel19 or greater')
# Prior to QMCPACK 3.5.0 Intel MKL was not properly detected with # Prior to QMCPACK 3.5.0 Intel MKL was not properly detected with
# non-Intel compilers without a Spack-based hack. This hack # non-Intel compilers without a Spack-based hack. This hack
# had the potential for negative side effects and led to more # had the potential for negative side effects and led to more
...@@ -231,6 +239,11 @@ def cmake_args(self): ...@@ -231,6 +239,11 @@ def cmake_args(self):
else: else:
args.append('-DQMC_COMPLEX=0') args.append('-DQMC_COMPLEX=0')
if '+afqmc' in spec:
args.append('-DBUILD_AFQMC=1')
else:
args.append('-DBUILD_AFQMC=0')
# When '-DQMC_CUDA=1', CMake automatically sets: # When '-DQMC_CUDA=1', CMake automatically sets:
# '-DQMC_MIXED_PRECISION=1' # '-DQMC_MIXED_PRECISION=1'
# #
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment