Sorry I previously missed this mail.
I just recently added an MCA parameter to OMPI that allows enabling
or disabling Nagle's algorithm on the TCP BTL (OMPI's lowest layer
for MPI point-to-point communications for TCP). However, I'll tell
you that some of the OMPI developers thought that this was a useless
MCA parameter and that all users should leave Nagle's algorithm
disabled because MPI performance is usually concerned about the
latency -- and when it's not about latency, the extra bandwidth you
get from Nagle is so small that it won't matter.
This new MCA parameter is btl_tcp_use_nagle, and it accepts values of
0 or 1. It will show up in Open MPI v1.3 (or you can get a nightly
trunk tarball and try it out there).
We do not have a fine-grained mechanism to select to use Nagle for
some sockets and not for other sockets, sorry...
On Jul 5, 2007, at 8:26 AM, Biagio Cosenza wrote:
> I'm using Open MPI in a real time rendering system and I need an
> accurate latency control.
> consider the 'Nagle' optimization implemented in the TCP/IP
> protocol, which delays small packets for a short time period to
> possibly combine them with successive packets generating network
> friendly packet sizes.
> This optimization can result in a better throughput when lots of
> small packets are sent, but can also lead to considerable
> latencies, if packets get delayed several times.
> For example, I want to turn the Nagle optimization on for sockets
> in which updated scene data is streamed to the clients, as
> throughput is the main issue here.
> On the other hand, I want turn it off for e.g. sockets used to send
> tiles to the clients, as this has to be done with an absolute
> minimum of latency.
> Can I do it with OpenMPI?
> Am I using the the wrong tool?
> Thanks in advance
> Biagio Cosenza
> an italian MSc student
> Università di Salerno
> users mailing list