Hi, Open MPI uses several different algorithms depending on which module from the "coll" framework is selected to perform the logic of the broadcast operation. The "tuned" module which usually gets selected on cluster installations uses a heuristic rule, based on the message size and the size of the communicator, to choose between building a pipeline, binomial tree or split binary tree. There are also other algorithms that go unused by the default rule logic, but you can force them with MCA parameters if you'd like.
The default rules might not be optimal for your hardware. You can reevaluate each algorithm and create a rule file that you can then give to Open MPI. That's what I'm doing now on our cluster. Kind regards, Hristo -- Hristo Iliev, Ph.D. -- High Performance Computing RWTH Aachen University, Center for Computing and Communication Rechen- und Kommunikationszentrum der RWTH Aachen Seffenter Weg 23, D 52074 Aachen (Germany) Tel: +49 241 80 24367 -- Fax/UMS: +49 241 80 624367 > -----Original Message----- > From: users-boun...@open-mpi.org [mailto:users-boun...@open-mpi.org] > On Behalf Of Mohammed El Mehdi DIOURI > Sent: Friday, September 21, 2012 2:13 AM > To: us...@open-mpi.org > Cc: Mohammed El Mehdi DIOURI > Subject: [OMPI users] Algorithms used in MPI_BCast > > Hi, > > I would like to know what are the algorithms used in MPI_BCast() in the > OpenMPI implementation. > > For example, in MPICH2, depending on the number of processes and the size > of data to broadcast, the broadcasting algorithm used can be different : a > binomial tree if the message is short or MPI_Scatter followed by > MPI_AllGather if the message to broadcast is long. > > Is it the same for OpenMPI ? > It doesn't seem to be the case since the broadcasting time is different when I > use OpenMPI or MPICH2. > > Thanks for your help, > > Mehdi. > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users
smime.p7s
Description: S/MIME cryptographic signature