20.1.19. Permanent Data Movement

PreviousUpNext
Up: Support for Fortran Next: Comparison with C Previous: Temporary Data Movement and Temporary Memory Modification

A Fortran compiler may implement permanent data movement during the execution of a Fortran program. This would require that pointers to such data are appropriately updated. An implementation with automatic garbage collection is one use case. Such permanent data movement is in conflict with MPI in several areas:


This problem can be also solved by using the ASYNCHRONOUS attribute for such buffers. This MPI standard requires that the problems with permanent data movement do not occur by imposing suitable restrictions on the MPI library together with the compiler used; see Section Requirements on Fortran Compilers.


Example Using separated variables for overlapping communication and computation to allow the protection of nonblocking communication with the ASYNCHRONOUS attribute.

Image file


PreviousUpNext
Up: Support for Fortran Next: Comparison with C Previous: Temporary Data Movement and Temporary Memory Modification


Return to MPI-4.1 Standard Index
Return to MPI Forum Home Page

(Unofficial) MPI-4.1 of November 2, 2023
HTML Generated on November 19, 2023