dbcsr
dbcsr copied to clipboard
Support GNU toolchain and Intel MPI (MPI wrappers refactoring)
See closed PR #249.
- [ ] Refactor MPI wraps (see for example https://github.com/dftbplus/mpifx)
- [ ] Remove F77 interface
- [ ] Use F08 interface
- [ ] Investigate the possibility to add a C interface for the MPI wrappers
I really like your idea of relying on the C API instead of dealing with external .mod
files.
Of course, this issue is of similar interest for CP2K which invented the __HAS_NO_MPI_MOD
anyway. However, with CP2K and DBCSR/Makefile all paths are implemented wrt __HAS_NO_MPI_MOD
. The purpose of #249 was just to bring DBCSR/CMake to the same level. Still, I think CP2K does not document the combination Intel MPI with GNU Compiler properly (it requires mentioned -D__HAS_NO_MPI_MOD
in the ARCH file).
Yes, CP2K should adopt the same solution. It's probably not worth creating a separate library for this. Hence, we should just copy improvements from dbcsr_mpiwrap.F
to CP2K's message_passing.F
.
useful reading... https://www.mcs.anl.gov/~balaji/pubs/2014/eurompi/eurompi14.f08binding.pdf