In Open MPI the Broadcast function have various implementation like Flat tree, Chain tree, Binomial, Binary, Split-binary, K-Chain tree.
How do I tell the Open MPI to use one of these implementations?
In Open MPI the Broadcast function have various implementation like Flat tree, Chain tree, Binomial, Binary, Split-binary, K-Chain tree.
How do I tell the Open MPI to use one of these implementations?
You can
mpirun --mca coll_tuned_use_dynamic_rules true --mca coll_tuned_bcast_algorithm <algo> ...
where can be found from ompi_info --all:
MCA coll tuned: parameter "coll_tuned_bcast_algorithm" (current value: "ignore", data source: default, level: 5 tuner/detail, type: int)
Which bcast algorithm is used. Can be locked down to choice of: 0 ignore, 1 basic linear, 2 chain, 3: pipeline, 4: split binary tree, 5: binary tree, 6: binomial tree, 7: knomial tree, 8: scatter_allgather, 9: scatter_allgather_ring. Only relevant if coll_tuned_use_dynamic_rules is true.