[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [mpi-21] Proposal EH2: add const keyword to the C bindings
Doug:
Re:
> Do the tools you mentioned check for this particular error? If not, then
> I don't see how they factor into this discussion.
Check for a READ of the buffer? NO, that would be prohibitively
expensive. It factors in because part of the process by which
I have added tests to it has included surveys of users for
errors they encounter as well as feedback from users of the
tool as to what errors they encounter that it does not find.
> > Not ONCE have I heard that "Restricted access to buffers
> > of non-blocking MPI send operations was the source of my
> > problem." Not only do implementations not take advantage
> > of the opportunity, the restriction is NOT violated.
>
> I don't understand how you came to the conclusion that this restriction
> is not violated, unless some of the tools you mentioned do this check
> explicitly.
Because I have seen a lot of MPI code and I have discussed it with
many MPI users. Sometimes, I met with surprise about it. Most are
aware of it. Frankly, this restriction is not half so hard for users
to understand as it is made out to be.
> Most implementations do not take advantage of their ability to change
> the contents of the send buffer, therefore even if existing applications
> violated this restriction, it is unlikely that we would know it.
>
> An example: I just found some places in my own code where I violate this
> restriction, and this code has not failed on LAM/MPI, Open MPI, MPICH,
> MPICH2, MVAPICH, MS-MPI, Sun's MPI, or IBM's MPI.
>
> > This
> > issue is not worth the time it is being given until someone
> > can do more than state that it must be causing problems for
> > "many applications and commercial applications." I see no
> > reason to sacrifice any potential performance for something
> > no one slips on.
>
> Well, now you know that at least one person slipped on it.
OK. How hard is it for you to fix? Is it really worth a
potential performance penalty?
While the argument to "fix" it is that there is no penalty,
the argument that there are no errors is at least as valid.
My point ultimately is that both sides of this argument have
validity. There are many things about MPI that the choice is
less ambiguous. We should spend our time on them.
Bronis