Open MPI logo

Open MPI User's Mailing List Archives

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

Subject: Re: [OMPI users] Onesided + derived datatypes
From: George Bosilca (bosilca_at_[hidden])
Date: 2008-12-11 19:32:56


Dorian,

You are right, the datatype generated using the block_index function
is a legal data-type. We wrongly determined some overlapping regions
in the description [which is illegal based on the MPI standard]. The
detection of such overlapping regions being a very expensive process
if we don't want any false positives (such as your datatype), I prefer
to remove it completely.

To keep it short I just committed a patch (r20120) in the trunk, and
I'll take care to move it in the 1.3 and the 1.2.9.

   Thanks for your help,
     george.

On Dec 10, 2008, at 18:07 , doriankrause wrote:

> Hi List,
>
> I have a MPI program which uses one sided communication with derived
> datatypes (MPI_Type_create_indexed_block). I developed the code with
> MPICH2 and unfortunately didn't thought about trying it out with
> OpenMPI. Now that I'm "porting" the Application to OpenMPI I'm facing
> some problems. On the most machines I get an SIGSEGV in MPI_Win_fence,
> sometimes an invalid datatype shows up. I ran the program in Valgrind
> and didn't get anything valuable. Since I can't see a reason for this
> problem (at least if I understand the standard correctly), I wrote the
> attached testprogram.
>
> Here are my experiences:
>
> * If I compile without ONESIDED defined, everything works and V1 and
> V2
> give the same results
> * If I compile with ONESIDED and V2 defined (MPI_Type_contiguous) it
> works.
> * ONESIDED + V1 + O2: No errors but obviously nothing is send? (Am I
> in
> assuming that V1+O2 and V2 should be equivalent?)
> * ONESIDED + V1 + O1:
> [m02:03115] *** An error occurred in MPI_Put
> [m02:03115] *** on win
> [m02:03115] *** MPI_ERR_TYPE: invalid datatype
> [m02:03115] *** MPI_ERRORS_ARE_FATAL (goodbye)
>
> I didn't get a segfault as in the "real life example" but if
> ompitest.cc
> is correct it means that OpenMPI is buggy when it comes to onesided
> communication and (some) derived datatypes, so that it is probably not
> of problem in my code.
>
> I'm using OpenMPI-1.2.8 with the newest gcc 4.3.2 but the same
> behaviour
> can be be seen with gcc-3.3.1 and intel 10.1.
>
> Please correct me if ompitest.cc contains errors. Otherwise I would be
> glad to hear how I should report these problems to the develepors (if
> they don't read this).
>
> Thanks + best regards
>
> Dorian
>
>
>
>
> <ompitest.tar.gz>_______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users