4 char *datarep = "external32";
7 #define DBLE_COUNT (24)
11 unsigned *uint_data = calloc(UINT_COUNT, sizeof(unsigned));
12 double *dble_data = calloc(DBLE_COUNT, sizeof(double));
13 MPI_Aint uint_pack_size, dble_pack_size;
16 MPI_Aint position = 0;
20 MPI_Pack_external_size(datarep, UINT_COUNT, MPI_UNSIGNED, &uint_pack_size);
21 MPI_Pack_external_size(datarep, DBLE_COUNT, MPI_DOUBLE, &dble_pack_size);
23 pack_size = uint_pack_size + dble_pack_size;
24 pack_buffer = malloc(pack_size);
26 MPI_Pack_external(datarep, uint_data, UINT_COUNT, MPI_UNSIGNED, pack_buffer, pack_size,
28 MPI_Pack_external(datarep, dble_data, DBLE_COUNT, MPI_DOUBLE, pack_buffer, pack_size,
37 printf(" No Errors\n");