Re: 2-phase collective

Tony Skjellum (tony@Aurora.CS.MsState.Edu)
Mon, 10 Feb 1997 15:12:37 -0600 (CST)

No account for the "needs" of the application concerning acceptance
of collective behavior at a certain stage are entertained by this
point of view.
-Tony

On Mon, 10 Feb 1997, Rolf Rabenseifner wrote:

> Date: Mon, 10 Feb 1997 09:25:25 +0100 (MEZ)
> From: Rolf Rabenseifner <Rabenseifner@RUS.Uni-Stuttgart.DE>
> To: Tony Skjellum <tony@aurora.cs.msstate.edu>
> Cc: mpi-coll@mcs.anl.gov
> Subject: Re: 2-phase collective
>
> >> 1) 3 pairs of functions for each two faced collective
> >>
> >> start_non_collective_foo
> >> end_collective_foo
> >>
> >> start_collective_foo
> >> end_non_collective_foo
> >>
> >> start_collective_foo
> >> end_collective_foo
>
> Is this a good compromise in maximizing the efficiency of parallel
> applications on many platforms and minimizing the needs in
> implementing this, learning this and programming appl. with this?
>
> I believe the better compromise is to have only one start/end
> interface with
> - the implementors are allowed to program each of them as blcking
> collective
> - the implementors are encouraged to implement "start" as non-blocking
> in all cases and "end" as non-blocking if the "start" is already
> issued at all processes of the communicator.
>
> This implies a clear advice to the users, to call "start" and "end"
> approximately at the same time in the case that the MPI
> implementation implements with iblocking collective,
> and gives the chance to have no unnecessary idle if the MPI
> implementation implements "as encouraged" and the idifferent
> application processes do not run more away as the time interval
> between "start" and "end".
>
> And MPI implementors that cannot or do not want to implement
> a efficient two-phase interface can implement "start" as a
> second entry to the existing blocking collective routine
> and "end" as a dummy (and we can add this to the list of
> routines that are allowed to be in C only a cpp macro).
>
> I do not see any needs of the application programmers
> to have a more complicated interface -- and they do not want
> to learn the details of a more complicated interface.
>
> And MPI implementors also do not like to have more complexity
> (== implementation effort).
>
> Rolf
>
>
>
> Rolf Rabenseifner (Computer Center )
> Rechenzentrum Universitaet Stuttgart (University of Stuttgart)
> Allmandring 30 Phone: ++49 711 6855530
> D-70550 Stuttgart 80 FAX: ++49 711 6787626
> Germany rabenseifner@rus.uni-stuttgart.de
>

Anthony Skjellum, PhD, Associate Professor of Computer Science;
Mississippi State University, Department of Computer Science & NSF ERC
Butler, Rm 300, PO Box 9637, Corner of Perry&Barr, Mississippi State,MS 39762
(601)325-8435 FAX: (601)325-8997; http://www.erc.msstate.edu/~tony;
"Persistence is fertile." ; e-mail: tony@cs.msstate.edu; Try MPI!