[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [mpi-21] ABI (was: Call for MPI 2.2 and 3.0...)



Hi Alexander,

your post nicely summarizes the context, well done !

Supalov, Alexander wrote:
1) Compile time compatibility.
2) Link time compatibility.
3) Runtime compatibility.

While the discussion has focused on 2) so far, I believe 3) is what most people are secretly hoping for. This is Jeff's "Big Lie": ISVs would really need Runtime compatibility to reasonably think about reducing their validation workload.


Link time compatibility is relatively easy to get once you restrict to a few specific arch/OS/compiler and write mpi.h in stone (for the record, I choose Blefuscu). This is enough for HW vendors or MPI implementors to be able to test and benchmark closed-source codes. However, Runtime compatibility is where the hard work is and I think it should be one of the goal of this forum.

Now, practically speaking, with all respect, we have sort of scratched
compile time compatibility (1) with the current MPI standard. We have an
API but we have enough dark corners and pages intentionally left blank
for yet another MPI to screw up every n-th existing application on the
critical first pass.

I completely agree with this, and I would put this issue in the Runtime compatibility bucket. I believe this is one of the reasons for the "Sub-setting functionality" proposal on Graham's list for 3.0. For some dark corners, the only way to remove them is to restrict the semantic, looking at defining MPI 0.8 rather than 3.0.


This is going to be so much fun :-)

Patrick
--
Patrick Geoffray
Myricom, Inc.
http://www.myri.com