- poll FIFO occasionally even if just sending messages
- retry pending sends more often
- just before trying a new send
- as part of mca_btl_sm_component_progress
Maintain two new mca_btl_sm_component variables, num_outstanding_frags
and num_pending_sends, to keep overhead low.
Drain only one message fragment from the FIFO per btl_sm_component_progress
call (rather than drain until empty, which in retrospect everyone considers
to have been a mistake).
This commit was SVN r21551.
* The main thing done here is to convert from multiple FIFOs/queues per
receiver (each receiver has one FIFO for each sender) to a single FIFO/queue
per receiver (all senders sharing the same FIFO for a given receiver).
* This requires rewriting the FIFO support, so that
ompi/class/ompi_[circular_buffer_]fifo.h is no longer used and FIFO
support is instead in btl_sm.h.
* The number of FIFOs per receiver is actually an MCA tunable parameter,
but it appears that 1 or possibly 2 FIFOs (even for 112 local processes)
per receiver is sufficient.
This commit was SVN r20578.
the fragments that failed to be send, there is no need to replicate the same
mechanism in the BTL.
Force the SM BTL to empty all ack fragments in the component progress function.
This commit was SVN r18724.
Basically revert this part of r16015.
This commit was SVN r16029.
The following SVN revision numbers were found above:
r16015 --> open-mpi/ompi@435e7d80e9
waist slightly more memory, but prevents problem when fifo cannot be allocated
later during a job run when memory resource is exhausted.
This commit was SVN r14119.
allocated from mpool memory (which is registered memory for RDMA transports)
This is not a problem for a small jobs, but for a big number of ranks an
amount of waisted memory is big.
This commit was SVN r13921.
buffer fails. If cb is already allocated, but it is full and allocation of
additional cb fails, we spin waiting for receiver to free space in existing
cb.
This commit was SVN r13635.
Correct the spring of the vpid problem (similar to the one in the SM PTL).
Add one more argument to the MCA_BTL_SM_FIFO_WRITE macro who will get passed down to the
MCA_BTL_SM_SIGNAL_PEER macro to allow it to have the fifo_fd file descriptor.
This commit was SVN r7305.