On May 8, 2005, at 5:38 PM, Stephan Mertens wrote:
> I ran some more experiments. It seems as if LAM does provide
> asynchronous message passing progress for both non-blocking
> and buffered send if and only if it can send "short" messages
> via tcp. This makes sense. Maybe the LAM team should consider
> to add this to the FAQ entry.
Sure, we can do this. A clarification is probably in order; thanks.
However, note that it is not always the case -- it is subject to
operating system and/or device limits. So if you send too many short
messages (perhaps without receiving them on the receiver), the
OS/device may decide the block, such that even though LAM tries to send
them eagerly, they don't go.
> What I still don't understand is why asynchronous progress is
> never observed for sysv and usysv, even for messages much
> smaller than the corresponding "short message" limits.
For messages on the same node, or messages to processes on different
nodes?
Every RPI works differently; remember that the short message size for
shared memory is considerably smaller than it is for TCP (because we
have far less physical resources available). Have a look through the
RPI descriptions in the LAM/MPI User's Guide:
http://www.lam-mpi.org/using/docs/.
--
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/
|