[Mpi-22] [MPI Forum] #59: Clarification on MPI::FILE_NULL, MPI::WIN_NULL and MPI::COMM_NULL

Supalov, Alexander alexander.supalov at [hidden]
Sun Apr 5 19:53:53 CDT 2009



Hi,

There are some big shrink-wrapped HPC apps that use C++ extensively. They may be unavailable under Windows yet. One would have to ask their authors whether the MPI C++ interface is used directly or abstracted away via an internal layer talking to C.

Applications that are deployed over a tightly controlled OS like Windows would probably recompile after some grumbling, or migrate to a less tightly controlled OS. Under that less centrally controlled OS, like Linux, a change in the ABI would basically add another tree to the MPI forest, instead of consolidating all of them in one bundle. And then ISVs would have a problem, and us, implementors, would have a problem, too. Do we want to create a standard with a built-in set of problems? I don't think so.

Best regards.

Alexander 

-----Original Message-----
From: mpi-22-bounces_at_[hidden] [mailto:mpi-22-bounces_at_[hidden]] On Behalf Of Erez Haba
Sent: Saturday, April 04, 2009 8:48 PM
To: MPI 2.2
Subject: Re: [Mpi-22] [MPI Forum] #59: Clarification on MPI::FILE_NULL, MPI::WIN_NULL and MPI::COMM_NULL

Its not always the choice of the MPI Application provider.
In many cases there's an upgrade path for the infrastructure (like upgrading from Windows Compute Cluster Server to the newer version of Windows HPC Server) that includes an upgrade to the MPI implementation, any already deployed application that is not compatible with the new version would break. That would be a blocker for an upgrade and an important scenario for us.

