Hi all,

I want to use the MPI_Allreduce to synchronize results from all the
processes:
https://github.com/open-mpi/ompi/blob/master/ompi/mpi/c/allreduce.c

But I want to know the background algorithm to implement Allreduce. When I
check the coll base of MPI_Allreduce:
https://github.com/open-mpi/ompi/blob/2ae3cfd9bc9aa8cab80986a1921fd7ad9d198d07/ompi/mca/coll/base/coll_base_allreduce.c

There are implementations like:
ompi_coll_base_allreduce_intra_nonoverlapping,
ompi_coll_base_allreduce_intra_recursivedoubling,
ompi_coll_base_allreduce_intra_ring..etc. So how can I know which exact
implement I am using when I use MPI_Allreduce. Or can I configure these?
For example, I only want to use ring allreduce. How should I configure it?
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Reply via email to