If the data distribution was sufficiently predictable and long-lived through the life of the application, could one not define new communicators to clean up the calls?
> After reading the previous discussion on AllReduce and AlltoAll, I > thought I would ask my question. I have a case where I have data > unevenly distributed among the processes (unevenly means that the > processes have differing amounts of data) that I need to globally > redistribute, resulting in a different uneven distribution. Writing the > code to do the redistribution using AlltoAll is straightforward. > > The problem though is that there are often special cases where each > process only needs to exchange data with it neighbors. So the question > is that when two processors don't have data to exchange, is the OpenMPI > AlltoAll is written in such a way so that they don't do any > communication? Will the AlltoAll be as efficient (or at least nearly as > efficient) as direct send/recv among neighbors? > Thanks! > Dave > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users >