I don't think that the displacements (disps) are being handled correctly
in MPI_Allgatherv, for a single process case.
The disps are being handled as byte offsets, instead of 'item'
offsets...they need to be multiplied by the size, in bytes,
of the MPI_Datatype being sent.