[mpich-discuss] More progress for generalized requests

Rob Latham robl at mcs.anl.gov
Sun Apr 15 23:24:07 CDT 2012


On Fri, Apr 13, 2012 at 05:36:21PM -0500, Jed Brown wrote:
> I want to use this interface, but I'd like my requests to be able to make
> progress any time control is in the MPI stack like standard nonblocking
> collectives, rather than only when explicitly polled.
> 
> http://www.mcs.anl.gov/uploads/cels/papers/P1417.pdf

I had a fun conversation with Jed on the sidwealk this evening which
would have made more sense had i seen this email earlier.  

> Would it be reasonable to add yet another extension by which we could ask
> for MPI to call the MPIX_Grequest_poll_function via the normal progress
> engine?

I don't think anything in the proposed extension precludes this: the
wait_fn and poll_fn routines could be kicked by the progress engine,
though I have some kind of vague memory that when I tried to do this
my commits were reverted because of some big performance regression.
I don't remember the details.  Darius and someone from Microsoft were
involved...

We definitely had the idea, since this came out of an AIO context,
that something else did most of the progress, and these wait/poll
functions simply allowed for the "did this finish?" check to happen. 

Fun history: if you go back through the mpi-forum email archives,
there was a lot of debate about if or how to expose the progress
engine.  The forum accepted the very simple version of generalized
requests, which no one used because they were dumb, and we've spent
the subsequent fifteen years slowly (oh so slowly) reworking that
decision.

==rob

-- 
Rob Latham
Mathematics and Computer Science Division
Argonne National Lab, IL USA


More information about the mpich-discuss mailing list