Open agoetz opened 6 months ago
@agoetz I took a stab at this in #328. However, going from the legacy MPI Fortran include directives to using the mpi_f08
module is more involved (see the details in the next paragraph). As a first attempt, the mentioned PR instead changes to the mpi
module.
As to converting to mpi_f08
usage, the following issues came up:
mpi_f08
module. For example, MPI_Status changed from a basic integer
datatype to type(MPI_Status)
.mpi_f08
module. For example, MPI_STATUS
in src/modules/quick_mpi_module.F90
.QUICK_MPI_STATUS
variable in src/modules/quick_mpi_module.F90
is defined as type(MPI_Status)
. Surrounding with the conditional preprocessor directive MPIV
can work around these errors for at least this source file (and maybe other source files using QUICK_MPI_STATUS
), but this raises the larger question of why MPIV
is needed as a hack to work around build system issues.src/modules/quick_method_module.f90
-- see src/modules/quick_method_module.f90).OK, we can change to the mpi
module and then work on using mpi_f08
when we have more time.
I re-opened this issue as a reminder to look into transitioning to mpi_f08
after the release of QUICK-24.03 and AmberTools 24.
Use of
mpif.h
is deprecated. Replacewith
See https://www.mpi-forum.org/docs/mpi-3.1/mpi31-report/node408.htm