mpi - Equivalent to MPI_Reduce_scatter but scattering among a subset of processors -



mpi - Equivalent to MPI_Reduce_scatter but scattering among a subset of processors -

is there mpi function equivalent mpi_reduce_scatter performs scattering among subset of processors? in case there no such function, efficient sequence of mpi calls?

for clarity, suppose cut down operation sum.

proc sendbuf 1 a1 | b1 2 a2 | b2 3 a3 | b3 4 a4 | b4

i want get

proc recvbuf 1 2 b 3 4

where a = a1 + a2 + a3 + a4 , b = b1 + b2 + b3 + b4.

workarounds using 2 mpi_reduce. first reduces as , has 1 root processor. sec reduces bs , has 2 root processor. however, becomes heavy when there many "letters" (and many processors). mpi_reduce_scatter , set recv_count[proc] different 0 if proc belongs subset of processors. however, when scattering message there n_proc square handshakes (most of them useless beacuse no message sent).

i agree 2 mpi_reduce calls you're going if want mpi reduction (which @ scale).

mpi

Comments

Popular posts from this blog

php - Android app custom user registration and login with cookie using facebook sdk -

django - Access session in user model .save() -

php - .htaccess Multiple Rewrite Rules / Prioritizing -