Open MPI logo

Open MPI User's Mailing List Archives

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

Subject: Re: [OMPI users] Sharing (not copying) data with OpenMPI?
From: jody (jody.xha_at_[hidden])
Date: 2012-04-17 02:26:57


Hi

Thank You all for your replies.
I'll certainly look into the MPI 3.0 RMA link (out of pure interest)
but i am afraid i can't go bleeding edge, because my application
will also have to run on an other machine.

As to OpenMP: i already make use of OpenMP in some places (for
instance for the creation of the large data block),
but unfortunately my main application is not well suited for OpenMP
parallelization..

I guess i'll have to take more detailed look at my problem to see if i
can restructure it in a good way...

Thank You
  Jody

On Mon, Apr 16, 2012 at 11:16 PM, Brian Austin <brianmaustin_at_[hidden]> wrote:
> Maybe you meant to search for OpenMP instead of Open-MPI.
> You can achieve something close to what you want by using OpenMP for on-node
> parallelism and MPI for inter-node communication.
> -Brian
>
>
>
> On Mon, Apr 16, 2012 at 11:02 AM, George Bosilca <bosilca_at_[hidden]>
> wrote:
>>
>> No currently there is no way in MPI (and subsequently in Open MPI) to
>> achieve this. However, in the next version of the MPI standard there will be
>> a function allowing processes to shared a memory segment
>> (https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/284).
>>
>> If you like living on the bleeding edge, you can try Brian's branch
>> implementing the MPI 3.0 RMA operations (including the shared memory
>> segment) from http://svn.open-mpi.org/svn/ompi/tmp-public/mpi3-onesided/.
>>
>>  george.
>>
>> On Apr 16, 2012, at 09:52 , jody wrote:
>>
>> > Hi
>> >
>> > In my application i have to generate a large block of data (several
>> > gigs) which subsequently has to be accessed by all processes (read
>> > only),
>> > Because of its size, it would take quite some time to serialize and
>> > send the data to the different processes. Furthermore, i risk
>> > running out of memory if this data is instantiated more than once on
>> > one machine.
>> >
>> > Does OpenMPI offer some way of sharing data between processes (on the
>> > same machine) without needing to send (and therefore copy) it?
>> >
>> > Or would i have to do this by means of creating shared memory, writing
>> > to it, and then make it accessible for reading by the processes?
>> >
>> > Thank You
>> >  Jody
>> > _______________________________________________
>> > users mailing list
>> > users_at_[hidden]
>> > http://www.open-mpi.org/mailman/listinfo.cgi/users
>>
>>
>> _______________________________________________
>> users mailing list
>> users_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users