[Mpi-22] MPI_INIT assertions
rlgraham at [hidden]
Thu May 15 16:51:48 CDT 2008
I think we are splitting hairs on wording here. In one case the user is
saying ³I don¹t care about
the performance of cancel² and in the other ³I promise not to call cancel².
Neither is changing the
semantics of MPI.
On 5/15/08 5:44 PM, "Richard Treumann" <treumann_at_[hidden]> wrote:
> Hi Rich
> The difference between a hint and an assertion is that an hint cannot change
> semantic in any way. An assertion will allow libmpi to relax a specific
> semantic guarantee. Lets take a simple case:
> The application wants to say it will not try to cancel any MPI_ISEND so it
> passes MPI_NO_SEND_CANCEL to MPI_INIT
> If MPI_INIT were passed MPI_NO_SEND_CANCEL as a hint and then the application
> went ahead and called MPI_CANCEL anyway, it would be fine for the MPI
> implementation to use a much slower MPI_CANCEL algorithm than if the hint had
> not been given. It would not be OK for the implementation to hang or raise an
> error or cancel the wrong message.
> If MPI_Init were passed MPI_NO_SEND_CANCEL as an assertion and then the
> application went ahead and called MPI_CANCEL anyway, it would be OK for the
> MPI implementation to raise an error for the MPI_CANCEL call.
> Every MPI Implementation must still be prepared to do MPI_CANCEL of an ISEND
> correctly if MPI_CANCEL is called by an application that did not provide the
> assertion. Adding assertion support in MPI 2.2 cannot break a correct MPI 2.1
> The MPI_NO_SEND_CANCEL is only useful for cases where libmpi must devote extra
> memory, longer code paths or extra space in message headers across an entire
> run just to have the information it needs to do MPI_CANCEL correctly is
> somebody happens to call it. If a particular MPI implementation does not incur
> extra costs to be ready for a potential MPI_CANCEL then the implementation
> will ignore this assertion.
> Dick Treumann - MPI Team/TCEM
> IBM Systems & Technology Group
> Dept 0lva / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601
> Tele (845) 433-7846 Fax (845) 433-8363
> mpi-22-bounces_at_[hidden] wrote on 05/15/2008 01:33:02 PM:
>> > Assertions should not change semantics these are defined by the
>> > standard. Assertions
>> > may provide ³help² to the implementation, what ever that means. I
>> > may be missing some thing,
>> > but I really don¹t see a difference (aside from name) between
>> > assertions an hints both are
>> > ways of the user conveying information to the library.
>> > Rich
> mpi-22 mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Mpi-22