Sorry - my mistake - I meant AlltoAllV, which is what I use in my code.

Ashley Pittman wrote:
On Thu, 2008-03-20 at 10:27 -0700, Dave Grote wrote:
  
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?
    
AlltoAll takes a single size of message and communictes that amount of
data from everybody to everybody.  You might want to look at AlltoAllw
and AlltoAllv, neither of which I have any experience of however.

Ashley,

_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users

  

Reply via email to