#include "mpi.h"
#include "nxtval.h"
#include <stdio.h>
int main( int argc, char *argv[] )
{
MPI_Comm counter_comm, worker_comm;
MPI_Init( &argc, &argv );
MPE_Counter_create( MPI_COMM_WORLD, &worker_comm, &counter_comm );
if (worker_comm != MPI_COMM_NULL) {
/* I am one of the workers; the master doesn't exit create until
MPE_Counter_free is called */
int value, rank;
MPI_Comm_rank( counter_comm, &rank );
MPE_Counter_nxtval( counter_comm, &value );
printf( "[%d] received value %d\n", rank, value );
MPE_Counter_free( &worker_comm, &counter_comm );
}
MPI_Finalize( );
return 0;
}