This source file includes following definitions.
- mpi_send_1di
- mpi_send_1di1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #include <stdio.h>
25
26 #define MPI_COMM_WORLD 0
27 #define MPI_COMM_SELF 1
28
29 #define MPI_INTEGER 7
30 #define MPI_INTEGER1 8
31
32
33 void mpi_send_1di(int* a, int* count, int* datatype,
34 int* dest, int* tag, int* comm, int* ierr)
35 {
36 int i;
37
38 *ierr = 0;
39 for (i = 0; i < *count; i++) {
40 if (a[i] != 10 - i) {
41 printf("a[%d] = %d\n", i, a[i]);
42 *ierr = 1;
43 }
44 }
45 if (*count != 10) *ierr = 1;
46 if (*datatype != MPI_INTEGER) *ierr = 1;
47 if (*dest != 59) *ierr = 1;
48 if (*tag != 999) *ierr = 1;
49 if (*comm != MPI_COMM_WORLD) *ierr = 1;
50 }
51
52
53 void mpi_send_1di1(char* a, int* count, int* datatype,
54 int* dest, int* tag, int* comm, int* ierr)
55 {
56 int i;
57
58 *ierr = 0;
59 for (i = 0; i < *count; i++) {
60 if (a[i] != i+1) {
61 printf("a[%d] = %d\n", i, a[i]);
62 *ierr = 1;
63 }
64 }
65 if (*count != 10) *ierr = 1;
66 if (*datatype != MPI_INTEGER1) *ierr = 1;
67 if (*dest != 59) *ierr = 1;
68 if (*tag != 999) *ierr = 1;
69 if (*comm != MPI_COMM_SELF) *ierr = 1;
70 }
71