The data are read from a file and processed before calculations begin, so I think that mapping will not work in our case.
Global Arrays look promising indeed. As I said, we need to put just a part of data to the shared section. John, do you (or may be other users) have an experience of working with GA? http://www.emsl.pnl.gov/docs/global/um/build.html *When GA runs with MPI:* MPI_Init(..) ! start MPI GA_Initialize() ! start global arrays MA_Init(..) ! start memory allocator .... do work GA_Terminate() ! tidy up global arrays MPI_Finalize() ! tidy up MPI ! exit program On Fri, Sep 24, 2010 at 13:44, Reuti <re...@staff.uni-marburg.de> wrote: > Am 24.09.2010 um 13:26 schrieb John Hearns: > > > On 24 September 2010 08:46, Andrei Fokau <andrei.fo...@neutron.kth.se> > wrote: > >> We use a C-program which consumes a lot of memory per process (up to few > >> GB), 99% of the data being the same for each process. So for us it would > be > >> quite reasonable to put that part of data in a shared memory. > > > > http://www.emsl.pnl.gov/docs/global/ > > > > Is this eny help? Apologies if I'm talking through my hat. > > I was also thinking of this when I read "data in a shared memory" (besides > approaches like http://www.kerrighed.org/wiki/index.php/Main_Page). Wasn't > this also one idea behind "High Performance Fortran" - running in parallel > across nodes even without knowing that it's across nodes at all while > programming and access all data like it's being local. > > -- Reuti > >