<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
Hello all,
<div><br>
</div>
<div>Just as a heads up, we will be discussing issues with the new Fortran bindings and the profiling interface during this week's tools wg call (Thursday 8:00 AM PDT). Craig Rasmussen and Rolf Rabenseifner have graciously agreed to join the call to explain
 to us what the specific problems are and what might be done to address them. It would be great if others want to join and help out with the discussion.</div>
<div><br>
</div>
<div>I'll send out a reminder later in the week.</div>
<div><br>
</div>
<div>Kathryn</div>
<div><br>
</div>
<div>
<div>
<div>On Apr 15, 2013, at 1:03 PM, Jeff Squyres (jsquyres) <<a href="mailto:jsquyres@cisco.com">jsquyres@cisco.com</a>> wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite">On Apr 14, 2013, at 9:01 PM, Jeff Hammond <<a href="mailto:jhammond@alcf.anl.gov">jhammond@alcf.anl.gov</a>> wrote:<br>
<br>
<blockquote type="cite">It seems better to correct the text than to break the existing<br>
definition of MPI_PCONTROL.  What error code would be returned<br>
anyways?<br>
</blockquote>
<br>
<br>
I think the point is that we don't know what could/would be returned by Pcontrol, because Pcontrol can be subsumed by a profiling library, and therefore it can do whatever it wants.<br>
<br>
The issue here is that the C API is varargs, and therefore allows you to pass in whatever you want to Pcontrol (at least in C), and therefore a tool (or the underlying C MPI API) can document what arguments it expects.<br>
<br>
There's (at least) two problems with this:<br>
<br>
1. If a profiling library and the MPI library have differing arguments that they expect, even though varargs makes the different signatures compile-time safe, there could still be run-time errors (this is a contradiction that I've never understood in the definition
 of Pcontrol).<br>
<br>
2. Fortran has no varargs.  Prior to MPI 2.2, we actually did have a "..." in the Fortran prototype to indicate that you could do whatever you wanted for this signature.  And that was fine in the days before strict dummy argument type checking.  But now we
 mandate struct signature checking, and ... had to go, because it's not legal Fortran.  And now the text doesn't say "Fortran implementations can add whatever parameters they want" (which has problems, anyway).<br>
<br>
I'm really in favor of ditching the PMPI layer and putting something better there.<br>
<br>
-- <br>
Jeff Squyres<br>
<a href="mailto:jsquyres@cisco.com">jsquyres@cisco.com</a><br>
For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/<br>
<br>
<br>
_______________________________________________<br>
Mpi3-tools mailing list<br>
Mpi3-tools@lists.mpi-forum.org<br>
http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-tools<br>
</blockquote>
</div>
<br>
<div>
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
<div>______________________________________________________________<br>
Kathryn Mohror, <a href="mailto:kathryn@llnl.gov">kathryn@llnl.gov</a>, <a href="http://people.llnl.gov/mohror1">http://people.llnl.gov/mohror1</a><br>
CASC @ Lawrence Livermore National Laboratory, Livermore, CA, USA</div>
<div><br>
</div>
</div>
<br class="Apple-interchange-newline">
<br class="Apple-interchange-newline">
</div>
<br>
</div>
</body>
</html>