From: salo@cray.com (Eric Salo)
Newsgroups: comp.parallel.mpi
Subject: Re: problems with MPI_Cancel()
Date: 29 May 1999 21:12:02 GMT
Organization: Silicon Graphics, Inc.
Message-Id: <7ipl72$sn8$1@walter-fddi.cray.com>
References: <374DB25B.C5963D17@sd.aetc.com>
    <7imcpv$8qo$1@walter-fddi.cray.com> <374EBBEB.4BE57E0C@etnus.com>
Xref: ukc comp.parallel.mpi:5149


> I think you need to read the standard again, Eric...
>
> [ DELETIA ]
>
> If MPI_Cancel returns the result that it cannot cancel the operation,
> then that necessarily implies that the operation must already have
> reached a stage where it is guaranteed to complete on its own.

I'm well aware of what the standard says, Jim, but I'm also aware of
the current state of the world. And in that world, only a very few
implementors care about whether their MPI_Cancel() follows the strict
letter of the law and even fewer bother to do anything about it.
Especially since the trivial solution that I quoted earlier will pass
nearly any correctness suite that you can come up with as far as the
application is able to tell.

Bottom line, if you have an important application then it's just plain
foolish to rely on MPI_Cancel() because you *will* get burned if you do.

> I know you didn't like these semantics at the time, but that's what we 
> voted in...

Actually, the MPI-1 standard predates me; I didn't get involved until the
start of MPI-2.

--
Eric Salo      Silicon Graphics      salo@sgi.com

