MPI_Allgatherv
int MPI_Allgatherv(void* , int, MPI_Datatype, void*, int *, int *, MPI_Datatype, MPI_Comm);
Collects messages from each task and distributes the resulting message to all tasks. Messages can have variable sizes and displacements.