#include #include #include "mpi.h" #define LOC_MAX 10 #define GLOB_MAX 100 #define MATRIX_HEIGHT 8 void main(void) { int i, size, myrank, count = 0; MPI_Status status; start { initTracing(10000); startTracing(); farm { MPI_Init(NULL,NULL); MPI_Comm_size(MPI_COMM_WORLD, &size); MPI_Comm_rank(MPI_COMM_WORLD, &myrank); for(i=0;i<3; i++) { MPI_Send((void *) &count, 1, MPI_INT, (myrank+1)%size, 0, MPI_COMM_WORLD); MPI_Recv((void *) &count, 1, MPI_INT, (myrank+size-1)%size, 0, MPI_COMM_WORLD,&status); count++; } MPI_Barrier(MPI_COMM_WORLD); MPI_Finalize(); } stopTracing(); writeTraceFile("Trace.trv", "NoTitle"); } }