George Bosilca wrote:
> I can't confirm or deny. The only thing I can tell is that the same
> test works fine over other BTL, so this tent either to pinpoint a
> problem in the sm BTL or in a particular path in the PML (the one
> used by the sm BTL). I'll have to dig a little bit more into it, but
> I was hoping to do it in the context of the new sm BTL (just to avoid
> having to do it twice).
Okay. I'll try to get "single queue" put back soon and might look at
1791 along the way.
But here is what I wonder. Let's say you have one-way traffic -- either
rank A sending rank B messages without ever any traffic in the other
direction, or repeated MPI_Reduce operations always with the same root
-- and the senders somehow get well ahead of the receiver. Say, A wants
to pump 1,000,000 messages over and B is busy doing something else.
What should happen? What should the PML and BTL do? The conditions
could range from B not being in MPI at all, or B listening to the BTL
without yet having the posted receives to match. Should the connection
become congested and force the sender to wait -- and if so, is this in
the BTL or PML? Or, should B keep on queueing up the unexpected messages?
After some basic "single queue" putbacks, I'll try to look at the code
and understand what the PML is doing in cases like this.