[dpdk-dev] DPDK Latency Issue

Shaw, Jeffrey B jeffrey.b.shaw at intel.com
Thu May 22 19:06:56 CEST 2014


Hello,

> I measured a roundtrip latency (using Spirent traffic generator) of sending 64B packets over a 10GbE to DPDK, and DPDK does nothing but simply forward back to the incoming port (l3fwd without any lookup code, i.e., dstport = port_id).
> However, to my surprise, the average latency was around 150 usec. (The packet drop rate was only 0.001%, i.e., 283 packets/sec dropped) Another test I did was to measure the latency due to sending only a single 64B packet, and the latency I measured is ranging anywhere from 40 usec to 100 usec.

40-100usec seems very high.
The l3fwd application does some internal buffering before transmitting the packets.  It buffers either 32 packets, or waits up to 100us (hash-defined as BURST_TX_DRAIN_US), whichever comes first.
Try either removing this timeout, or sending a burst of 32 packets at time.  Or you could try with testpmd, which should have reasonably low latency out of the box.

There is also a section in the Release Notes (8.6 How can I tune my network application to achieve lower latency?) which provides some pointers for getting lower latency if you are willing to give up top-rate throughput.

Thanks,
Jeff


More information about the dev mailing list