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

Reply via email to