diff --git a/octopus/foss2021a-cuda-mpi-config.sh b/octopus/foss2021a-cuda-mpi-config.sh index 1d2ce55003c728d29ff2b0dbc665f8f976b27c39..b66dd2dd81c1effc0d0624b42f38edc3f901bcaf 100644 --- a/octopus/foss2021a-cuda-mpi-config.sh +++ b/octopus/foss2021a-cuda-mpi-config.sh @@ -7,6 +7,7 @@ export CXX="mpicxx" export CXXFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments" export FC="mpif90" export FCFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments -ffree-line-length-none -fallow-argument-mismatch -fallow-invalid-boz" +export LIBS_PSOLVER="-L$MPSD_BIGDFT_PSOLVER_ROOT/lib -lPSolver-1 -latlab-1 -lfutile-1" #HG: ugly hack to include rpath while linking # becomes necessary for spack >= 0.19, as it does not set LD_LIBRARY_PATH anymore @@ -47,6 +48,11 @@ unset try_mpsd_elpa_version --with-boost="$MPSD_BOOST_ROOT" \ --with-metis-prefix="$MPSD_METIS_ROOT" \ --with-parmetis-prefix="$MPSD_PARMETIS_ROOT" \ + --with-psolver-prefix="$MPSD_BIGDFT_PSOLVER_ROOT" \ + --with-futile-prefix="$MPSD_BIGDFT_FUTILE_ROOT" \ + --with-dftbplus-prefix="$MPSD_DFTBPLUS_ROOT" \ + --with-netcdf-prefix="$MPSD_NETCDF_FORTRAN_ROOT" \ + --with-etsf-io-prefix="$MPSD_ETSF_IO_ROOT" \ "$@" | tee 00-configure.log 2>&1 echo "-------------------------------------------------------------------------------" >&2 echo "configure output has been saved to 00-configure.log" >&2 diff --git a/octopus/foss2021a-mpi-config.sh b/octopus/foss2021a-mpi-config.sh index 59416004d1819c163f329c970c7fb6f8c0570f8f..0c5b1c181401b83050407c6085a00d69989d73d9 100644 --- a/octopus/foss2021a-mpi-config.sh +++ b/octopus/foss2021a-mpi-config.sh @@ -7,6 +7,7 @@ export CXX="mpicxx" export CXXFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments" export FC="mpif90" export FCFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments -ffree-line-length-none -fallow-argument-mismatch -fallow-invalid-boz" +export LIBS_PSOLVER="-L$MPSD_BIGDFT_PSOLVER_ROOT/lib -lPSolver-1 -latlab-1 -lfutile-1" #HG: ugly hack to include rpath while linking # becomes necessary for spack >= 0.19, as it does not set LD_LIBRARY_PATH anymore @@ -46,6 +47,11 @@ unset try_mpsd_elpa_version --with-boost="$MPSD_BOOST_ROOT" \ --with-metis-prefix="$MPSD_METIS_ROOT" \ --with-parmetis-prefix="$MPSD_PARMETIS_ROOT" \ + --with-psolver-prefix="$MPSD_BIGDFT_PSOLVER_ROOT" \ + --with-futile-prefix="$MPSD_BIGDFT_FUTILE_ROOT" \ + --with-dftbplus-prefix="$MPSD_DFTBPLUS_ROOT" \ + --with-netcdf-prefix="$MPSD_NETCDF_FORTRAN_ROOT" \ + --with-etsf-io-prefix="$MPSD_ETSF_IO_ROOT" \ "$@" | tee 00-configure.log 2>&1 echo "-------------------------------------------------------------------------------" >&2 echo "configure output has been saved to 00-configure.log" >&2 diff --git a/octopus/foss2021a-serial-config.sh b/octopus/foss2021a-serial-config.sh index c3e0fdec035f446d0ef58e4613e918df6197ea7c..18f2dc7df8c25249b45bbe66b927a87133507cc3 100644 --- a/octopus/foss2021a-serial-config.sh +++ b/octopus/foss2021a-serial-config.sh @@ -7,6 +7,7 @@ export CXX="g++" export CXXFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments" export FC="gfortran" export FCFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments -ffree-line-length-none -fallow-argument-mismatch -fallow-invalid-boz" +export LIBS_PSOLVER="-L$MPSD_BIGDFT_PSOLVER_ROOT/lib -lPSolver-1 -latlab-1 -lfutile-1" #HG: ugly hack to include rpath while linking # becomes necessary for spack >= 0.19, as it does not set LD_LIBRARY_PATH anymore @@ -39,6 +40,11 @@ unset try_mpsd_elpa_version --with-cgal="$MPSD_CGAL_ROOT" \ --with-boost="$MPSD_BOOST_ROOT" \ --with-metis-prefix="$MPSD_METIS_ROOT" \ + --with-psolver-prefix="$MPSD_BIGDFT_PSOLVER_ROOT" \ + --with-futile-prefix="$MPSD_BIGDFT_FUTILE_ROOT" \ + --with-dftbplus-prefix="$MPSD_DFTBPLUS_ROOT" \ + --with-netcdf-prefix="$MPSD_NETCDF_FORTRAN_ROOT" \ + --with-etsf-io-prefix="$MPSD_ETSF_IO_ROOT" \ "$@" | tee 00-configure.log 2>&1 echo "-------------------------------------------------------------------------------" >&2 echo "configure output has been saved to 00-configure.log" >&2 diff --git a/octopus/foss2022a-cuda-mpi-config.sh b/octopus/foss2022a-cuda-mpi-config.sh index 1d2ce55003c728d29ff2b0dbc665f8f976b27c39..b66dd2dd81c1effc0d0624b42f38edc3f901bcaf 100644 --- a/octopus/foss2022a-cuda-mpi-config.sh +++ b/octopus/foss2022a-cuda-mpi-config.sh @@ -7,6 +7,7 @@ export CXX="mpicxx" export CXXFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments" export FC="mpif90" export FCFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments -ffree-line-length-none -fallow-argument-mismatch -fallow-invalid-boz" +export LIBS_PSOLVER="-L$MPSD_BIGDFT_PSOLVER_ROOT/lib -lPSolver-1 -latlab-1 -lfutile-1" #HG: ugly hack to include rpath while linking # becomes necessary for spack >= 0.19, as it does not set LD_LIBRARY_PATH anymore @@ -47,6 +48,11 @@ unset try_mpsd_elpa_version --with-boost="$MPSD_BOOST_ROOT" \ --with-metis-prefix="$MPSD_METIS_ROOT" \ --with-parmetis-prefix="$MPSD_PARMETIS_ROOT" \ + --with-psolver-prefix="$MPSD_BIGDFT_PSOLVER_ROOT" \ + --with-futile-prefix="$MPSD_BIGDFT_FUTILE_ROOT" \ + --with-dftbplus-prefix="$MPSD_DFTBPLUS_ROOT" \ + --with-netcdf-prefix="$MPSD_NETCDF_FORTRAN_ROOT" \ + --with-etsf-io-prefix="$MPSD_ETSF_IO_ROOT" \ "$@" | tee 00-configure.log 2>&1 echo "-------------------------------------------------------------------------------" >&2 echo "configure output has been saved to 00-configure.log" >&2 diff --git a/octopus/foss2022a-mpi-config.sh b/octopus/foss2022a-mpi-config.sh index 59416004d1819c163f329c970c7fb6f8c0570f8f..b3dfc440b6ba1cdfef98df4fe4af03449cb798b0 100644 --- a/octopus/foss2022a-mpi-config.sh +++ b/octopus/foss2022a-mpi-config.sh @@ -7,7 +7,7 @@ export CXX="mpicxx" export CXXFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments" export FC="mpif90" export FCFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments -ffree-line-length-none -fallow-argument-mismatch -fallow-invalid-boz" - +export LIBS_PSOLVER="-L$MPSD_BIGDFT_PSOLVER_ROOT/lib -lPSolver-1 -latlab-1 -lfutile-1" #HG: ugly hack to include rpath while linking # becomes necessary for spack >= 0.19, as it does not set LD_LIBRARY_PATH anymore export LDFLAGS=`echo ${LIBRARY_PATH:+:$LIBRARY_PATH} | sed -e 's/:/ -Wl,-rpath=/g'` @@ -46,6 +46,11 @@ unset try_mpsd_elpa_version --with-boost="$MPSD_BOOST_ROOT" \ --with-metis-prefix="$MPSD_METIS_ROOT" \ --with-parmetis-prefix="$MPSD_PARMETIS_ROOT" \ + --with-psolver-prefix="$MPSD_BIGDFT_PSOLVER_ROOT" \ + --with-futile-prefix="$MPSD_BIGDFT_FUTILE_ROOT" \ + --with-dftbplus-prefix="$MPSD_DFTBPLUS_ROOT" \ + --with-netcdf-prefix="$MPSD_NETCDF_FORTRAN_ROOT" \ + --with-etsf-io-prefix="$MPSD_ETSF_IO_ROOT" \ "$@" | tee 00-configure.log 2>&1 echo "-------------------------------------------------------------------------------" >&2 echo "configure output has been saved to 00-configure.log" >&2 diff --git a/octopus/foss2022a-serial-config.sh b/octopus/foss2022a-serial-config.sh index 97176656ffc8ab066592021abe986e2dfa567f83..9a83fe2f713cfeab33da1523e50f3e9051a284d2 100644 --- a/octopus/foss2022a-serial-config.sh +++ b/octopus/foss2022a-serial-config.sh @@ -7,6 +7,7 @@ export CXX="g++" export CXXFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments" export FC="gfortran" export FCFLAGS="$MARCH_FLAG $OPTIMISATION_LEVEL -g -fno-var-tracking-assignments -ffree-line-length-none -fallow-argument-mismatch -fallow-invalid-boz" +export LIBS_PSOLVER="-L$MPSD_BIGDFT_PSOLVER_ROOT/lib -lPSolver-1 -latlab-1 -lfutile-1" #HG: ugly hack to include rpath while linking # becomes necessary for spack >= 0.19, as it does not set LD_LIBRARY_PATH anymore @@ -41,6 +42,11 @@ unset try_mpsd_elpa_version --with-cgal="$MPSD_CGAL_ROOT" \ --with-boost="$MPSD_BOOST_ROOT" \ --with-metis-prefix="$MPSD_METIS_ROOT" \ + --with-psolver-prefix="$MPSD_BIGDFT_PSOLVER_ROOT" \ + --with-futile-prefix="$MPSD_BIGDFT_FUTILE_ROOT" \ + --with-dftbplus-prefix="$MPSD_DFTBPLUS_ROOT" \ + --with-netcdf-prefix="$MPSD_NETCDF_FORTRAN_ROOT" \ + --with-etsf-io-prefix="$MPSD_ETSF_IO_ROOT" \ "$@" | tee 00-configure.log 2>&1 echo "-------------------------------------------------------------------------------" >&2 echo "configure output has been saved to 00-configure.log" >&2 diff --git a/toolchains/foss2021a-cuda-mpi/spack.yaml b/toolchains/foss2021a-cuda-mpi/spack.yaml index 9cb7b04e78d02c71090b79d4e91e2468bec4bebe..8131e6d8e048933e081351c008794140bd4b934c 100644 --- a/toolchains/foss2021a-cuda-mpi/spack.yaml +++ b/toolchains/foss2021a-cuda-mpi/spack.yaml @@ -30,12 +30,12 @@ spack: - cgal@5.0.3 # 5.2 - hdf5@1.12.2+mpi - netcdf-fortran@4.6.0 ^netcdf-c+mpi + - etsf-io@1.0.4 + - bigdft-futile@1.9.2+mpi + - bigdft-psolver@1.9.2+mpi~cuda # octopus does not use cuda variant + - dftbplus@21.2~arpack~dftd3~elsi~gpu~mpi~sockets~transport+api+sharedlibs~openmp # non gpu and non openmp variant based on the easybuild configuration (octopus does not use gpu variant) # - openblas@0.3.15 - # - etsf-io@1.0.4 # - libpspio@0.2.4 # missing in spack - # - bigdft-futile@1.8.3+mpi - # - bigdft-psolver@1.8.3+mpi - # - dftbplus@19.1+mpi # 21.1+serial specs: - matrix: - [$mpis] diff --git a/toolchains/foss2021a-mpi/spack.yaml b/toolchains/foss2021a-mpi/spack.yaml index 915470c520b5a929f6236bbe9e19134692762378..4cb046d7fdd12a3ef9ea8b13d9d7e0b1cc35a09f 100644 --- a/toolchains/foss2021a-mpi/spack.yaml +++ b/toolchains/foss2021a-mpi/spack.yaml @@ -29,12 +29,12 @@ spack: - cgal@5.0.3 # 5.2 - hdf5@1.12.2+mpi - netcdf-fortran@4.6.0 ^netcdf-c+mpi + - etsf-io@1.0.4 + - bigdft-futile@1.9.2+mpi + - bigdft-psolver@1.9.2+mpi + - dftbplus@21.2~arpack~dftd3~elsi~gpu+mpi~sockets~transport+api+sharedlibs~openmp # - openblas@0.3.15 - # - etsf-io@1.0.4 # - libpspio@0.2.4 # missing in spack - # - bigdft-futile@1.8.3+mpi - # - bigdft-psolver@1.8.3+mpi - # - dftbplus@19.1+mpi # 21.1+serial specs: - matrix: - [$mpis] diff --git a/toolchains/foss2021a-serial/spack.yaml b/toolchains/foss2021a-serial/spack.yaml index b7485b4ec4bf8f56f8adbad2364ec13cae1d74c1..5e32599ada4ad367b8c17e9d0312434e366f691a 100644 --- a/toolchains/foss2021a-serial/spack.yaml +++ b/toolchains/foss2021a-serial/spack.yaml @@ -22,12 +22,13 @@ spack: - cgal@5.0.3 # 5.2 - hdf5@1.12.2~mpi - netcdf-fortran@4.6.0 ^netcdf-c~~mpi + - etsf-io@1.0.4 + - bigdft-futile@1.9.2~mpi + - bigdft-psolver@1.9.2~mpi~scalapack + - dftbplus@21.2~arpack+dftd3~elsi~gpu~mpi~sockets~transport+api+sharedlibs~openmp + # - openblas@0.3.15 - # - etsf-io@1.0.4 # - libpspio@0.2.4 # missing in spack - # - bigdft-futile@1.8.3~mpi - # - bigdft-psolver@1.8.3~mpi - # - dftbplus@19.1~mpi # 21.1+serial specs: - matrix: - [$packages] diff --git a/toolchains/foss2022a-cuda-mpi/spack.yaml b/toolchains/foss2022a-cuda-mpi/spack.yaml index 5f38c4e3a6818ae2f1a52cdaebd89afdce86e1c9..8181c70d9356f4b5984f9c0f300caf5b59347b29 100644 --- a/toolchains/foss2022a-cuda-mpi/spack.yaml +++ b/toolchains/foss2022a-cuda-mpi/spack.yaml @@ -30,12 +30,12 @@ spack: - cgal@5.0.3 # 5.2 - hdf5@1.12.2+mpi - netcdf-fortran@4.6.0 ^netcdf-c+mpi + - etsf-io@1.0.4 + - bigdft-futile@1.9.2+mpi + - bigdft-psolver@1.9.2+mpi~cuda # octopus does not use cuda variant + - dftbplus@21.2~arpack~dftd3~elsi~gpu~mpi~sockets~transport+api+sharedlibs~openmp # non gpu and non openmp variant based on the easybuild configuration (octopus does not use gpu variant) # - openblas@0.3.15 - # - etsf-io@1.0.4 # - libpspio@0.2.4 # missing in spack - # - bigdft-futile@1.8.3+mpi - # - bigdft-psolver@1.8.3+mpi - # - dftbplus@19.1+mpi # 21.1+serial specs: - matrix: - [$mpis] diff --git a/toolchains/foss2022a-mpi/spack.yaml b/toolchains/foss2022a-mpi/spack.yaml index 2a7ea8bfab231b648e268264ae43a645cf464233..83ee9d194db8c88c96797a5c49dcb37f7c0f9ab8 100644 --- a/toolchains/foss2022a-mpi/spack.yaml +++ b/toolchains/foss2022a-mpi/spack.yaml @@ -29,12 +29,12 @@ spack: - cgal@5.0.3 # 5.2 - hdf5@1.12.2+mpi - netcdf-fortran@4.6.0 ^netcdf-c+mpi + - etsf-io@1.0.4 + - bigdft-futile@1.9.2+mpi + - bigdft-psolver@1.9.2+mpi + - dftbplus@21.2~arpack~dftd3~elsi~gpu+mpi~sockets~transport+api+sharedlibs~openmp # - openblas@0.3.15 - # - etsf-io@1.0.4 # - libpspio@0.2.4 # missing in spack - # - bigdft-futile@1.8.3+mpi - # - bigdft-psolver@1.8.3+mpi - # - dftbplus@19.1+mpi # 21.1+serial specs: - matrix: - [$mpis] diff --git a/toolchains/foss2022a-serial/spack.yaml b/toolchains/foss2022a-serial/spack.yaml index b7fee28c064fa5cf9c7b2649f92496f4b24237ed..023215267e3315f473cfe951729fb7ba64b10340 100644 --- a/toolchains/foss2022a-serial/spack.yaml +++ b/toolchains/foss2022a-serial/spack.yaml @@ -23,11 +23,12 @@ spack: - hdf5@1.12.2~mpi - etsf-io@1.0.4 - netcdf-fortran@4.6.0 ^netcdf-c~~mpi + - etsf-io@1.0.4 + - bigdft-futile@1.9.2~mpi + - bigdft-psolver@1.9.2~mpi~scalapack + - dftbplus@21.2~arpack+dftd3~elsi~gpu~mpi~sockets~transport+api+sharedlibs~openmp # - flexiblas@3.0.4 # - libpspio@0.2.4 # missing in spack - # - bigdft-futile@1.8.3~mpi - # - bigdft-psolver@1.8.3~mpi - # - dftbplus@19.1~mpi # 21.1+serial specs: - matrix: - [$packages] @@ -36,3 +37,6 @@ spack: concretizer: reuse: false unify: true + packages: + all: + variants: ~~mpi diff --git a/toolchains/global/global_packages.list b/toolchains/global/global_packages.list index 6b4fda4fdf619937fb1ae9c6bd5a8ce7a2a1e99f..c849ef751fe144208072c26e1c665952a559fd4b 100644 --- a/toolchains/global/global_packages.list +++ b/toolchains/global/global_packages.list @@ -1,4 +1,4 @@ -octopus@12.1%gcc@11.3.0+mpi+netcdf+parmetis+arpack+cgal+pfft+python+likwid+libyaml+elpa+nlopt \ +octopus@13.0%gcc@11.3.0+mpi+netcdf+parmetis+arpack+cgal+pfft+python+likwid+libyaml+elpa+nlopt \ ^parmetis@4.0.3 \ ^cgal@5.0.3 \ ^pfft@1.0.8-alpha \ @@ -11,7 +11,7 @@ octopus@12.1%gcc@11.3.0+mpi+netcdf+parmetis+arpack+cgal+pfft+python+likwid+libya ^hdf5@1.12.2+fortran # The octopus package has an additional "+cuda_arch=..." variant. I (Martin) do not know if using it is has any advantage. -octopus@12.1%gcc@11.3.0+mpi+cuda+netcdf+parmetis+arpack+cgal+pfft+python+likwid+libyaml+elpa+nlopt \ +octopus@13.0%gcc@11.3.0+mpi+cuda+netcdf+parmetis+arpack+cgal+pfft+python+likwid+libyaml+elpa+nlopt \ ^openmpi@4.1.4+cuda cuda_arch=70 fabrics=ucx schedulers=slurm \ ^ucx@1.13.1+cma+cuda+dc+dm+gdrcopy+ib_hw_tm+knem+mlx5_dv+rc+rdmacm+thread_multiple+ud+verbs+vfs~xpmem \ ^cuda@11.4+allow-unsupported-compilers \