diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Communicator-1.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Communicator-1.c index 789573d..3c76265 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Communicator-1.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Communicator-1.c @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_INT, global_sum, 1, MPI_INT, null_comm); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-1.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-1.c index 9af3b52..ea6c8a8 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-1.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-1.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 2, MPI_INT, global_sum, 2, MPI_INT, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-2.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-2.c index 9a91341..00169cb 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-2.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-2.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_INT, global_sum, 2, MPI_INT, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-3.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-3.c index 66ff4a6..5caeb25 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-3.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-3.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, -1, MPI_INT, global_sum, 2, MPI_INT, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-4.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-4.c index 5c5e871..5dfb853 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-4.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Count-4.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_INT, global_sum, -1, MPI_INT, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-RecvBuffer-2.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-RecvBuffer-2.c index 0ff9a31..270f4a9 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-RecvBuffer-2.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-RecvBuffer-2.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_INT, global_sum, 1, MPI_INT, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-1.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-1.c index 389ed67..2f84976 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-1.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-1.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_DOUBLE, global_sum, 1, MPI_INT, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-2.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-2.c index e88eb81..951a2d8 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-2.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-2.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_INT, global_sum, 1, MPI_DOUBLE, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-3.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-3.c index 38d4356..cb59054 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-3.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-3.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_DOUBLE, global_sum, 1, MPI_DOUBLE, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-4.c b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-4.c index dbc67e8..e1b7b8d 100644 --- a/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-4.c +++ b/micro-benches/0-level/coll/ArgError-MPIAllgather-Type-4.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Allgather(&local_sum, 1, MPI_UNSIGNED, global_sum, 1, MPI_UNSIGNED, MPI_COMM_WORLD); if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIReduce-Communicator-1.c b/micro-benches/0-level/coll/ArgError-MPIReduce-Communicator-1.c index 7417956..728bc91 100644 --- a/micro-benches/0-level/coll/ArgError-MPIReduce-Communicator-1.c +++ b/micro-benches/0-level/coll/ArgError-MPIReduce-Communicator-1.c @@ -15,7 +15,7 @@ int main(int argc, char *argv[]) { MPI_Comm_size(MPI_COMM_WORLD, &numProcs); MPI_Comm_rank(MPI_COMM_WORLD, &myRank); - MPI_Comm *comm = NULL; + MPI_Comm comm = NULL; MPI_Reduce(&local_sum, &global_sum, 1, MPI_INT, MPI_SUM, 0, comm); if (myRank == 0) { diff --git a/micro-benches/0-level/coll/ArgError-MPIReduce-Count-3.c b/micro-benches/0-level/coll/ArgError-MPIReduce-Count-3.c index e1fcbe4..9a35d15 100644 --- a/micro-benches/0-level/coll/ArgError-MPIReduce-Count-3.c +++ b/micro-benches/0-level/coll/ArgError-MPIReduce-Count-3.c @@ -2,26 +2,26 @@ #include #include /* - * Too many elements in Reduce call. (line 20) + * Reduce call data types do not match. (line 20) */ int main(int argc, char *argv[]) { int myRank, numProcs; - int local_sum = 4; - int global_sum = 0; + int local_sum[5] = {4, 4, 4, 4, 4}; + int global_sum[5] = {0}; MPI_Init(&argc, &argv); MPI_Comm_size(MPI_COMM_WORLD, &numProcs); MPI_Comm_rank(MPI_COMM_WORLD, &myRank); if (myRank == 0) { - MPI_Reduce(&local_sum, &global_sum, 1, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); + MPI_Reduce(local_sum, global_sum, 1, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); } else { - MPI_Reduce(&local_sum, &global_sum, 5, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); + MPI_Reduce(local_sum, global_sum, 5, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); } if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIReduce-Count-3a.c b/micro-benches/0-level/coll/ArgError-MPIReduce-Count-3a.c new file mode 100644 index 0000000..a84e785 --- /dev/null +++ b/micro-benches/0-level/coll/ArgError-MPIReduce-Count-3a.c @@ -0,0 +1,30 @@ +#include +#include +#include +/* + * Reduce call attempts to read out of bounds. (line 20) + */ +int main(int argc, char *argv[]) { + int myRank, numProcs; + + int local_sum = 4; + int global_sum = 0; + + MPI_Init(&argc, &argv); + MPI_Comm_size(MPI_COMM_WORLD, &numProcs); + MPI_Comm_rank(MPI_COMM_WORLD, &myRank); + + if (myRank == 0) { + MPI_Reduce(&local_sum, &global_sum, 5, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); + } else { + MPI_Reduce(&local_sum, &global_sum, 5, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); + } + + if (myRank == 0) { + printf("Result: %d", global_sum); + } + + MPI_Finalize(); + + return 0; +} diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-1.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-1.c index 678daef..45215ee 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-1.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-1.c @@ -14,7 +14,7 @@ int main(int argc, char *argv[]) { int root = 0; - MPI_Scatter(&local_sum, 1, MPI_DOUBLE, &global_sum, 1, MPI_INT, root, MPI_COMM_NULL); + MPI_Scatter(local_sum, 1, MPI_DOUBLE, &global_sum, 1, MPI_INT, root, MPI_COMM_NULL); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-2.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-2.c index 1737c8e..ef4f877 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-2.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Communicator-2.c @@ -15,7 +15,7 @@ int main(int argc, char *argv[]) { int root = 0; MPI_Comm comm = NULL; - MPI_Scatter(&local_sum, 1, MPI_DOUBLE, &global_sum, 1, MPI_INT, root, comm); + MPI_Scatter(local_sum, 1, MPI_DOUBLE, &global_sum, 1, MPI_INT, root, comm); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-1.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-1.c index 8935117..44242e7 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-1.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-1.c @@ -2,19 +2,19 @@ #include #include /* - * Too many elements specified to send. (line 16) + * Scatter attempts to read out of bounds. (line 17) */ int main(int argc, char *argv[]) { int myRank, numProcs; int local_sum[2] = {1, 1}; - int global_sum = 0; + int global_sum[2] = {0, 0}; MPI_Init(&argc, &argv); int root = 0; - MPI_Scatter(&local_sum, 2, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 2, MPI_INT, &global_sum, 2, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-1a.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-1a.c new file mode 100644 index 0000000..178e9a4 --- /dev/null +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-1a.c @@ -0,0 +1,22 @@ +#include +#include +#include +/* + * Scatter receive and send type signatures do not match. (line 17) + */ +int main(int argc, char *argv[]) { + int myRank, numProcs; + + int local_sum[4] = {1, 1, 1, 1}; + int global_sum = 0; + + MPI_Init(&argc, &argv); + + int root = 0; + + MPI_Scatter(local_sum, 2, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + + MPI_Finalize(); + + return 0; +} diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-2.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-2.c index 72f15df..29e866a 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-2.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-2.c @@ -2,19 +2,19 @@ #include #include /* - * scatter has wrong number of elements for recv buffer. (line 16) + * Scatter has wrong number of elements for recv buffer. (line 16) */ int main(int argc, char *argv[]) { int myRank, numProcs; int local_sum[2] = {1, 1}; - int global_sum = 0; + int global_sum[3] = {0}; MPI_Init(&argc, &argv); int root = 0; - MPI_Scatter(&local_sum, 1, MPI_INT, &global_sum, 3, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 1, MPI_INT, global_sum, 3, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-3.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-3.c index 8ac6582..d3edbb8 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-3.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-3.c @@ -14,7 +14,7 @@ int main(int argc, char *argv[]) { int root = 0; - MPI_Scatter(&local_sum, -1, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, -1, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-4.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-4.c index 5ed4c4a..68fce0f 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Count-4.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Count-4.c @@ -14,7 +14,7 @@ int main(int argc, char *argv[]) { int root = 0; - MPI_Scatter(&local_sum, 1, MPI_INT, &global_sum, -1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 1, MPI_INT, &global_sum, -1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Rank.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Rank.c index 2f0142b..1770cb7 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Rank.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Rank.c @@ -14,7 +14,7 @@ int main(int argc, char *argv[]) { int root = -1; - MPI_Scatter(&local_sum, 1, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 1, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-RecvBuffer.c b/micro-benches/0-level/coll/ArgError-MPIScatter-RecvBuffer.c index bab32e0..a6f26f7 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-RecvBuffer.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-RecvBuffer.c @@ -14,7 +14,7 @@ int main(int argc, char *argv[]) { int root = 0; - MPI_Scatter(&local_sum, 1, MPI_INT, global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 1, MPI_INT, global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Type-1.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Type-1.c index 8161d4e..e3bbe99 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Type-1.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Type-1.c @@ -8,13 +8,13 @@ int main(int argc, char *argv[]) { int myRank, numProcs; int local_sum[2] = {1, 1}; - int global_sum = 0; + double global_sum = 0.0; MPI_Init(&argc, &argv); int root = 0; - MPI_Scatter(&local_sum, 1, MPI_DOUBLE, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 1, MPI_DOUBLE, &global_sum, 1, MPI_DOUBLE, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Type-2.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Type-2.c index 9be4567..18ed6ed 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Type-2.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Type-2.c @@ -7,14 +7,14 @@ int main(int argc, char *argv[]) { int myRank, numProcs; - int local_sum[2] = {1, 1}; + double local_sum[2] = {1.0, 1.0}; int global_sum = 0; MPI_Init(&argc, &argv); int root = 0; - MPI_Scatter(&local_sum, 1, MPI_INT, &global_sum, 1, MPI_DOUBLE, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 1, MPI_DOUBLE, &global_sum, 1, MPI_DOUBLE, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgError-MPIScatter-Type-3.c b/micro-benches/0-level/coll/ArgError-MPIScatter-Type-3.c index 7ca727a..5017dbb 100644 --- a/micro-benches/0-level/coll/ArgError-MPIScatter-Type-3.c +++ b/micro-benches/0-level/coll/ArgError-MPIScatter-Type-3.c @@ -8,13 +8,13 @@ int main(int argc, char *argv[]) { int myRank, numProcs; int local_sum[2] = {1, 1}; - int global_sum = 0; + unsigned int global_sum = 0; MPI_Init(&argc, &argv); int root = 0; - MPI_Scatter(&local_sum, 1, MPI_UNSIGNED, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Scatter(local_sum, 1, MPI_UNSIGNED, &global_sum, 1, MPI_UNSIGNED, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/coll/ArgMismatch-MPIReduce-Count.c b/micro-benches/0-level/coll/ArgMismatch-MPIReduce-Count.c index 40a813b..1acd306 100644 --- a/micro-benches/0-level/coll/ArgMismatch-MPIReduce-Count.c +++ b/micro-benches/0-level/coll/ArgMismatch-MPIReduce-Count.c @@ -15,13 +15,13 @@ int main(int argc, char *argv[]) { MPI_Comm_rank(MPI_COMM_WORLD, &myRank); if (myRank == 0) { - MPI_Reduce(&local_sum, &global_sum, 1, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); + MPI_Reduce(local_sum, global_sum, 1, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); } else { - MPI_Reduce(&local_sum, &global_sum, 2, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); + MPI_Reduce(local_sum, global_sum, 2, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); } if (myRank == 0) { - printf("Result: %d", global_sum); + printf("Result: %d", global_sum[0]); } MPI_Finalize(); diff --git a/micro-benches/0-level/coll/MisplacedCall-MPIBarrier-Deadlock-2.c b/micro-benches/0-level/coll/MisplacedCall-MPIBarrier-Deadlock-2.c index 4a367a4..73e48e2 100644 --- a/micro-benches/0-level/coll/MisplacedCall-MPIBarrier-Deadlock-2.c +++ b/micro-benches/0-level/coll/MisplacedCall-MPIBarrier-Deadlock-2.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { MPI_Comm_rank(MPI_COMM_WORLD, &rank); if (rank == 0) { - MPI_Recv(&buffer, N, MPI_INT, 1, MSG_TAG_A, MPI_COMM_WORLD, MPI_STATUS_IGNORE); + MPI_Recv(buffer, N, MPI_INT, 1, MSG_TAG_A, MPI_COMM_WORLD, MPI_STATUS_IGNORE); MPI_Barrier(MPI_COMM_WORLD); - MPI_Recv(&buffer2, N, MPI_INT, 1, MSG_TAG_B, MPI_COMM_WORLD, MPI_STATUS_IGNORE); + MPI_Recv(buffer2, N, MPI_INT, 1, MSG_TAG_B, MPI_COMM_WORLD, MPI_STATUS_IGNORE); } else if (rank == 1) { - MPI_Send(&buffer, N, MPI_INT, 0, MSG_TAG_A, MPI_COMM_WORLD); - MPI_Send(&buffer2, N, MPI_INT, 0, MSG_TAG_B, MPI_COMM_WORLD); + MPI_Send(buffer, N, MPI_INT, 0, MSG_TAG_A, MPI_COMM_WORLD); + MPI_Send(buffer2, N, MPI_INT, 0, MSG_TAG_B, MPI_COMM_WORLD); MPI_Barrier(MPI_COMM_WORLD); } diff --git a/micro-benches/0-level/conflo/coll/ArgError-MPIAllgather-SendCount.c b/micro-benches/0-level/conflo/coll/ArgError-MPIAllgather-SendCount.c index e50541a..9ae6a8e 100644 --- a/micro-benches/0-level/conflo/coll/ArgError-MPIAllgather-SendCount.c +++ b/micro-benches/0-level/conflo/coll/ArgError-MPIAllgather-SendCount.c @@ -21,7 +21,7 @@ int main(int argc, char *argv[]) { } else { num_elements = 2; } - MPI_Allgather(&local_sum, num_elements, MPI_INT, &global_sum, 1, MPI_INT, MPI_COMM_WORLD); + MPI_Allgather(&local_sum, num_elements, MPI_INT, global_sum, 1, MPI_INT, MPI_COMM_WORLD); if (myRank == 0) { printf("Result: %d %d\n", global_sum[0], global_sum[1]); diff --git a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-Dest.c b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-Dest.c index c209c98..6a1626f 100644 --- a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-Dest.c +++ b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-Dest.c @@ -21,7 +21,7 @@ int main(int argc, char *argv[]) { root = 0; } - MPI_Gather(&local_sum, 1, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Gather(&local_sum, 1, MPI_INT, global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvCount.c b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvCount.c index 5d29095..f3ce099 100644 --- a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvCount.c +++ b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvCount.c @@ -21,7 +21,7 @@ int main(int argc, char *argv[]) { } else { num_elems = 1; } - MPI_Gather(&local_sum, 1, MPI_INT, &global_sum, num_elems, MPI_INT, root, MPI_COMM_WORLD); + MPI_Gather(&local_sum, 1, MPI_INT, global_sum, num_elems, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); return 0; diff --git a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvType.c b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvType.c index 85cf988..87cce4c 100644 --- a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvType.c +++ b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-RecvType.c @@ -22,7 +22,7 @@ int main(int argc, char *argv[]) { recv_t = MPI_INT; } - MPI_Gather(&local_sum, 1, MPI_INT, &global_sum, 1, recv_t, root, MPI_COMM_WORLD); + MPI_Gather(&local_sum, 1, MPI_INT, global_sum, 1, recv_t, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-1.c b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-1.c index 39fdbb3..57eaf69 100644 --- a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-1.c +++ b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-1.c @@ -21,7 +21,7 @@ int main(int argc, char *argv[]) { } else { num_elemns = 1; } - MPI_Gather(&local_sum, num_elemns, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Gather(&local_sum, num_elemns, MPI_INT, global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-2.c b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-2.c index 44c3848..41c34c7 100644 --- a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-2.c +++ b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendCount-2.c @@ -22,7 +22,7 @@ int main(int argc, char *argv[]) { num_elems = 1; } - MPI_Gather(&local_sum, num_elems, MPI_INT, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Gather(&local_sum, num_elems, MPI_INT, global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendType.c b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendType.c index c0c1c23..4b967c0 100644 --- a/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendType.c +++ b/micro-benches/0-level/conflo/coll/ArgError-MPIGather-SendType.c @@ -21,7 +21,7 @@ int main(int argc, char *argv[]) { recv_t = MPI_INT; } - MPI_Gather(&local_sum, 1, recv_t, &global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); + MPI_Gather(&local_sum, 1, recv_t, global_sum, 1, MPI_INT, root, MPI_COMM_WORLD); MPI_Finalize(); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIGet-SizeNotMatching.c b/micro-benches/0-level/conflo/rma/ArgError-MPIGet-SizeNotMatching.c index e8263af..5052f12 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIGet-SizeNotMatching.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIGet-SizeNotMatching.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -31,10 +31,10 @@ int main(int argc, char *argv[]) { } local_buf = malloc(size * sizeof(int)); - MPI_Get(&local_buf, size, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Get(local_buf, size, MPI_INT, 1, 0, N, MPI_INT, win); free(local_buf); - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIGet-invalidAccess.c b/micro-benches/0-level/conflo/rma/ArgError-MPIGet-invalidAccess.c index ecbc8c6..40c8624 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIGet-invalidAccess.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIGet-invalidAccess.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -29,10 +29,10 @@ int main(int argc, char *argv[]) { } else { acc_start = 0; } - MPI_Get(&local_buf, N, MPI_INT, 1, acc_start, N, MPI_INT, win); + MPI_Get(local_buf, N, MPI_INT, 1, acc_start, N, MPI_INT, win); // acces start at position 5 so it will be out of the tgt win - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIGet-type.c b/micro-benches/0-level/conflo/rma/ArgError-MPIGet-type.c index d9b398d..ab14e6e 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIGet-type.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIGet-type.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -29,7 +29,7 @@ int main(int argc, char *argv[]) { } else { get_t = MPI_INT; } - MPI_Get(&local_buf, N, get_t, 1, 0, N, get_t, win); + MPI_Get(local_buf, N, get_t, 1, 0, N, get_t, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-InvalidAccess.c b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-InvalidAccess.c index 0061a26..da22bea 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-InvalidAccess.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-InvalidAccess.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -29,10 +29,10 @@ int main(int argc, char *argv[]) { } else { start_acc = 0; } - MPI_Put(&local_buf, N, MPI_INT, 1, start_acc, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, start_acc, N, MPI_INT, win); // acces start at position 5 so it will be out of the tgt win - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-SizeNotMatching.c b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-SizeNotMatching.c index 26b318a..bd593c2 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-SizeNotMatching.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-SizeNotMatching.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -35,7 +35,7 @@ int main(int argc, char *argv[]) { free(local_buf); - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-buffer.c b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-buffer.c index 32bd416..bd0d816 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-buffer.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-buffer.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-count.c b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-count.c index b0d9fc9..8b7ccf5 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-count.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-count.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -29,7 +29,7 @@ int main(int argc, char *argv[]) { } else { buf_size = N; } - MPI_Put(&local_buf, buf_size, MPI_INT, 1, 0, N * N, MPI_INT, win); + MPI_Put(local_buf, buf_size, MPI_INT, 1, 0, N * N, MPI_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-rank.c b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-rank.c index d309a0b..ade3b96 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-rank.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-rank.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -29,7 +29,7 @@ int main(int argc, char *argv[]) { } else { target_rank = 0; } - MPI_Put(&local_buf, N, MPI_INT, target_rank, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, target_rank, 0, N, MPI_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-type.c b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-type.c index 0d42e3d..eed0508 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIPut-type.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIPut-type.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -29,7 +29,7 @@ int main(int argc, char *argv[]) { } else { put_t = MPI_INT; } - MPI_Put(&local_buf, N, put_t, 1, 0, N, put_t, win); + MPI_Put(local_buf, N, put_t, 1, 0, N, put_t, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-OverwriteWin.c b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-OverwriteWin.c index 5552e33..edae540 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-OverwriteWin.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-OverwriteWin.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Win win1, win2; MPI_Win *w_handler = &win1; - MPI_Win_create(&buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); + MPI_Win_create(buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); if (argc == 1) { w_handler = &win1; diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-dispUnit.c b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-dispUnit.c index 00f8678..0203df5 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-dispUnit.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-dispUnit.c @@ -25,7 +25,7 @@ int main(int argc, char *argv[]) { disp_unit = 1; } - MPI_Win_create(&buffer, N, disp_unit, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N, disp_unit, MPI_INFO_NULL, MPI_COMM_WORLD, &win); MPI_Win_free(&win); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-overlap.c b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-overlap.c index cc1d4ef..0be3de2 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-overlap.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-overlap.c @@ -17,7 +17,7 @@ int main(int argc, char *argv[]) { MPI_Win win1, win2; - MPI_Win_create(&buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); + MPI_Win_create(buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); // overlapping window is forbidden (windows overlap as sizeof(int) > 1 ) int stride = 1; diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-size.c b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-size.c index 748d5ca..fbfe1d8 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-size.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIWinCreate-size.c @@ -26,7 +26,7 @@ int main(int argc, char *argv[]) { size = N; } - MPI_Win_create(&buffer, size, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, size, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); MPI_Win_free(&win); MPI_Finalize(); diff --git a/micro-benches/0-level/conflo/rma/ArgError-MPIWinFence-assert.c b/micro-benches/0-level/conflo/rma/ArgError-MPIWinFence-assert.c index 989d0c1..66d3553 100644 --- a/micro-benches/0-level/conflo/rma/ArgError-MPIWinFence-assert.c +++ b/micro-benches/0-level/conflo/rma/ArgError-MPIWinFence-assert.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); int m_assert = MPI_MODE_NOPUT; if (argc == 1) { diff --git a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIGet-bufferModification.c b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIGet-bufferModification.c index 49f411e..796709a 100644 --- a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIGet-bufferModification.c +++ b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIGet-bufferModification.c @@ -18,18 +18,18 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Get(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Get(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); if (argc == 1) { local_buf[0] = 42; // overwrite "receive buffer" } - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIPut-bufferModification.c b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIPut-bufferModification.c index 370d45d..1e5f5fc 100644 --- a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIPut-bufferModification.c +++ b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIPut-bufferModification.c @@ -18,18 +18,18 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Get(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Get(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); if (argc == 1) { local_buf[0] = 42; // overwrite "send buffer" } - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-1.c b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-1.c index 55098fc..853bedf 100644 --- a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-1.c +++ b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-1.c @@ -18,14 +18,14 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { int local_buf[N] = {0}; if (argc != 1) { MPI_Win_fence(0, win); } - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); MPI_Win_fence(0, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-2.c b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-2.c index 7301979..5a5ab93 100644 --- a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-2.c +++ b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFence-2.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -26,7 +26,7 @@ int main(int argc, char *argv[]) { MPI_Barrier(MPI_COMM_WORLD); } int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFree-bufferFree.c b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFree-bufferFree.c index ae411e0..e762f8c 100644 --- a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFree-bufferFree.c +++ b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinFree-bufferFree.c @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (argc == 1) { free(buffer); diff --git a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinLock.c b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinLock.c index 126cc1b..89484f2 100644 --- a/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinLock.c +++ b/micro-benches/0-level/conflo/rma/MisplacedCall-MPIWinLock.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); @@ -27,7 +27,7 @@ int main(int argc, char *argv[]) { if (argc == 1) { MPI_Win_lock(MPI_LOCK_SHARED, 1, 0, win); } - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); if (argc == 1) { MPI_Win_unlock(1, win); } diff --git a/micro-benches/0-level/conflo/rma/MissingCall-MPIFence.c b/micro-benches/0-level/conflo/rma/MissingCall-MPIFence.c index 516fa71..0573d26 100644 --- a/micro-benches/0-level/conflo/rma/MissingCall-MPIFence.c +++ b/micro-benches/0-level/conflo/rma/MissingCall-MPIFence.c @@ -18,14 +18,14 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { if (argc != 1) { MPI_Win_fence(0, win); } int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); if (argc != 1) { MPI_Win_fence(0, win); } diff --git a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinCreate.c b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinCreate.c index ca47ba5..20c6ad4 100644 --- a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinCreate.c +++ b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinCreate.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Win win; if (rank == 0) { - MPI_Win_create(&buffer, N, -1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), -1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); MPI_Win_free(&win); } diff --git a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-1.c b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-1.c index 0660803..dd255b6 100644 --- a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-1.c +++ b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-1.c @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-2.c b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-2.c index 1bc45a5..ba349d8 100644 --- a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-2.c +++ b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-2.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); } else { MPI_Win_fence(0, win); } diff --git a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-3.c b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-3.c index d0b8991..4a465c2 100644 --- a/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-3.c +++ b/micro-benches/0-level/conflo/rma/MissingCall-MPIWinFence-3.c @@ -18,11 +18,11 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); } else { } diff --git a/micro-benches/0-level/openmp/ordering/correct/two_collectives_3.c b/micro-benches/0-level/openmp/ordering/correct/two_collectives_3.c index a0870d1..7ac3749 100644 --- a/micro-benches/0-level/openmp/ordering/correct/two_collectives_3.c +++ b/micro-benches/0-level/openmp/ordering/correct/two_collectives_3.c @@ -7,7 +7,7 @@ #include /* - * the user had to make shure only one collective initialization is active at a time per process and communicator + * the user had to make sure only one collective initialization is active at a time per process and communicator * according to the standard (see p303) If one reads the standard strictly, this is also forbidden with mixed * collectives */ @@ -30,18 +30,19 @@ int main(int argc, char *argv[]) { if (myRank == 0) { #pragma omp parallel num_threads(NUM_THREADS) { -#pragma omp task +#pragma omp single + { +#pragma omp task depend(inout: myRank) { -#pragma omp critical MPI_Barrier(MPI_COMM_WORLD); } -#pragma omp task +#pragma omp task depend(inout: myRank) { int *buffer = malloc(BUFFER_LENGTH_BYTE); -#pragma omp critical MPI_Bcast(buffer, BUFFER_LENGTH_INT, MPI_INT, 0, MPI_COMM_WORLD); free(buffer); } + } } // end parallel } diff --git a/micro-benches/0-level/openmp/ordering/two_collectives_3.c b/micro-benches/0-level/openmp/ordering/two_collectives_3.c index 4c5a8d7..35944f6 100644 --- a/micro-benches/0-level/openmp/ordering/two_collectives_3.c +++ b/micro-benches/0-level/openmp/ordering/two_collectives_3.c @@ -7,7 +7,7 @@ #include /* - * the user had to make shure only one collective initialization is active at a time per process and communicator + * the user had to make sure only one collective initialization is active at a time per process and communicator * according to the standard (see p303) If one reads the standard strictly, this is also forbidden with mixed * collectives */ @@ -29,7 +29,6 @@ int main(int argc, char *argv[]) { const int other_rank = size - myRank - 1; - if (myRank == 0) { #pragma omp parallel num_threads(NUM_THREADS) { #pragma omp task @@ -47,15 +46,6 @@ int main(int argc, char *argv[]) { free(buffer); } } // end parallel - } - - else { // other MPI rank - usleep(5); - MPI_Barrier(MPI_COMM_WORLD); - int *buffer = malloc(BUFFER_LENGTH_BYTE); - MPI_Bcast(buffer, BUFFER_LENGTH_INT, MPI_INT, 0, MPI_COMM_WORLD); - free(buffer); - } has_error_manifested(overlap_count != 0); MPI_Finalize(); diff --git a/micro-benches/0-level/pt2pt/ArgError-MPIIRecv-Type-3.c b/micro-benches/0-level/pt2pt/ArgError-MPIIRecv-Type-3.c index 2c97627..5bf7100 100644 --- a/micro-benches/0-level/pt2pt/ArgError-MPIIRecv-Type-3.c +++ b/micro-benches/0-level/pt2pt/ArgError-MPIIRecv-Type-3.c @@ -6,18 +6,19 @@ #define N 1000 /* - * Too few elements are specified in receive. line 23 + * Local and call data types do not match. line 25 */ int main(int argc, char *argv[]) { int rank; int buffer[N] = {0}; + unsigned int ubuffer[N] = {0}; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &rank); if (rank == 0) { - MPI_Send(buffer, N, MPI_INT, 1, MSG_TAG_A, MPI_COMM_WORLD); + MPI_Send(ubuffer, N, MPI_UNSIGNED, 1, MSG_TAG_A, MPI_COMM_WORLD); } else if (rank == 1) { MPI_Request req; MPI_Status stat; diff --git a/micro-benches/0-level/pt2pt/ArgError-MPIIRecv-Type-3a.c b/micro-benches/0-level/pt2pt/ArgError-MPIIRecv-Type-3a.c new file mode 100644 index 0000000..bbb9d74 --- /dev/null +++ b/micro-benches/0-level/pt2pt/ArgError-MPIIRecv-Type-3a.c @@ -0,0 +1,32 @@ +#include +#include +#include + +#define MSG_TAG_A 124523 +#define N 1000 + +/* + * Send and recv type signatures do not match. line 25 + */ + +int main(int argc, char *argv[]) { + int rank; + int buffer[N] = {0}; + unsigned int ubuffer[N] = {0}; + + MPI_Init(&argc, &argv); + MPI_Comm_rank(MPI_COMM_WORLD, &rank); + + if (rank == 0) { + MPI_Send(ubuffer, N, MPI_UNSIGNED, 1, MSG_TAG_A, MPI_COMM_WORLD); + } else if (rank == 1) { + MPI_Request req; + MPI_Status stat; + MPI_Irecv(buffer, N, MPI_INT, 0, MSG_TAG_A, MPI_COMM_WORLD, &req); + MPI_Wait(&req, &stat); + } + + MPI_Finalize(); + + return 0; +} diff --git a/micro-benches/0-level/rma/ArgError-MPIGet-SizeNotMatching.c b/micro-benches/0-level/rma/ArgError-MPIGet-SizeNotMatching.c index f3f5672..45b4392 100644 --- a/micro-benches/0-level/rma/ArgError-MPIGet-SizeNotMatching.c +++ b/micro-benches/0-level/rma/ArgError-MPIGet-SizeNotMatching.c @@ -18,14 +18,14 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); - int local_buf[5] = {0}; - MPI_Get(&local_buf, 5, MPI_INT, 1, 0, N, MPI_INT, win); + int local_buf[4] = {0}; + MPI_Get(local_buf, 5, MPI_INT, 1, 0, N, MPI_INT, win); - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/ArgError-MPIGet-buffer.c b/micro-benches/0-level/rma/ArgError-MPIGet-buffer.c index 02e4419..9b3d707 100644 --- a/micro-benches/0-level/rma/ArgError-MPIGet-buffer.c +++ b/micro-benches/0-level/rma/ArgError-MPIGet-buffer.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/ArgError-MPIGet-invalidAccess.c b/micro-benches/0-level/rma/ArgError-MPIGet-invalidAccess.c index f8b846d..dc99610 100644 --- a/micro-benches/0-level/rma/ArgError-MPIGet-invalidAccess.c +++ b/micro-benches/0-level/rma/ArgError-MPIGet-invalidAccess.c @@ -18,15 +18,15 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Get(&local_buf, N, MPI_INT, 1, 5, N, MPI_INT, win); - // acces start at position 5 so it will be out of the tgt win + MPI_Get(local_buf, N, MPI_INT, 1, 5, N, MPI_INT, win); + // access start at position 5 so it will be out of the tgt win - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/ArgError-MPIGet-rank.c b/micro-benches/0-level/rma/ArgError-MPIGet-rank.c index 17d7093..519b346 100644 --- a/micro-benches/0-level/rma/ArgError-MPIGet-rank.c +++ b/micro-benches/0-level/rma/ArgError-MPIGet-rank.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Get(&local_buf, N, MPI_INT, -1, 0, N, MPI_INT, win); + MPI_Get(local_buf, N, MPI_INT, -1, 0, N, MPI_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/rma/ArgError-MPIPut-InvalidAccess.c b/micro-benches/0-level/rma/ArgError-MPIPut-InvalidAccess.c index a37a98c..f4351c5 100644 --- a/micro-benches/0-level/rma/ArgError-MPIPut-InvalidAccess.c +++ b/micro-benches/0-level/rma/ArgError-MPIPut-InvalidAccess.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 5, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 5, N, MPI_INT, win); // acces start at position 5 so it will be out of the tgt win MPI_Win_fence(MPI_MODE_NOPRECEDE, win); diff --git a/micro-benches/0-level/rma/ArgError-MPIPut-SizeNotMatching.c b/micro-benches/0-level/rma/ArgError-MPIPut-SizeNotMatching.c index a014b57..ec620a9 100644 --- a/micro-benches/0-level/rma/ArgError-MPIPut-SizeNotMatching.c +++ b/micro-benches/0-level/rma/ArgError-MPIPut-SizeNotMatching.c @@ -18,14 +18,14 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, 10, MPI_INT, 1, 0, 5, MPI_INT, win); + MPI_Put(local_buf, 15, MPI_INT, 1, 0, 15, MPI_INT, win); - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/ArgError-MPIPut-buffer.c b/micro-benches/0-level/rma/ArgError-MPIPut-buffer.c index 0a46e4e..bd0c240 100644 --- a/micro-benches/0-level/rma/ArgError-MPIPut-buffer.c +++ b/micro-benches/0-level/rma/ArgError-MPIPut-buffer.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/ArgError-MPIPut-count.c b/micro-benches/0-level/rma/ArgError-MPIPut-count.c index f014ed8..b7384cc 100644 --- a/micro-benches/0-level/rma/ArgError-MPIPut-count.c +++ b/micro-benches/0-level/rma/ArgError-MPIPut-count.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N * N, MPI_INT, 1, 0, N * N, MPI_INT, win); + MPI_Put(local_buf, N * N, MPI_INT, 1, 0, N * N, MPI_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/rma/ArgError-MPIPut-rank.c b/micro-benches/0-level/rma/ArgError-MPIPut-rank.c index 9dd6f65..646f520 100644 --- a/micro-benches/0-level/rma/ArgError-MPIPut-rank.c +++ b/micro-benches/0-level/rma/ArgError-MPIPut-rank.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, -1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, -1, 0, N, MPI_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/rma/ArgError-MPIWinCreate-OverwriteWin.c b/micro-benches/0-level/rma/ArgError-MPIWinCreate-OverwriteWin.c index e0d58ad..d83dd98 100644 --- a/micro-benches/0-level/rma/ArgError-MPIWinCreate-OverwriteWin.c +++ b/micro-benches/0-level/rma/ArgError-MPIWinCreate-OverwriteWin.c @@ -15,14 +15,13 @@ int main(int argc, char *argv[]) { MPI_Comm_size(MPI_COMM_WORLD, &numProcs); MPI_Comm_rank(MPI_COMM_WORLD, &rank); - MPI_Win win1, win2; + MPI_Win win1; - MPI_Win_create(&buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); + MPI_Win_create(buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); MPI_Win_create(&buffer[N / 2], (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); MPI_Win_free(&win1); - MPI_Win_free(&win2); MPI_Finalize(); diff --git a/micro-benches/0-level/rma/ArgError-MPIWinCreate-dispUnit.c b/micro-benches/0-level/rma/ArgError-MPIWinCreate-dispUnit.c index 817cb04..0abebca 100644 --- a/micro-benches/0-level/rma/ArgError-MPIWinCreate-dispUnit.c +++ b/micro-benches/0-level/rma/ArgError-MPIWinCreate-dispUnit.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Win win; - MPI_Win_create(&buffer, N, -1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N, -1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); MPI_Win_free(&win); diff --git a/micro-benches/0-level/rma/ArgError-MPIWinCreate-invalidBuffer-2.c b/micro-benches/0-level/rma/ArgError-MPIWinCreate-invalidBuffer-2.c index aeaf396..ada8959 100644 --- a/micro-benches/0-level/rma/ArgError-MPIWinCreate-invalidBuffer-2.c +++ b/micro-benches/0-level/rma/ArgError-MPIWinCreate-invalidBuffer-2.c @@ -2,7 +2,7 @@ #include #include /* - * invalid buffer (buffer on temporary stack mem will be feed at function exit) (line 13) + * invalid buffer (buffer on temporary stack mem will be freed at function exit) (line 14) * */ @@ -11,7 +11,7 @@ void get_win(MPI_Win *win) { int buffer[N]; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, win); return; } diff --git a/micro-benches/0-level/rma/ArgError-MPIWinCreate-overlap.c b/micro-benches/0-level/rma/ArgError-MPIWinCreate-overlap.c index 0d8fc49..a3d5690 100644 --- a/micro-benches/0-level/rma/ArgError-MPIWinCreate-overlap.c +++ b/micro-benches/0-level/rma/ArgError-MPIWinCreate-overlap.c @@ -17,7 +17,7 @@ int main(int argc, char *argv[]) { MPI_Win win1, win2; - MPI_Win_create(&buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); + MPI_Win_create(buffer, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win1); // overlapping window is forbidden (windows overlap as sizeof(int) > 1 ) MPI_Win_create(buffer + N / 2, (N / 2) * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win2); diff --git a/micro-benches/0-level/rma/ArgError-MPIWinCreate-size.c b/micro-benches/0-level/rma/ArgError-MPIWinCreate-size.c index f50765c..e008935 100644 --- a/micro-benches/0-level/rma/ArgError-MPIWinCreate-size.c +++ b/micro-benches/0-level/rma/ArgError-MPIWinCreate-size.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Win win; - MPI_Win_create(&buffer, -1, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, -1, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); MPI_Win_free(&win); MPI_Finalize(); diff --git a/micro-benches/0-level/rma/ArgError-MPIWinFence-assert.c b/micro-benches/0-level/rma/ArgError-MPIWinFence-assert.c index 05760b8..a6b11be 100644 --- a/micro-benches/0-level/rma/ArgError-MPIWinFence-assert.c +++ b/micro-benches/0-level/rma/ArgError-MPIWinFence-assert.c @@ -18,14 +18,14 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/ArgMismatch-MPIGet-type.c b/micro-benches/0-level/rma/ArgMismatch-MPIGet-type.c index 2426c58..6ce859c 100644 --- a/micro-benches/0-level/rma/ArgMismatch-MPIGet-type.c +++ b/micro-benches/0-level/rma/ArgMismatch-MPIGet-type.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Get(&local_buf, N, MPI_LONG_LONG_INT, 1, 0, N, MPI_LONG_LONG_INT, win); + MPI_Get(local_buf, N, MPI_LONG_LONG_INT, 1, 0, N, MPI_LONG_LONG_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/rma/ArgMismatch-MPIPut-type.c b/micro-benches/0-level/rma/ArgMismatch-MPIPut-type.c index c6dc9b1..320abb7 100644 --- a/micro-benches/0-level/rma/ArgMismatch-MPIPut-type.c +++ b/micro-benches/0-level/rma/ArgMismatch-MPIPut-type.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_LONG_LONG_INT, 1, 0, N, MPI_LONG_LONG_INT, win); + MPI_Put(local_buf, N, MPI_LONG_LONG_INT, 1, 0, N, MPI_LONG_LONG_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/rma/MisplacedCall-MPIGet-bufferModification.c b/micro-benches/0-level/rma/MisplacedCall-MPIGet-bufferModification.c index 53739e9..9870a76 100644 --- a/micro-benches/0-level/rma/MisplacedCall-MPIGet-bufferModification.c +++ b/micro-benches/0-level/rma/MisplacedCall-MPIGet-bufferModification.c @@ -18,16 +18,16 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Get(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Get(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); local_buf[0] = 42; // overwrite "receive buffer" - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/MisplacedCall-MPIPut-bufferModification.c b/micro-benches/0-level/rma/MisplacedCall-MPIPut-bufferModification.c index f1e8ce7..5157452 100644 --- a/micro-benches/0-level/rma/MisplacedCall-MPIPut-bufferModification.c +++ b/micro-benches/0-level/rma/MisplacedCall-MPIPut-bufferModification.c @@ -18,16 +18,16 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Get(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Get(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); local_buf[0] = 42; // overwrite "send buffer" - MPI_Win_fence(MPI_MODE_NOPRECEDE, win); + MPI_Win_fence(0, win); } else { MPI_Win_fence(0, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-1.c b/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-1.c index 3e96ed1..70d5ea0 100644 --- a/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-1.c +++ b/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-1.c @@ -18,11 +18,11 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); MPI_Win_fence(0, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-2.c b/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-2.c index f0fb727..293d8c1 100644 --- a/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-2.c +++ b/micro-benches/0-level/rma/MisplacedCall-MPIWinFence-2.c @@ -18,13 +18,13 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); MPI_Barrier(MPI_COMM_WORLD); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); MPI_Win_fence(0, win); } else { diff --git a/micro-benches/0-level/rma/MisplacedCall-MPIWinFree-bufferFree.c b/micro-benches/0-level/rma/MisplacedCall-MPIWinFree-bufferFree.c index d70449e..22d236d 100644 --- a/micro-benches/0-level/rma/MisplacedCall-MPIWinFree-bufferFree.c +++ b/micro-benches/0-level/rma/MisplacedCall-MPIWinFree-bufferFree.c @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); free(buffer); MPI_Win_free(&win); diff --git a/micro-benches/0-level/rma/MisplacedCall-MPIWinLock.c b/micro-benches/0-level/rma/MisplacedCall-MPIWinLock.c index 8d3418b..69c1e0b 100644 --- a/micro-benches/0-level/rma/MisplacedCall-MPIWinLock.c +++ b/micro-benches/0-level/rma/MisplacedCall-MPIWinLock.c @@ -18,14 +18,14 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; MPI_Win_lock(MPI_LOCK_SHARED, 1, 0, win); - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); MPI_Win_unlock(1, win); MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/MissingCall-MPIFence.c b/micro-benches/0-level/rma/MissingCall-MPIFence.c index 006a322..95c1dab 100644 --- a/micro-benches/0-level/rma/MissingCall-MPIFence.c +++ b/micro-benches/0-level/rma/MissingCall-MPIFence.c @@ -18,11 +18,11 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); } else { } diff --git a/micro-benches/0-level/rma/MissingCall-MPIWinCreate.c b/micro-benches/0-level/rma/MissingCall-MPIWinCreate.c index ca47ba5..57616b0 100644 --- a/micro-benches/0-level/rma/MissingCall-MPIWinCreate.c +++ b/micro-benches/0-level/rma/MissingCall-MPIWinCreate.c @@ -18,7 +18,7 @@ int main(int argc, char *argv[]) { MPI_Win win; if (rank == 0) { - MPI_Win_create(&buffer, N, -1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), sizeof(int), MPI_INFO_NULL, MPI_COMM_WORLD, &win); MPI_Win_free(&win); } diff --git a/micro-benches/0-level/rma/MissingCall-MPIWinFence-1.c b/micro-benches/0-level/rma/MissingCall-MPIWinFence-1.c index 0660803..dd255b6 100644 --- a/micro-benches/0-level/rma/MissingCall-MPIWinFence-1.c +++ b/micro-benches/0-level/rma/MissingCall-MPIWinFence-1.c @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); diff --git a/micro-benches/0-level/rma/MissingCall-MPIWinFence-2.c b/micro-benches/0-level/rma/MissingCall-MPIWinFence-2.c index 1bc45a5..ba349d8 100644 --- a/micro-benches/0-level/rma/MissingCall-MPIWinFence-2.c +++ b/micro-benches/0-level/rma/MissingCall-MPIWinFence-2.c @@ -18,12 +18,12 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { MPI_Win_fence(0, win); int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); } else { MPI_Win_fence(0, win); } diff --git a/micro-benches/0-level/rma/MissingCall-MPIWinFence-3.c b/micro-benches/0-level/rma/MissingCall-MPIWinFence-3.c index d0b8991..4a465c2 100644 --- a/micro-benches/0-level/rma/MissingCall-MPIWinFence-3.c +++ b/micro-benches/0-level/rma/MissingCall-MPIWinFence-3.c @@ -18,11 +18,11 @@ int main(int argc, char *argv[]) { int *buffer = malloc(N * sizeof(int)); MPI_Win win; - MPI_Win_create(&buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); + MPI_Win_create(buffer, N * sizeof(int), 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win); if (rank == 0) { int local_buf[N] = {0}; - MPI_Put(&local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); + MPI_Put(local_buf, N, MPI_INT, 1, 0, N, MPI_INT, win); } else { } diff --git a/micro-benches/0-level/usertypes/ArgError-MPISend-Type-4.c b/micro-benches/0-level/usertypes/ArgError-MPISend-Type-4.c index 7f98494..4f07928 100644 --- a/micro-benches/0-level/usertypes/ArgError-MPISend-Type-4.c +++ b/micro-benches/0-level/usertypes/ArgError-MPISend-Type-4.c @@ -30,6 +30,7 @@ int main(int argc, char *argv[]) { MPI_Recv(buf, 1, two_ints, 0, MY_TAG, MPI_COMM_WORLD, MPI_STATUS_IGNORE); } + MPI_Type_free(&two_ints); MPI_Finalize(); free(buf); diff --git a/micro-benches/0-level/usertypes/ArgMismatch-MPIRecv-Type-6.c b/micro-benches/0-level/usertypes/ArgMismatch-MPIRecv-Type-6.c index 1e47fc8..ff472a2 100644 --- a/micro-benches/0-level/usertypes/ArgMismatch-MPIRecv-Type-6.c +++ b/micro-benches/0-level/usertypes/ArgMismatch-MPIRecv-Type-6.c @@ -37,6 +37,7 @@ int main(int argc, char *argv[]) { if (my_rank == 0) { MPI_Send(buf, 1, col_t, 1, MY_TAG, MPI_COMM_WORLD); } else if (my_rank == 1) { + MPI_Type_free(&col_t); MPI_Type_vector(16, 2, 16, MPI_FLOAT, &col_t); MPI_Type_commit(&col_t); MPI_Recv(buf, 1, col_t, 0, MY_TAG, MPI_COMM_WORLD, MPI_STATUS_IGNORE);