Add interface for every MPI function call
Add interface for every MPI function call
There are some MPI calls that are not using the proper interfaces. Some of them because they are not using mpi_siesta module and others not importing all required interfaces. This solve a bug in matel_table.F90 and matel_ylm.F90, where the implicit interface had problems dealing with MPI_IN_PLACE communications. I found run time problems in these calls when siesta is compiled with intel 2023 and GNU 11.3.1.
I have compiled SIESTA with "-Wall -Wextra -Wimplicit-interface -fcheck=all" in order to show all places where the compiler is using an implicit interface for MPI calls. There are some parts of the code that was to checked:
ELPA=ON; PEXSI=OFF; ELSI=ON; FFTW=OFF DFTD3=ON; FLOOK=OFF; GRID_SP=OFF; WANNIER90=ON; ELSI_PEXSI=OFF; OPENMP=ON; MPI=ON
Details
Please detail what this MR introduces
- Describe in details what this MR does? (link to the issue by writing # here)
- Does this MR change the behaviour of any fdf-flags? If so, ensure this is documented in the manual
- If new fdf-flags are added, please add thorough descriptions to the manual
-
create a new file in
./Changes/<MR-Number>.<TYPE>.mdwith content, see e.g../Changes/README.mdfor details. - if this breaks compatibility, add mentions to the Docs/compatibility.tex
Why is it needed
It solves a bug. Fixes #564 (closed)
Authors
Co-authored-by: rgrima rogeli.grima@bsc.es