Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: [OMPI users] MPI_GET beyond 2 GB displacement
From: Price, Brian M (N-KCI) (brian.m.price_at_[hidden])
Date: 2010-06-29 13:46:50


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 MPI_GET

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.

Thanks.