Derived datatypes
We have also evaluated the performance of our optimization mechanisms when using MPI derived datatypes. We used a ping-pong program which exchanges arrays of a given indexed datatype. The datatype describes a sequence of two data blocks, one small block (64 bytes) followed by a large data block (256 KBytes). Using the NewMadeleine scheduling strategy which aggregates all the small blocks (using messages reordering) with the rendez-vous requests of the large blocks, Mad-MPI exhibits a gain of about 70% in comparison with MPICH and about 50% with OpenMPI over MX and until about 70% versus MPICH over Quadrics.