... |
dest = size - 1 |
if (rank .eq. 0) then |
data = 0 |
call MPI_SEND( data, 1, MPI_INTEGER, rank+1, 99, |
+ MPI_COMM_WORLD, ierr ) |
else if (rank .ne. dest) then |
call MPI_RECV(data, count, MPI_INTEGER, rank-1, |
+ tag, MPI_COMM_WORLD, status, ierr ) |
data = data + rank |
call MPI_SEND( data, 1, MPI_INTEGER, rank+1, 99, |
+ MPI_COMM_WORLD, ierr ) |
else |
call MPI_RECV(data, count, MPI_INTEGER, rank-1, |
+ tag, MPI_COMM_WORLD, status, ierr ) |
print *, rank, ' received', data |
endif |
... |