Hello, I suggest you have a look onto the MPI one-sided functionality (Section 11 of the MPI Spec 3.0). Create a window to allow the other processes to access the arrays A directly via MPI_Get/MPI_Put. Be aware of synchronization which you have to implement via MPI_Win_fence or manual locking.
Regards Christoph -- Christoph Niethammer High Performance Computing Center Stuttgart (HLRS) Nobelstrasse 19 70569 Stuttgart Tel: ++49(0)711-685-87203 email: nietham...@hlrs.de http://www.hlrs.de/people/niethammer ----- Ursprüngliche Mail ----- Von: "Pradeep Jha" <prad...@ccs.engg.nagoya-u.ac.jp> An: "Open MPI Users" <us...@open-mpi.org> Gesendet: Donnerstag, 9. Januar 2014 12:10:51 Betreff: [OMPI users] Calling a variable from another processor I am writing a parallel program in Fortran77. I have the following problem: 1) I have N number of processors. 2) Each processor contains an array A of size S. 3) Using some function, on every processor (say rank X), I calculate the value of two integers Y and Z, where Z<S. (the values of Y and Z are different on every processor) 4) I want to get the value of A(Z) on processor Y to processor X. I thought of first sending the numerical value X to processor Y from processor X and then sending A(Z) from processor Y to processor X. But it is not possible as processor Y does not know the numerical value X and so it won't know from which processor to receive the numerical value X from. I tried but I haven't been able to come up with any code which can implement this action. So I am not posting any codes. Any suggestions? _______________________________________________ users mailing list us...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/users