diff options
author | Sree Harsha Totakura <totakura@in.tum.de> | 2012-12-07 15:46:25 +0000 |
---|---|---|
committer | Sree Harsha Totakura <totakura@in.tum.de> | 2012-12-07 15:46:25 +0000 |
commit | 0d45e157a134a01ec59e8fc564918a1caa5070c4 (patch) | |
tree | b3ca74f32caed644d7bb212c1f73c463602ccc3c /src/testbed/gnunet_mpi_test.c | |
parent | 48b428a4e66e8cf40afac812e4abb97831360501 (diff) | |
download | gnunet-0d45e157a134a01ec59e8fc564918a1caa5070c4.tar.gz gnunet-0d45e157a134a01ec59e8fc564918a1caa5070c4.zip |
- MPI test program
Diffstat (limited to 'src/testbed/gnunet_mpi_test.c')
-rw-r--r-- | src/testbed/gnunet_mpi_test.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/testbed/gnunet_mpi_test.c b/src/testbed/gnunet_mpi_test.c new file mode 100644 index 000000000..26e6fdac1 --- /dev/null +++ b/src/testbed/gnunet_mpi_test.c | |||
@@ -0,0 +1,36 @@ | |||
1 | #include "platform.h" | ||
2 | #include "gnunet_util_lib.h" | ||
3 | #include <mpi.h> | ||
4 | |||
5 | int main (int argc, char *argv[]) | ||
6 | { | ||
7 | char *msg; | ||
8 | char *filename; | ||
9 | pid_t pid; | ||
10 | int ntasks; | ||
11 | int rank; | ||
12 | int msg_size; | ||
13 | int ret; | ||
14 | |||
15 | ret = GNUNET_SYSERR; | ||
16 | if (MPI_SUCCESS != MPI_Init (&argc, &argv)) | ||
17 | return 1; | ||
18 | if (MPI_SUCCESS != MPI_Comm_size (MPI_COMM_WORLD, &ntasks)) | ||
19 | goto finalize; | ||
20 | if (MPI_SUCCESS != MPI_Comm_rank (MPI_COMM_WORLD, &rank)) | ||
21 | goto finalize; | ||
22 | (void) GNUNET_asprintf (&filename, "%d.mpiout", rank); | ||
23 | msg_size = GNUNET_asprintf (&msg, "My rank is: %d\n", rank); | ||
24 | if (msg_size == GNUNET_DISK_fn_write (filename, | ||
25 | msg, msg_size, | ||
26 | GNUNET_DISK_PERM_USER_READ | ||
27 | | GNUNET_DISK_PERM_GROUP_READ | ||
28 | | GNUNET_DISK_PERM_USER_WRITE | ||
29 | | GNUNET_DISK_PERM_GROUP_WRITE)) | ||
30 | ret = GNUNET_OK; | ||
31 | GNUNET_free (filename); | ||
32 | GNUNET_free (msg); | ||
33 | finalize: | ||
34 | (void) MPI_Finalize (); | ||
35 | return (GNUNET_OK == ret) ? 0 : 1; | ||
36 | } | ||