<div dir="ltr">Thanks, Barry, Satish,<div><br></div><div>But, is it possible to uniform the use of MPI_SUM and MPIU_SUM? For example, we could let  a Petsc function just switch to a regular MPI_Reduce or other function when using PetscInt. In other words, we need a wrapper. I always use MP<span style="color:rgb(0,0,0);background-color:rgb(255,255,255)">I</span><span style="background-color:rgb(255,255,255)"><font color="#ff0000">U</font></span><font color="#000000">_</font>INT in a MPI function  when using PetscInt. It is very straightforward to use MPI<font color="#ff0000">U</font>_SUM, MPI<font color="#ff0000">U</font>_MAX so on, when thinking about we are using MP<span style="color:rgb(0,0,0)">I</span><font color="#ff0000">U</font><font color="#000000">_</font>INT.</div><div><br></div><div>Thanks,</div><div><br></div><div>Fande Kong,</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Aug 17, 2015 at 6:18 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
  It is crucial. MPI also doesn't provide sums for __float128 precision. But MPI does always provide sums for 32 and 64 bit integers so no need for MPIU_SUM for PETSC_INT<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
> On Aug 17, 2015, at 5:49 PM, Satish Balay <<a href="mailto:balay@mcs.anl.gov">balay@mcs.anl.gov</a>> wrote:<br>
><br>
> I think some MPI impls didn't provide some of the ops on MPI_COMPLEX<br>
> datatype.<br>
><br>
> So petsc provides these ops for PetscReal i.e MPIU_SUM, MPIU_MAX, MPIU_MIN<br>
><br>
> Satish<br>
><br>
> On Mon, 17 Aug 2015, Fande Kong wrote:<br>
><br>
>> Hi all,<br>
>><br>
>> I was wondering why, in Petsc,  MPI_Reduce with PetscInt needs MPI_SUM<br>
>> meanwhile MPI_Reduce with PetscReal needs MPIU_SUM? Do we have any special<br>
>> reasons to distinguish them?<br>
>><br>
>> Thanks,<br>
>><br>
>> Fande Kong,<br>
>><br>
><br>
<br>
</div></div></blockquote></div><br></div>