From 0a4362bdd3c3f6d12426b38298e5080bc2f3fda0 Mon Sep 17 00:00:00 2001 From: Simon Pintarelli <1237199+simonpintarelli@users.noreply.github.com> Date: Tue, 2 Jul 2024 13:03:42 +0200 Subject: [PATCH] deploy QE on todi (#114) --- config.yaml | 1 + .../v7.3.1/gh200/environments.yaml | 15 ++++++--------- .../repo/packages/quantum-espresso/package.py | 13 +++++++++++++ 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/config.yaml b/config.yaml index 66b1464b..2399a52b 100644 --- a/config.yaml +++ b/config.yaml @@ -192,6 +192,7 @@ uenvs: gh200: v7.3.1/gh200 deploy: santis: [gh200] + todi: [gh200] sirius: "v7.5": recipes: diff --git a/recipes/quantumespresso/v7.3.1/gh200/environments.yaml b/recipes/quantumespresso/v7.3.1/gh200/environments.yaml index 23c9877a..4c563c3c 100644 --- a/recipes/quantumespresso/v7.3.1/gh200/environments.yaml +++ b/recipes/quantumespresso/v7.3.1/gh200/environments.yaml @@ -1,23 +1,20 @@ nvhpc-env: compiler: - - toolchain: llvm - spec: nvhpc - toolchain: gcc spec: gcc@12 + - toolchain: llvm + spec: nvhpc mpi: - spec: cray-mpich@8.1.29 + spec: cray-mpich@8.1.29%nvhpc gpu: cuda unify: true specs: - - quantum-espresso@7.3.1 %nvhpc +libxc +cuda +nvtx +scalapack - - cmake%gcc - - fftw%gcc - - netlib-scalapack%gcc + - quantum-espresso@7.3.1 %nvhpc +libxc +cuda +nvtx +scalapack +openmp + - netlib-scalapack + - fftw%nvhpc - nvpl-blas threads=openmp - nvpl-lapack threads=openmp - libxc%nvhpc~cuda - - libxml2%gcc - - patchelf%gcc packages: - git variants: diff --git a/recipes/quantumespresso/v7.3.1/gh200/repo/packages/quantum-espresso/package.py b/recipes/quantumespresso/v7.3.1/gh200/repo/packages/quantum-espresso/package.py index 39e9fa7d..15e0b5a8 100644 --- a/recipes/quantumespresso/v7.3.1/gh200/repo/packages/quantum-espresso/package.py +++ b/recipes/quantumespresso/v7.3.1/gh200/repo/packages/quantum-espresso/package.py @@ -296,6 +296,11 @@ class QuantumEspresso(CMakePackage, Package): conflicts("@6.5:", when="+environ", msg="6.4.x is the latest QE series supported by Environ") + # 7.3 - a compile-time problem fixed in 7.3.1 + patch_url = "https://gitlab.com/QEF/q-e/-/commit/b98ff7539e5731728d2d49ac01021a57f2594027.diff" + patch_checksum = "04c125d249d1f076abe04bc4de39bd3b44a41a78d6233b638a17bd96f91443d5" + patch(patch_url, sha256=patch_checksum, when="@=7.3+elpa build_system=cmake") + # QE 7.1 fix post-processing install part 1/2 # see: https://gitlab.com/QEF/q-e/-/merge_requests/2005 patch_url = "https://gitlab.com/QEF/q-e/-/commit/4ca3afd4c6f27afcf3f42415a85a353a7be1bd37.diff" @@ -467,6 +472,14 @@ def cmake_args(self): if spec.satisfies("@:7.1"): cmake_args.append(self.define("BLA_VENDOR", "All")) + if "^nvpl-blas" in spec and "^nvpl-lapack" in spec: + cmake_args.append(self.define("BLAS_LIBRARIES", spec["blas"].libs.joined(";"))) + cmake_args.append(self.define("LAPACK_LIBRARIES", spec["lapack"].libs.joined(";"))) + # Up to q-e@7.1 set BLA_VENDOR to All to force detection of vanilla scalapack + if spec.satisfies("@:7.1"): + cmake_args.append(self.define("BLA_VENDOR", "All")) + + if plugins: cmake_args.append(self.define("QE_ENABLE_PLUGINS", plugins)) return cmake_args