Thread (18 messages) 18 messages, 3 authors, 2021-01-11

Re: [dpdk-dev] [PATCH v4 2/2] vhost: enhance async enqueue for small packets

From: Maxime Coquelin <hidden>
Date: 2021-01-11 12:45:03


On 1/11/21 1:16 PM, Jiayu Hu wrote:
Async enqueue offloads large copies to DMA devices, and small copies
are still performed by the CPU. However, it requires users to get
enqueue completed packets by rte_vhost_poll_enqueue_completed(), even
if they are completed by the CPU when rte_vhost_submit_enqueue_burst()
returns. This design incurs extra overheads of tracking completed
pktmbufs and function calls, thus degrading performance on small packets.

This patch enhances async enqueue for small packets by enabling
rte_vhost_submit_enqueue_burst() to return completed packets.

Signed-off-by: Jiayu Hu <redacted>
Tested-by: Yinan Wang <redacted>
---
 doc/guides/prog_guide/vhost_lib.rst |   8 +-
 examples/vhost/main.c               |  18 ++-
 lib/librte_vhost/rte_vhost_async.h  |  30 +++--
 lib/librte_vhost/vhost.c            |  14 +--
 lib/librte_vhost/vhost.h            |   7 +-
 lib/librte_vhost/vhost_user.c       |   7 +-
 lib/librte_vhost/virtio_net.c       | 242 ++++++++++++++++++++----------------
 7 files changed, 190 insertions(+), 136 deletions(-)
Reviewed-by: Maxime Coquelin <redacted>

Thanks,
Maxime
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help