Enim,

Before going into all these efforts to implement a new function, let me
describe what is there already and that you can use to achieve something
similar. It will not be exactly what you describe, because changing a
particular collective algorithm dynamically on a communicator might is not
as safe as it sounds. However, you can reconfigure the collective selection
before creating a new communicator.

For this you will have to set coll_tuned_use_dynamic_rules to 1. Assuming
that you want to play with broadcast, you need to force the MCA
parameter coll_tuned_bcast_algorithm to a new value (by calling the MCA
corresponding MCA function). In same time you can also define the
parameters that regulate the broadcast algorithms such as the segment size
(coll_tuned_bcast_algorithm_segmentsize). The next communication creation
call will inherit these new values.

  George.

PS: feel free to ping me privately if you want more info.

On Thu, Jan 19, 2017 at 1:27 PM, Emin Nuriyev <emin.nuri...@ucdconnect.ie>
wrote:

> Hi,
>
> I want to create broadcast function which allow me to select algorithm in
> application layer.
> For example :
>
> MPI_Bcast_alg(void *buffer, int count, MPI_Datatype datatype, int root,
> MPI_Comm comm, int alg)
>
> Same arguments as MPI_Bcast() and plus  algorithm's id.
>
> *coll_tune_bcast_decision.c* file contain function which allows us to
> select function.
>
> int ompi_coll_tuned_bcast_intra_do_this(void *buf, int count,
>                                         struct ompi_datatype_t *dtype,
>                                         int root,
>                                         struct ompi_communicator_t *comm,
>                                         mca_coll_base_module_t *module,
>                                         int algorithm, int faninout, int
> segsize)
>
> I've got some information about MCA. But yest, it is not clear for me how
> to implement it ? How can I do it ?
>
> _______________________________________________
> devel mailing list
> devel@lists.open-mpi.org
> https://rfd.newmexicoconsortium.org/mailman/listinfo/devel
>
_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

Reply via email to