Another example is the impact on the application provider. Because of the release of the incompatible MPI 2.2 impl, the app provider has to re-ship an already shipped version of their app just to cope with the new installations of of MPI 2.2. (in those cases, yes, they don't ship the MPI implementation).

That said, I didn't see any commercial app that depends on the C++ bindings.

Thanks,
.Erez

-----Original Message-----
From: mpi-22-bounces_at_[hidden] [mailto:mpi-22-bounces_at_[hidden]] On Behalf Of Jeff Squyres
Sent: Saturday, April 04, 2009 6:54 AM
To: MPI 2.2
Subject: Re: [Mpi-22] [MPI Forum] #59: Clarification on MPI::FILE_NULL, MPI::WIN_NULL and MPI::COMM_NULL

Regardless of this point, note that the C++ bindings are *broken* in  
MPI-2.1 with regards to #55.  You can't compile C++ MPI-2.1  
applications that use MPI::FILE_NULL, MPI::WIN_NULL as specified in  
#55, so the point may be moot for this ticket.

But the general point may need broad discussion next week -- have we  
been sure to adhere to the "must be ABI compatible" rule for all  
MPI-2.2 issues?

My $0.02: why would ISV's (or any MPI application provider) upgrade to  
an MPI-2.2 implementation?  They would only upgrade if there are  
features or bug fixes that they want.  They would not upgrade for the  
sake of upgrading to 2.2.  In such cases, I think it's ok for any MPI  
application developer (ISV or not) to re-compile.  Indeed, most ISV's  
bundle/ship their own MPI implementation, so they tightly control the  
MPI anyway.  If they don't want to upgrade to an MPI-2.2  
implementation, they won't.

On Apr 3, 2009, at 4:04 PM, Supalov, Alexander wrote:

> Right. This is why I'm not sure whether changing the const status  
> may break existing apps: only compiler writers know for sure what  
> kind of repercussions this change may have in a C++ program. We  
> should probably ask them, at least in order to make data based  
> decisions.
>
> Semantic changes are also important and should be reduced only to  
> clean extensions. If an application expects a certain outcome, and  
> this outcome changes, the application may break, defeating MPI-2.2  
> charter.
>
> -----Original Message-----
> From: mpi-22-bounces_at_[hidden] [mailto:mpi-22-bounces_at_[hidden] 
> ] On Behalf Of Erez Haba
> Sent: Friday, April 03, 2009 9:58 PM
> To: MPI 2.2
> Subject: Re: [Mpi-22] [MPI Forum] #59: Clarification on  
> MPI::FILE_NULL, MPI::WIN_NULL and MPI::COMM_NULL
>
> I think it's both;
> Any compiled application that is running against any specific  
> implementation does not have to recompile/rebuild to continue and  
> run against an updated implementation that is compliant with MPI 2.2.
> i.e., MPI 2.2 does not mandate any runtime incompatibility. An  
> example for such incompatibility would be to for a change of the  
> rank parameter from int to MPI_Aint.
>
> Plus - any application that recompiles with the new MPI 2.2 headers  
> should not incur any (new) compiler errors.
>
> The first rule is significant to ISV's that release binary  
> implementation. Without this requirement, MPI 2.2 would create a  
> significant backward compatibility to those implementing.
>
> Thanks,
> .Erez
> -----Original Message-----
> From: mpi-22-bounces_at_[hidden] [mailto:mpi-22-bounces_at_[hidden] 
> ] On Behalf Of Jeff Squyres
> Sent: Friday, April 03, 2009 11:07 AM
> To: MPI Forum
> Subject: Re: [Mpi-22] [MPI Forum] #59: Clarification on  
> MPI::FILE_NULL, MPI::WIN_NULL and MPI::COMM_NULL
>
> This is worth raising to the list.
>
> What is the rule for 2.2 -- that existing MPI applications must be
> able to run with no changes against an MPI-2.2 library?  Or is it that
> existing MPI applications must be able to compile and run with no
> source code changes against an MPI-2.2 implementation?
>
> I hope it's the latter; this change is relatively important.
>
>
>
> On Apr 3, 2009, at 5:56 AM, MPI Forum wrote:
>
> > #59: Clarification on MPI::FILE_NULL, MPI::WIN_NULL and  
> MPI::COMM_NULL
> > -----------------------------------
> > +----------------------------------------
> > Reporter:  hubertritzdorf          |            Owner:   
> hubertritzdorf
> >     Type:  Correction to standard  |           Status:  new
> > Priority:  Waiting for reviews     |        Milestone:  2009/04/06
> > Chicago
> >  Version:  MPI 2.2                 |       Resolution:
> > Keywords:                          |   Implementation:  Completed
> > -----------------------------------
> > +----------------------------------------
> > Changes (by asupalov):
> >
> >  * cc: alexander.supalov_at_[hidden] (added)
> >
> >
> > Comment:
> >
> >  Aren't we changing C++ ABI herewith? If so, we may want to postpone
> > this
> >  change till MPI-3.
> >
> > --
> > Ticket URL: <https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/ 
> 59#comment:33
> > >
> > MPI Forum <https://svn.mpi-forum.org/>
> > MPI Forum
>
>
> --
> Jeff Squyres
> Cisco Systems
>
> _______________________________________________
> mpi-22 mailing list
> mpi-22_at_[hidden]
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-22
>
>
> _______________________________________________
> mpi-22 mailing list
> mpi-22_at_[hidden]
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-22
> ---------------------------------------------------------------------
> Intel GmbH
> Dornacher Strasse 1
> 85622 Feldkirchen/Muenchen Germany
> Sitz der Gesellschaft: Feldkirchen bei Muenchen
> Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer
> Registergericht: Muenchen HRB 47456 Ust.-IdNr.
> VAT Registration No.: DE129385895
> Citibank Frankfurt (BLZ 502 109 00) 600119052
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
>
> _______________________________________________
> mpi-22 mailing list
> mpi-22_at_[hidden]
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-22


-- 
Jeff Squyres
Cisco Systems
_______________________________________________
mpi-22 mailing list
mpi-22_at_[hidden]
http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-22
_______________________________________________
mpi-22 mailing list
mpi-22_at_[hidden]
http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-22
---------------------------------------------------------------------
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen Germany
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer
Registergericht: Muenchen HRB 47456 Ust.-IdNr.
VAT Registration No.: DE129385895
Citibank Frankfurt (BLZ 502 109 00) 600119052
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.




More information about the Mpi-22 mailing list