ccpp-framework icon indicating copy to clipboard operation
ccpp-framework copied to clipboard

capgen should be able to handle the MPI 2008 interfaces

Open gold2718 opened this issue 4 years ago • 0 comments

  • MPI F77 interfaces (use mpi) cause issues with compilers in that two calls to the same MPI routine with different data types (e.g., MPI_bcast called with MPI_REAL8 and MPI_INTEGER). The second call will be flagged as an error for passing the "wrong" type of data (integers when reals were passed in the first call).
  • Newer (Fortran90 style) MPI interfaces exist and are available using modules such as mpi_f08.
  • There is an incompatibility in the type of an MPI communicator (F77 version is an integer, F90+ versions are a special type)
  • Metadata for the MPI communicator should use the modern type (MPI_Comm)
  • A switch to capgen could enable "use" of either mpi or mpi_f08 in caps.
  • For the mpi version, capgen will internally convert MPI_Comm to integer.

gold2718 avatar Aug 10 '21 23:08 gold2718