numam-dpdk/lib/librte_vhost
Jiayu Hu 1b7b24389c vhost: enhance async enqueue for small packets
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 <jiayu.hu@intel.com>
Tested-by: Yinan Wang <yinan.wang@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
2021-01-13 18:51:58 +01:00
..
fd_man.c vhost: fix race condition when adding fd in the fdset 2018-12-21 16:22:40 +01:00
fd_man.h vhost: fix race condition when adding fd in the fdset 2018-12-21 16:22:40 +01:00
iotlb.c vhost: fix IOTLB mempool single-consumer flag 2020-09-18 18:55:12 +02:00
iotlb.h vhost: replace IOTLB license with SPDX tag 2019-08-05 16:06:11 +02:00
meson.build build: align wording of non-support reasons 2020-11-20 16:05:35 +01:00
rte_vdpa_dev.h vhost: promote vDPA API as stable 2020-09-30 23:16:55 +02:00
rte_vdpa.h vhost: promote vDPA API as stable 2020-09-30 23:16:55 +02:00
rte_vhost_async.h vhost: enhance async enqueue for small packets 2021-01-13 18:51:58 +01:00
rte_vhost_crypto.h vhost/crypto: fix feature negotiation 2020-10-16 19:18:47 +02:00
rte_vhost.h vhost: remove dequeue zero-copy support 2020-09-30 23:16:56 +02:00
socket.c vhost: remove dequeue zero-copy support 2020-09-30 23:16:56 +02:00
vdpa.c vhost: relax full barriers for used idx 2021-01-08 18:07:55 +01:00
version.map build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
vhost_crypto.c vhost/crypto: fix feature negotiation 2020-10-16 19:18:47 +02:00
vhost_user.c vhost: enhance async enqueue for small packets 2021-01-13 18:51:58 +01:00
vhost_user.h vhost: support virtio status message 2020-07-11 06:18:52 +02:00
vhost.c vhost: enhance async enqueue for small packets 2021-01-13 18:51:58 +01:00
vhost.h vhost: enhance async enqueue for small packets 2021-01-13 18:51:58 +01:00
virtio_crypto.h vhost: add virtio crypto header file 2018-04-14 00:43:30 +02:00
virtio_net.c vhost: enhance async enqueue for small packets 2021-01-13 18:51:58 +01:00