[mpich-devel] MPI_Alltoall routine

"Antonio J. Peña" apenya at mcs.anl.gov
Tue Dec 10 11:27:17 CST 2013


Hello Antoine,

What you are seeing is an alltoall overriden by the netmod layer. This 
is allowed so that netmods can provide collectives tuned for their 
particular network target. If collfns->Alltoall is NULL, i.e., the 
netmod didn't provide one, MPICH will execute the default code provided 
in the MPI layer. The "right" way for you to implement it depends in 
whether you are implementing a generic collective algorithm or one 
targeting a specific network.

Best,
   Antonio


On 12/10/2013 11:00 AM, Antoine Rougier wrote:
> Hi,
>
> I want to test my own Alltoall implementation. To do that, I would like
> to modify MPIR_Alltoall_intra in src/mpi/coll/alltoall.c.
> Before that, I have checked (using MPIU_DBG_MSG) that my compiled
> version take the "good way":
> MPI_Alltoall->MPIR_Alltoall_impl->MPIR_Alltoall->MPIR_Alltoall_intra->"the
> good case", but it doesn't take this way. Instead of, in
> MPIR_Alltoall_impl, it calls comm_ptr->collfns->Alltoall.
>
> So I have two questions:
> 	- Is it the good way to add/modify some alltoall implementations ?
> 	- How to execute the good alltoall implementation ?
>
> Best regards,
>


-- 
Antonio J. Peña
Postdoctoral Appointee
Mathematics and Computer Science Division
Argonne National Laboratory
9700 South Cass Avenue, Bldg. 240, Of. 3148
Argonne, IL 60439-4847
apenya at mcs.anl.gov
www.mcs.anl.gov/~apenya



More information about the devel mailing list