Note that the shift operations, because they allow simultaneous sending and
receiving, are not subject to the serialization that just using MPI_Send and
MPI_Recv are.
