Hi MPICH team,
I have an application which is mostly using master-slave kind of architecture. One master and <n> number of slaves. The slaves do not communicate between themselves and only sends/receives messages to/from master.
I have two ways I can setup the application
1>
Static : Master and slaves are all in the same MPI World
2>
Dynamic : Each slave is connected to master using a MPI_Comm and the communicator is created using MPI_Comm_connect/MPI_Comm_accept. Essentially master has <n> communicators.
The way master works is : it uses MPI_WaitAny kind of method to check messages from slave.
Could you please tell me whether <2> can be significantly slow with respect to <1> if all the slaves send lots of small messages?
Is there some kind of buffering overhead in <2> for <n> communicators and which can be solved using some configuration.
Thanks,
Hirak