Пример 4.14 Это версия примера 4.2 с использованием all-gather. Здесь осуществляется сбор 100 чисел типа int от каждого процесса в группе для каждого процесса.
MPI_Comm comm;
int gsize,sendarray[100];
int *rbuf;
...
MPI_Comm_size(comm, &gsize);
rbuf = (int *)malloc(gsize*100*sizeof(int));
MPI_Allgather(sendarray, 100, MPI_INT, rbuf, 100, MPI_INT, comm);
После исполнения вызова каждый процесс содержит конкатенацию данных всей группы.