High UNIX socket latency

Jakob Østergaard
2001-11-13T11:51:54Z

Hello all,

One program that creates a pipe between two processes and measures
the ping/pong latency of messages between the two processes gives
me something like;

1000 iterations - ping/pong time
max = 3495 us
min = 6 us
avg = 47.212 us

In another application where I use a UNIX STREAM socket, I get
a typical latency of one send() of around 1 ms.

I cannot set TCP_NODELAY on a UNIX socket, and I can't really
see why I get the high latency. Is there some undocumented
option like TCP_NODELAY for UNIX STREAM connections, or are there
other tricks I can play to get the latency down ?

One process does a send(), the other one does a select() and a
recv() - and the time from the send() to the recv() is around 1 ms
which I think seems far too high.

Hints, suggestions ?

Thank you

--
................................................................
: jakob@unthought.net : And I see the elder races, :
:.........................: putrid forms of man :
: Jakob Østergaard : See him rise and claim the earth, :
: OZ9ABN : his downfall is at hand. :
:.........................:............{Konkhra}...............: