<html><body>
<p>If somebody implemented JOIN without first implementing a basic ACCEPT/CONNECT I do not think they made good use of their time. JOIN requires most of the ACCEPT/CONNECT logic anyway. Much easier to implement ACCEPT/CONNECT and then layer JOIN on top.<br>
<br>
What JOIN does is allow a form of ACCEPT/CONNECT in an environment where PUBLISH_NAME, LOOKUP_NAME, OPEN_PORT are not very usable.<br>
<br>
Why deprecate something like JOIN that is simple to provide, harmless to have and possibly useful? <br>
<br>
You did not answer whether it is because there is something hard about IJOIN and you want symmetry with IACCEPT and ICONNECT. <br>
<br>
<br>
Dick Treumann - MPI Team <br>
IBM Systems & Technology Group<br>
Dept X2ZA / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601<br>
Tele (845) 433-7846 Fax (845) 433-8363<br>
<br>
<br>
<img width="16" height="16" src="cid:1__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt="Inactive hide details for "Supalov, Alexander" ---01/13/2010 04:29:55 PM---Thanks. Good points. Still, I think what you're real"><font color="#424282">"Supalov, Alexander" ---01/13/2010 04:29:55 PM---Thanks. Good points. Still, I think what you're really looking for is a way to say "enough" before b</font><br>
<br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">From:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">"Supalov, Alexander" <alexander.supalov@intel.com></font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">To:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">"MPI 3.0 Fault Tolerance and Dynamic Process Control working Group" <mpi3-ft@lists.mpi-forum.org></font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">Date:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">01/13/2010 04:29 PM</font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">Subject:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">Re: [Mpi3-ft] Nonblocking Process Creation and Management</font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">Sent by:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">mpi3-ft-bounces@lists.mpi-forum.org</font></td></tr>
</table>
<hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br>
<br>
<br>
<font color="#0000FF" face="Arial">Thanks. Good points. Still, I think what you're really looking for is a way to say "enough" before basically closing something down. This is less general than the individual ability to CANCEL this and that at will at any time: flexible, yes, but cumbersome enough to be asserted out in one of the proposals.</font><br>
<font size="4"> </font><br>
<font color="#0000FF" face="Arial">Anyway, we may want to leave CANCEL alone for the moment. Let's get back to JOIN. Are there any apps out there that use it still? I think this was a hack to get around the temporary unavailability of the proper accept/connect back then. If the hack has lived its useful life, we may want to deprecate it now.</font><br>
<br>
<hr width="100%" size="2" align="left"><b><font face="Tahoma">From:</font></b><font face="Tahoma"> mpi3-ft-bounces@lists.mpi-forum.org [</font><font face="Tahoma"><a href="mailto:mpi3-ft-bounces@lists.mpi-forum.org">mailto:mpi3-ft-bounces@lists.mpi-forum.org</a></font><font face="Tahoma">] </font><b><font face="Tahoma">On Behalf Of </font></b><font face="Tahoma">Richard Treumann</font><b><font face="Tahoma"><br>
Sent:</font></b><font face="Tahoma"> Wednesday, January 13, 2010 10:19 PM</font><b><font face="Tahoma"><br>
To:</font></b><font face="Tahoma"> MPI 3.0 Fault Tolerance and Dynamic Process Control working Group</font><b><font face="Tahoma"><br>
Subject:</font></b><font face="Tahoma"> Re: [Mpi3-ft] Nonblocking Process Creation and Management</font><font size="4"><br>
</font>
<p><font size="4">An application that is really trying to do overlap of communication and computation is likely to post Isends and Irecvs before entering a computation step. If the computation step discovers the answer and another iteration is not needed then why require all the sends and receives to be done? The application already knows the data is useless.<br>
<br>
A master/worker application may have an outstanding MPI_Irecv at each worker with tag 1 to pick up workload and an outstanding MPI_Irecv with tag 2 that is looking for the "all done" message. When the "all done" shows up, the workload MPI_Irecv needs to be completed before a disconnect can proceed. Why make the master send a null workload to each worker just to clear those obsolete MPI_Irecvs?<br>
<br>
The standard has several points at which it states that all outstanding sends and receives must be complete. If an Isend or Irecv has been posted there are 2 ways to complete it: Make the matching Send or Recv happen or call MPI_Cancel. The pair of operations MPI_Cancel; MPI_Wait will always complete no matter what the other side does. As long as the application does not care whether the data is delivered, this is a clean way to satisfy the requirement that all outstanding sends and receives must be complete.<br>
<br>
I have not been following the FT stuff but it seems like MPI_Cancel would be useful there. If I have posted an MPI_Irecv from task 9 and then learned task 9 is gone why wouldn't I want the option of doing an MPI_Cancel on the MPI_Irecv request? That seems cleaner than any other way of getting rid of the receive descriptor.<br>
<br>
<br>
Dick Treumann - MPI Team <br>
IBM Systems & Technology Group<br>
Dept X2ZA / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601<br>
Tele (845) 433-7846 Fax (845) 433-8363<br>
<br>
<br>
</font><img src="cid:1__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="16" height="16" alt="Inactive hide details for "Supalov, Alexander" ---01/13/2010 03:52:11 PM---Thanks. Do we know any active app that uses the JOIN"><font size="4" color="#424282">"Supalov, Alexander" ---01/13/2010 03:52:11 PM---Thanks. Do we know any active app that uses the JOIN still? If none, why the heck keep it afloat? I</font><font size="4"><br>
</font>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top"><td width="15%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font color="#5F5F5F"><br>
From:</font></td><td width="85%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><br>
"Supalov, Alexander" <alexander.supalov@intel.com></td></tr>
<tr valign="top"><td width="15%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font color="#5F5F5F"><br>
To:</font></td><td width="85%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><br>
"MPI 3.0 Fault Tolerance and Dynamic Process Control working Group" <mpi3-ft@lists.mpi-forum.org></td></tr>
<tr valign="top"><td width="15%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font color="#5F5F5F"><br>
Date:</font></td><td width="85%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><br>
01/13/2010 03:52 PM</td></tr>
<tr valign="top"><td width="15%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font color="#5F5F5F"><br>
Subject:</font></td><td width="85%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><br>
Re: [Mpi3-ft] Nonblocking Process Creation and Management</td></tr>
<tr valign="top"><td width="15%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font color="#5F5F5F"><br>
Sent by:</font></td><td width="85%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><br>
mpi3-ft-bounces@lists.mpi-forum.org</td></tr>
</table>
<hr width="100%" size="2" align="left" noshade><font size="4"><br>
<br>
</font><font size="4" color="#0000FF" face="Arial"><br>
Thanks. Do we know any active app that uses the JOIN still? If none, why the heck keep it afloat?</font><font size="4"><br>
</font><font size="4" color="#0000FF" face="Arial"><br>
I meant CANCEL in all its varieties. Again, how many apps cannot live without it?</font><font size="4"><br>
<br>
</font><hr width="100%" size="2" align="left"><b><font size="4" face="Tahoma">From:</font></b><font size="4" face="Tahoma"> mpi3-ft-bounces@lists.mpi-forum.org [</font><a href="mailto:mpi3-ft-bounces@lists.mpi-forum.org"><u><font size="4" color="#0000FF" face="Tahoma">mailto:mpi3-ft-bounces@lists.mpi-forum.org</font></u></a><font size="4" face="Tahoma">] </font><b><font size="4" face="Tahoma">On Behalf Of </font></b><font size="4" face="Tahoma">Richard Treumann</font><b><font size="4" face="Tahoma"><br>
Sent:</font></b><font size="4" face="Tahoma"> Wednesday, January 13, 2010 9:48 PM</font><b><font size="4" face="Tahoma"><br>
To:</font></b><font size="4" face="Tahoma"> MPI 3.0 Fault Tolerance and Dynamic Process Control working Group</font><b><font size="4" face="Tahoma"><br>
Subject:</font></b><font size="4" face="Tahoma"> Re: [Mpi3-ft] Nonblocking Process Creation and Management</font>
<p><font size="5">Why would JOIN be any less useful today than in the past? Why would you want to deprecate it? It is a trivial bootstrap for the simplest form of ACCEPT/CONNECT. It just hides the ACCEPT and CONNECT operations and lets the user handle the complexity of identifying the two end points any way he likes. <br>
<br>
I never felt JOIN was needed very badly but it went in as a "what the heck" decision and I do not see that anything has changed.<br>
<br>
Is it because IJOIN seems more difficult than IACCEPT and ICONNECT in some way?<br>
<br>
When you say CANCEL should be deprecated, do you mean MPI_Cancel of an outstanding ISEND/IRECV request or something else?<br>
<br>
Dick Treumann - MPI Team <br>
IBM Systems & Technology Group<br>
Dept X2ZA / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601<br>
Tele (845) 433-7846 Fax (845) 433-8363<br>
<br>
</font><font size="4"><br>
</font><img src="cid:1__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="16" height="16" alt="Inactive hide details for "Supalov, Alexander" ---01/13/2010 02:53:18 PM---Thanks. I meant the JOIN per se as a way of establis"><font size="5" color="#424282">"Supalov, Alexander" ---01/13/2010 02:53:18 PM---Thanks. I meant the JOIN per se as a way of establishing the communicator. Do we need that still? Wh</font>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top"><td width="13%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font size="4" color="#5F5F5F"><br>
From:</font></td><td width="87%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><font size="4"><br>
"Supalov, Alexander" <alexander.supalov@intel.com></font></td></tr>
<tr valign="top"><td width="13%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font size="4" color="#5F5F5F"><br>
To:</font></td><td width="87%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><font size="4"><br>
"MPI 3.0 Fault Tolerance and Dynamic Process Control working Group" <mpi3-ft@lists.mpi-forum.org></font></td></tr>
<tr valign="top"><td width="13%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font size="4" color="#5F5F5F"><br>
Date:</font></td><td width="87%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><font size="4"><br>
01/13/2010 02:53 PM</font></td></tr>
<tr valign="top"><td width="13%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font size="4" color="#5F5F5F"><br>
Subject:</font></td><td width="87%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><font size="4"><br>
Re: [Mpi3-ft] Nonblocking Process Creation and Management</font></td></tr>
<tr valign="top"><td width="13%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="96" height="1"><font size="4" color="#5F5F5F"><br>
Sent by:</font></td><td width="87%"><img src="cid:2__=0ABBFC39DFE5DC588f9e8a93df938@us.ibm.com" width="1" height="1"><font size="4"><br>
mpi3-ft-bounces@lists.mpi-forum.org</font></td></tr>
</table>
<hr width="100%" size="2" align="left" noshade><font size="5"><br>
</font><tt><font size="5"><br>
<br>
Thanks. I meant the JOIN per se as a way of establishing the communicator. Do we need that still? What practically relevant cases can be provided to justify its continuing existence? If there are none, we should rather deprecate the JOIN and drop the IJOIN.<br>
<br>
Good point on the CANCEL.<br>
<br>
-----Original Message-----<br>
From: mpi3-ft-bounces@lists.mpi-forum.org [</font></tt><a href="mailto:mpi3-ft-bounces@lists.mpi-forum.org"><tt><u><font size="5" color="#0000FF">mailto:mpi3-ft-bounces@lists.mpi-forum.org</font></u></tt></a><tt><font size="5">] On Behalf Of Josh Hursey<br>
Sent: Wednesday, January 13, 2010 8:25 PM<br>
To: MPI 3.0 Fault Tolerance and Dynamic Process Control working Group<br>
Subject: Re: [Mpi3-ft] Nonblocking Process Creation and Management<br>
<br>
Since join() does a handshake to create the new communicator, it <br>
should be delayed by the remote side of the protocol. A nonblocking <br>
version would allow the application to possibly do other computation <br>
while waiting for the remote side.<br>
<br>
As far as Cancel, I have been thinking that it might be useful for <br>
Accept and Connect. Though with the normal problems of Cancel, I don't <br>
know how to really specify it. I want to look into it a bit more <br>
before next week to see if anything useful can be said of using Cancel <br>
with Accept/Connect.<br>
<br>
-- Josh<br>
<br>
On Jan 13, 2010, at 2:01 PM, Supalov, Alexander wrote:<br>
<br>
> Hi,<br>
><br>
> Do we really need the IJOIN thing? I think the JOIN itself should be <br>
> deprecated. Just as CANCEL, by the way.<br>
><br>
> Best regards.<br>
><br>
> Alexander<br>
><br>
> -----Original Message-----<br>
> From: mpi3-ft-bounces@lists.mpi-forum.org [</font></tt><a href="mailto:mpi3-ft-bounces@lists.mpi-forum.org"><tt><u><font size="5" color="#0000FF">mailto:mpi3-ft-bounces@lists.mpi-forum.org</font></u></tt></a><tt><font size="5"> <br>
> ] On Behalf Of Josh Hursey<br>
> Sent: Tuesday, January 12, 2010 11:04 PM<br>
> To: MPI 3.0 Fault Tolerance and Dynamic Process Control working Group<br>
> Subject: [Mpi3-ft] Nonblocking Process Creation and Management<br>
><br>
> I extended and cleaned up the Nonblocking Process Creation and<br>
> Management proposal on the wiki:<br>
> </font></tt><a href="https://svn.mpi-forum.org/trac/mpi-forum-web/wiki/Async-proc-mgmt"><tt><u><font size="5" color="#0000FF">https://svn.mpi-forum.org/trac/mpi-forum-web/wiki/Async-proc-mgmt</font></u></tt></a><tt><font size="5"><br>
><br>
> I added the rest of the nonblocking interface proposals, and touched<br>
> up some of the language. I do not have an implementation yet, but will<br>
> work on that next. There are a few items that I need to refine a bit<br>
> still (e.g., MPI_Cancel, mixing of blocking and nonblocking), but this<br>
> should give us a foundation to start from.<br>
><br>
> I would like to talk about this next week during our working group<br>
> slot at the MPI Forum meeting.<br>
><br>
> Let me know what you think, and if you see any problems.<br>
><br>
> Thanks,<br>
> Josh<br>
><br>
> _______________________________________________<br>
> mpi3-ft mailing list<br>
> mpi3-ft@lists.mpi-forum.org<br>
> </font></tt><a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft"><tt><u><font size="5" color="#0000FF">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft</font></u></tt></a><tt><font size="5"><br>
> ---------------------------------------------------------------------<br>
> Intel GmbH<br>
> Dornacher Strasse 1<br>
> 85622 Feldkirchen/Muenchen Germany<br>
> Sitz der Gesellschaft: Feldkirchen bei Muenchen<br>
> Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer<br>
> Registergericht: Muenchen HRB 47456 Ust.-IdNr.<br>
> VAT Registration No.: DE129385895<br>
> Citibank Frankfurt (BLZ 502 109 00) 600119052<br>
><br>
> This e-mail and any attachments may contain confidential material for<br>
> the sole use of the intended recipient(s). Any review or distribution<br>
> by others is strictly prohibited. If you are not the intended<br>
> recipient, please contact the sender and delete all copies.<br>
><br>
><br>
> _______________________________________________<br>
> mpi3-ft mailing list<br>
> mpi3-ft@lists.mpi-forum.org<br>
> </font></tt><a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft"><tt><u><font size="5" color="#0000FF">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft</font></u></tt></a><tt><font size="5"><br>
<br>
_______________________________________________<br>
mpi3-ft mailing list<br>
mpi3-ft@lists.mpi-forum.org</font></tt><u><font size="4" color="#0000FF"><br>
</font></u><a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft"><tt><u><font size="5" color="#0000FF">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft</font></u></tt></a><tt><font size="5"><br>
---------------------------------------------------------------------<br>
Intel GmbH<br>
Dornacher Strasse 1<br>
85622 Feldkirchen/Muenchen Germany<br>
Sitz der Gesellschaft: Feldkirchen bei Muenchen<br>
Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer<br>
Registergericht: Muenchen HRB 47456 Ust.-IdNr.<br>
VAT Registration No.: DE129385895<br>
Citibank Frankfurt (BLZ 502 109 00) 600119052<br>
<br>
This e-mail and any attachments may contain confidential material for<br>
the sole use of the intended recipient(s). Any review or distribution<br>
by others is strictly prohibited. If you are not the intended<br>
recipient, please contact the sender and delete all copies.<br>
<br>
<br>
_______________________________________________<br>
mpi3-ft mailing list<br>
mpi3-ft@lists.mpi-forum.org</font></tt><u><font size="4" color="#0000FF"><br>
</font></u><a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft"><tt><u><font size="5" color="#0000FF">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft</font></u></tt></a><font size="5"><br>
</font><font size="4"><br>
</font><tt><font size="5"><br>
---------------------------------------------------------------------<br>
Intel GmbH<br>
Dornacher Strasse 1<br>
85622 Feldkirchen/Muenchen Germany<br>
Sitz der Gesellschaft: Feldkirchen bei Muenchen<br>
Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer<br>
Registergericht: Muenchen HRB 47456 Ust.-IdNr.<br>
VAT Registration No.: DE129385895<br>
Citibank Frankfurt (BLZ 502 109 00) 600119052<br>
<br>
This e-mail and any attachments may contain confidential material for<br>
the sole use of the intended recipient(s). Any review or distribution<br>
by others is strictly prohibited. If you are not the intended<br>
recipient, please contact the sender and delete all copies.</font></tt><tt><font size="4"><br>
_______________________________________________<br>
mpi3-ft mailing list<br>
mpi3-ft@lists.mpi-forum.org</font></tt><tt><u><font size="4" color="#0000FF"><br>
</font></u></tt><a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft"><tt><u><font size="4" color="#0000FF">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft</font></u></tt></a><font size="4"><br>
<br>
</font><br>
<tt><font size="4">---------------------------------------------------------------------<br>
Intel GmbH<br>
Dornacher Strasse 1<br>
85622 Feldkirchen/Muenchen Germany<br>
Sitz der Gesellschaft: Feldkirchen bei Muenchen<br>
Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer<br>
Registergericht: Muenchen HRB 47456 Ust.-IdNr.<br>
VAT Registration No.: DE129385895<br>
Citibank Frankfurt (BLZ 502 109 00) 600119052<br>
<br>
This e-mail and any attachments may contain confidential material for<br>
the sole use of the intended recipient(s). Any review or distribution<br>
by others is strictly prohibited. If you are not the intended<br>
recipient, please contact the sender and delete all copies.<br>
</font></tt><tt>_______________________________________________<br>
mpi3-ft mailing list<br>
mpi3-ft@lists.mpi-forum.org<br>
</tt><tt><a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-ft</a></tt><tt><br>
</tt><br>
<br>
</body></html>