
Thank You Matthieu for reply,
If I understood your code correctly, you are sending every piece of data through rank 0 and then it waits for the completion of the operations. Then, every rank receives data, as well as the first rank.
I'm sending from 0 to 1,2,3,4,5,6,7 I.m not sending from 0 to 0 (what I understand could cause problems)
But the first rank is waiting for ots own receive to finish, which can never happen. You should put the wait all after the receptions.
(what do you mean "first rank"? 1 or 0?) 1. I removed waiting after isend - still hangs on 2. I dont need wait in 0. i need wait in rest of ranks because I need data for calculation so I modified like mpi::request recv; recv = world.irecv(0, 0, recvmol); recv.wait(); to world.recv(0, 0, recvmol); - still hangs on 3. I did also like I removed waiting after isend and put it before gather in 0 if( world.rank() == 0 ){ mpi::wait_all(reqs, reqs + nProcs - 1); gather(world,res,allRes,0); } else { gather(world,res,0); } still hangs on (doesnt matter with irecv or recv)... tom ---------------------------------------------------- Film Solista: 9/10 Jak dla mnie rewelacyjny! Piękny wzruszający głęboki! Trudna tematyka, ale pokazana w mistrzowski sposób. http://klik.wp.pl/?adr=http%3A%2F%2Fcorto.www.wp.pl%2Fas%2Fsolista.html&sid=900