OpenMPI version: 1.3.3


Platform: IBM P5


Built OpenMPI 64-bit (i.e., CFLAGS=-q64, CXXFLAGS=-q64, -FFLAGS=-q64, -FCFLAGS=-q64)


FORTRAN 90 test program:

-          Create a large array (3.6 GB of 32-bit INTs)

-          Initialize MPI

-          Create a large window to encompass large array (3.6 GB)

-          Have PE 0 get 1 32-bit INT from PE1

o   Lock the window


o   Unlock the window

-          Free the window

-          Finalize MPI


Built FORTRAN 90 test program 64-bit using OpenMPI wrapper compiler (mpif90 –q64).


Why would this MPI_GET work fine with displacements all the way up to just under 2 GB, and then fail as soon as the displacement hits 2 GB?


The MPI_GET succeeds with a displacement of 2147483644 (4 bytes less than 2 GB).


I get a segmentation fault (address not mapped) when the displacement is 2147483648 (2 GB) or larger.