[mpich-discuss] Why do predefined MPI_Ops function elementwise in MPI_Accumulate, but not in MPI-1 routines?

Jim Dinan dinan at mcs.anl.gov
Tue Apr 24 16:40:27 CDT 2012


Hi Jed,

I think I'm getting MPI 2.2 and 3.0 semantics mixed up.  MPI 2.2 only 
allows concurrent or same-epoch accumulates that use the same operation 
and have the same basic datatype.  So, this is fine in 2.2.  MPI 3.0 
will relax the same operation restriction, which could make it 
challenging to have an efficient hardware implementation that maintains 
atomicity with an agent running on the CPU.

  ~Jim.

On 4/24/12 3:54 PM, Jed Brown wrote:
> On Tue, Apr 24, 2012 at 15:36, William Gropp <wgropp at illinois.edu
> <mailto:wgropp at illinois.edu>> wrote:
>
>     A lot of this had to do with wanting to make it possible for
>     MPI_Accumulate to be executed entirely in hardware, respecting the
>     various MPI one-sided operations and semantics, including the
>     atomicity rules, and not requiring the execution of arbitrary user
>     code.  This was not a concern for
>     Reduce/Allreduce/Scan/Exscan/Reduce_scatter.
>
>
> Would it have been that problematic to run the built-in operations in
> hardware and do the others in software?
>
>
> _______________________________________________
> mpich-discuss mailing list     mpich-discuss at mcs.anl.gov
> To manage subscription options or unsubscribe:
> https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss


More information about the mpich-discuss mailing list