On Mon, Feb 04, 2008 at 09:08:45AM -0500, Richard Treumann wrote: > To me, the MPI standard is clear that a program like this: > > task 0: > MPI_Init > sleep(3000); > start receiving messages > > each of tasks 1 to n-1: > MPI_Init > loop 5000 times > MPI_Send(small message to 0) > end loop > > May send some small messages eagerly if there is space at task 0 but must > block each task 1 to n-1 before allowing task 0 to run out of eager buffer > space. Doing this requires a token or credit management system in which > each task has credits for known buffer space at task 0. Each task will send > eagerly to task 0 until the sender runs out of credits and then must switch > to rendezvous protocol. And rendezvous messages are not free either. So this approach will only postpone failure a little bit.
-- Gleb.