[dpdk-users] low performance of send and receiving single message in RTE_RING

Sungho Hong maverickjin88 at gmail.com
Fri Aug 31 21:55:22 CEST 2018


Hello, DPDK-users,

I am wondering whether there is a good explanation for high latency caused
by rte_ring when testing the round-trip latency using 1 burst in (tx rx
queue).

I have tested the performance using two nodes (client and server)
and calculated the elapsed latency of the round-trip of single pingpong.
The latency is calculated on two different test-cases
1. elapsed latency of send and receive directly from rx tx queue.
2. elapsed latency of send and receive from rte_ring.


Latency with direct tx rx queue with 1 burst
When I send a single messages (512, 1024, 4096 bytes) (1 burst for each
request) and receive 1 burst of response from the remote server.
the latency is approximately 4 ~ 8 microseconds.


RTE_RING Latency with 1 burst
When I use rte_ring to send and receive data from client and server, the
latency increases like crazy which is 59 microseconds to 100 microseconds.


RTE_RING Latency with 10 bursts
When I use bursts for example (10 messages per request)
and calculate the elapsed latency by dividing the total elapsed time with
the total ping-pong messages (total-latency)/(total ping-pong received
messages).
I could get a very good performance using rte_ring 7 ~ 10 microseconds.


I was wondering whether someone can tell me what I should look at in order
to decrease the latency of RTE_RING.
Because even though I don't use multiple bursts, the latency should be low.


More information about the users mailing list