Hello all... I am using a *cartesian grid* of processors which represents a spatial domain (a cubic geometrical domain split into several smaller cubes...), and I have communicators to address the procs, as for example a comm along each of the 3 axes I,J,K, or along a plane IK,JK,IJ, etc..).
*I need to cumulate a scalar value (SCAL) through the procs which belong to a given axis* (let's say the K axis, defined by I=J=0). Precisely, the origin proc 0-0-0 has a given value for SCAL (say SCAL000). I need to update the 'following' proc (0-0-1) by doing SCAL = SCAL + SCAL000, and I need to *propagate* this updating along the K axis. At the end, the last proc of the axis should have the total sum of SCAL over the axis. (and of course, at a given rank k along the axis, the SCAL value = sum over 0,1, K of SCAL) Please, do you see a way to do this ? I have tried many things (with MPI_SENDRECV and by looping over the procs of the axis, but I get deadlocks that prove I don't handle this correctly...) Thank you in any case.
_______________________________________________ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users