[Mpi-forum] Discussion points from the MPI-<next> discussion today
jhammond at alcf.anl.gov
Fri Sep 21 14:58:44 CDT 2012
On Fri, Sep 21, 2012 at 2:38 PM, N.M. Maclaren <nmm1 at cam.ac.uk> wrote:
> On Sep 21 2012, Jeff Hammond wrote:
> I said that I wouldn't follow up, but I can't let this pass.
>> I only use MPI from C but I have never seen or heard any evidence to
>> justify this concern. Can you state exactly which MPI functions and
>> semantics are "seriously incompatible with C89 and/or C99"? Exactly
>> which C compilers do not work with MPI?
> Passive one-sided communication, for a start. I no longer have
> access to the sort of systems on which that would fail, and I have
> never seen it used. When I did have such access, I did write code
> that caused its underlying assumptions to break, while investigating
> problems on the systems I managed.
You still haven't said what the actual problem is. I suspect that you
just weren't using it properly if you broke the assumptions of MPI-2.2
RMA. It was extremely conservative.
>> At least in C89 and C99, C doesn't have a memory model but instead
>> inherits this from the hardware. I think this ambiguity is a far
>> bigger issue than anything MPI nonblocking is doing and somehow C
>> manages to be used in many places.
> That is total nonsense. I was involved in both standardisation
> efforts, including as a UK expert on that very area. The model was
> defined in terms of sequence points, though C99 also added effective
> types. What you say was true for K&R C, but has not been since.
Can you send me a link to a page that describes the C89 memory model?
It would help me to write better C+Pthread code if I had a memory
model to rely upon instead of nonportable inline assembly.
Argonne Leadership Computing Facility
University of Chicago Computation Institute
jhammond at alcf.anl.gov / (630) 252-5381
More information about the mpi-forum