<html><body>
<p>While it is not the Forum's responsibility to mandate performance for a particular implementation, it is certainly within the Forum's purview to press for models that can be implemented with high performance and deprecate models that are destined for poor performance on many or most architectures.<br>
 <br>
Broad support for non-contiguous and user defined datatypes could easily be  a deal breaker for a high performance implementation.<br>
<br>
This is another case where MPI_Init time assertions could be useful.  If an application could declare in MPI_Init_asserted that it will only uses predefined, contiguous datatypes in RMA operations then an implementation would be able to exploit any optimizations that depend on contiguous datatypes and raise an error it the application tried to use a non-contiguous or user defined datatype.<br>
<br>
The assertion would not relieve the implementation of the need to include support for non-contiguous or user defined datatypes because any application the did not assert it would use ONLY contiguous & predefined types would have a right to expect the broader support. <br>
<br>
If generalized readiness for RMA calls that just might use an arbitrary datatype mean all RMA calls in the application pay a performance penalty then the application author will need to decide whether he really needs non-contiguous RMAs badly enough to pay the penalty.  I suspect many or even most applications can do what they need to do without resorting to non-contiguous RMA.<br>
<br>
Recall that an assertion by an application does not<b> require</b> an implementation to do anything different. If some MPI implementation can provide high performance RMA for contiguous & user defined datatypes and still have robust support for generalized datatypes, it can simply ignore the assertion.)<br>
              <br>
          Dick <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>
<tt>mpi3-rma-bounces@lists.mpi-forum.org wrote on 09/15/2009 09:18:42 PM:<br>
<br>
> [image removed] </tt><br>
<tt>> <br>
> Re: [Mpi3-rma] non-contiguous support in RMA & one-sided pack/unpack (?)</tt><br>
<tt>> <br>
> Jeff Hammond </tt><br>
<tt>> <br>
> to:</tt><br>
<tt>> <br>
> MPI 3.0 Remote Memory Access working group</tt><br>
<tt>> <br>
> 09/15/2009 09:19 PM</tt><br>
<tt>> <br>
> Sent by:</tt><br>
<tt>> <br>
> mpi3-rma-bounces@lists.mpi-forum.org</tt><br>
<tt>> <br>
> Please respond to "MPI 3.0 Remote Memory Access working group" </tt><br>
<tt>> <br>
> I must be blind for missing that.  Sorry.<br>
> <br>
> I understand that it is not MPI Forum's responsibility to ensure<br>
> efficient implementations of the standard, but I am still concerned<br>
> about the performance of even simple non-contiguous operations based<br>
> upon what I see with ARMCI.  I guess I'll have to wait and see what<br>
> the various groups/vendors produce.<br>
> <br>
> Thanks,<br>
> <br>
> jeff<br>
> <br>
> </tt></body></html>