<div dir="ltr"><div class="gmail_extra">On Wed, Jan 2, 2013 at 11:35 AM, Dave Goodell <span dir="ltr"><<a href="mailto:goodell@mcs.anl.gov" target="_blank">goodell@mcs.anl.gov</a>></span> wrote:<br><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div id=":2uj">> <a href="https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/318" target="_blank">https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/318</a><br>

<br>
I actually did a bunch of work in a private branch to support these types, but stopped short of finishing it when the overall Forum opinion on them turned rather sour.  Perhaps we should restart the effort on this (both standardization and implementation) now that MPI-3.0 is out.<br>
</div></blockquote><div><br></div><div style>I actually think they shouldn't be standardized, but instead, user-defined types should be restored to first-class status like they were in MPI-1. ;-)<br><br>But as long as the Forum remains heavily committed to discriminating against user-defined types, I'd like to find a way to support them.<br>
<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div id=":2uj">
> <a href="https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/319" target="_blank">https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/319</a><br>
<br>
I don't have any objection to these types, they just need to be implemented.  We can put them in as MPIX_ types for now.<br>
<div class="im"><br>
> Any other suggestions?<br>
><br>
> In lieu of a more elegant solution, I'm going to match on the types and ops that I need to support and write the sparse reduction by hand.<br>
><br>
> In the longer term, I'm curious whether the MPICH developers, and eventually the Forum, may be interested in providing better support for higher level comm libraries like this.<br>
<br>
</div>Like motherhood and apple pie, of course the answer is yes :)  The devil is always in "to what extent".</div></blockquote></div><div class="gmail_extra"><br></div>I finished re-implementing my "SF" comm component over plain Isend/Irecv so that all the types I need work without any extras from MPI. My API still accepts MPI_Datatype and MPI_Op, and I'd eventually like it to support all combinations (including user-defined types and ops defined by the caller, but that I didn't have prior knowledge of) over all backends (one-sided, basic two-sided, and (soon) neighborhood collectives). In principle, there would be good reasons to use different backends in different contexts because they have different setup vs. execution costs, and different tradeoffs associated with packing.<br>
</div></div>