Here some explanations:
https://www.mail-archive.com/users@lists.quantum-espresso.org/msg41494.html
https://www.mail-archive.com/users@lists.quantum-espresso.org/msg40215.html
The path to the fftw3.f03 file, needed by fftw3, must be specified in
INCLUDE_FFTW or similar variables. The latest development version (soon
to be released) has somewhat better FFTW3 auto-detection
Paolo
On 23/05/2022 17:55, Robert MIJAKOVIC wrote:
# Summary
QE 7.0/GPU compilation with Autotools fails with "Can't find include
file fftw3.f03 (fft_scalar.FFTW3.f90: 40)"
# Version
qe-7.0-ReleasePack.tgz
# Environment
## Hardware
1. 2xAMD EPYC 7452
2. 4xNVIDIA A100
3. 512 GB RAM
## Software
1. OS: Rocky Linux release 8.5 (Green Obsidian)
2. NVHPC 22.3
3. OpenMPI 4.1.3 built with NVHPC 22.3
4. CUDA 11.3.1 with Driver 470.82.01
5. libxc 5.1.5
6. Autotools 20210128
# Steps to reproduce
## Configured with:
`./configure --prefix=$HOME/install/qe-7.0 --enable-openmp
--with-scalapack=no --enable-cuda-env-check=no
--with-cuda=$EBROOTNVHPC/Linux_x86_64/22.3/cuda/11.0
--with-cuda-runtime=11.0 --with-cuda-cc=80`
## Prebuild options
`cp $EBROOTLIBXC/include/*.mod Modules/mod/qe_modules && export
FPP='nvfortran -Mpreprocess -E' && export CPP='cpp -E' && export
FCPP='cpp -E' && `
## make options
`make all epw`
# Observed behavior
Compilation fails with:
```
make[1]: Entering directory
'/mnt/tier2/users/apps/scratchpad/qe-7.0/FFTXlib'
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c fft_param.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c fft_support.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c stick_base.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c fft_types.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c scatter_mod.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fft_scatter_2d.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c fft_buffers.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fft_scatter_gpu.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fft_scatter_2d_gpu.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c fft_ggen.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fft_scalar.DFTI.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fft_scalar.ESSL.f90
NVFORTRAN-W-0006-Input file empty (fft_scalar.ESSL.f90)
NVFORTRAN/x86-64 Linux 22.3-0: compilation completed with warnings
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fftw_interfaces.f90
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fft_scalar.FFTW.f90
NVFORTRAN-W-0006-Input file empty (fft_scalar.FFTW.f90)
NVFORTRAN/x86-64 Linux 22.3-0: compilation completed with warnings
mpif90 -fast -Mcache_align -Mpreprocess -Mlarge_arrays -mp -D__PGI
-D__CUDA -D__USE_CUSOLVER -D__FFTW3 -D__MPI -cuda -gpu=cc80,cuda11.0
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/include -acc
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//external/devxlib/src
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//include
-I/mnt/tier2/users/apps/scratchpad/qe-7.0//FoX/finclude -c
fft_scalar.FFTW3.f90
NVFORTRAN-F-0906-Can't find include file fftw3.f03
(fft_scalar.FFTW3.f90: 40)
NVFORTRAN/x86-64 Linux 22.3-0: compilation aborted
make[1]: *** [../make.inc:16: fft_scalar.FFTW3.o] Error 2
make[1]: Leaving directory '/mnt/tier2/users/apps/scratchpad/qe-7.0/FFTXlib'
make: *** [Makefile:196: libfft] Error 1
```
# Questions
1. What do I do wrong?
2. Why configure didn't fail if FFTW is mandatory?
3. Is it possible to configure the build system to use cuFFTinstead?
Dr. rer. nat. Robert Mijaković | HPC System Software Architect
*Lux**Provide*
3, Op der Poukewiss | L-7795 Bissen
Grand-Duchy of Luxembourg
M (+352) 691 396 474
robert.mijako...@lxp.lu
<mailto:robert.mijako...@lxp.lu> |www.luxprovide.lu
<http://www.luxprovide.lu/>
_______________________________________________
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
_______________________________________________
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users
--
Paolo Giannozzi, Dip. Scienze Matematiche Informatiche e Fisiche,
Univ. Udine, via delle Scienze 208, 33100 Udine, Italy
Phone +39-0432-558216, fax +39-0432-558222
_______________________________________________
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
_______________________________________________
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list users@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/users