MTL authors --

We had *some* discussion of MTL issues this afternoon in the room, but need 
your input (since most of you are not here).  Here's what we'd like to talk 
about tomorrow (and we realize you might not have answers for this tomorrow).

Short version: based on Mellanox's experience, why not ditch the CM PML and 
have all current MTLs move up to be PMLs?

More detail:

We all know that Mellanox moved their MXM MTL up to be a PML.  The short 
version of "why did they do this?" is because CM really added no value for MXM. 
 Literally, all it did was add overhead:

1. translate some OMPI data structures to a neutral/CM data structure
2. which was then translated into the MXM data structures
3. then call MXM

So why not chop out one of those layers:

1. translate OMPI data structures into MXM data structures
2. then call MXM

Taking a crass look at the existing MTLs, we wonder if it would be worthwhile 
to do the same thing for all of them.  It doesn't seem (to us) that it would be 
a lot of work -- the PML and MTL interfaces are quite similar.  And there could 
be message rate improvements for those MTLs-turned-PMLs, just like it did for 
MXM/yalla.

*If* this is a good assumption -- that MTLs should all become PMLs -- then MPI 
one-sided operations become the next logical question.  I.e., what happens when 
you call MPI_PUT / MPI_GET / etc.?

Right now, you'll end up using the osc/pt2pt component, which will use PML 
calls to effect MPI RMA functionality over the PML interface.  Which is fine, 
and will work correctly in all cases.

However, MTL-turned-PML authors will then have the option of writing an 
osc/YOUR_COMPONENT for doing optimized MPI-one-sided operations on your network.

This is what we would like to discuss with you tomorrow.  Tell us that this 
idea is crazy, or that it's ok, or that you need to think about it, ...etc. 
Let's chat.

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/

Reply via email to