boost::MPI
次のCMPIコードに相当するものはありますか?ここにある基本的なマスタースレーブテンプレートである次の標準MPIコードを移植しようとしています。ブーストmpiのドキュメントに続いて、mpi_sendまたはmpi_recvランク、タグ、およびバッファーの3つのパラメーターのみがあります。
while (work != NULL) {
/* Receive results from a slave */
MPI_Recv(&result, /* message buffer */
1, /* one data item */
MPI_INT, /* of type double real */
MPI_ANY_SOURCE, /* receive from any sender */
MPI_ANY_TAG, /* any type of message */
MPI_COMM_WORLD, /* default communicator */
&status); /* info about the received message */
/* Send the slave a new work unit */
MPI_Send(&work, /* message buffer */
1, /* one data item */
MPI_INT, /* data item is an integer */
status.MPI_SOURCE, /* to who we just received from */
WORKTAG, /* user chosen message tag */
MPI_COMM_WORLD); /* default communicator */
/* Get the next unit of work to be done */
work = get_next_work_item();
}