cleaner MPI-2 implementation