DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/2] Enhance Async Enqueue for Small Packets
@ 2020-12-11  9:21 Jiayu Hu
  2020-12-11  9:21 ` [dpdk-dev] [PATCH 1/2] vhost: cleanup async enqueue Jiayu Hu
                   ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Jiayu Hu @ 2020-12-11  9:21 UTC (permalink / raw)
  To: dev; +Cc: maxime.coquelin, chenbo.xia, cheng1.jiang, yinan.wang, Jiayu Hu

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.

The first patch cleans up async enqueue code, and the second patch
enables rte_vhost_submit_enqueue_burst() to return completed packets.

Jiayu Hu (2):
  vhost: cleanup async enqueue
  vhost: enhance async enqueue for small packets

 lib/librte_vhost/rte_vhost_async.h |  24 ++--
 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      | 256 +++++++++++++++++++++----------------
 5 files changed, 171 insertions(+), 137 deletions(-)

-- 
2.7.4


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2021-01-11 15:02 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-11  9:21 [dpdk-dev] [PATCH 0/2] Enhance Async Enqueue for Small Packets Jiayu Hu
2020-12-11  9:21 ` [dpdk-dev] [PATCH 1/2] vhost: cleanup async enqueue Jiayu Hu
2020-12-11  9:21 ` [dpdk-dev] [PATCH 2/2] vhost: enhance async enqueue for small packets Jiayu Hu
2020-12-22  9:46 ` [dpdk-dev] [Patch v2 0/2] Enhance Async Enqueue for Small Packets Jiayu Hu
2020-12-22  9:46   ` [dpdk-dev] [Patch v2 1/2] vhost: cleanup async enqueue Jiayu Hu
2020-12-22  9:46   ` [dpdk-dev] [Patch v2 2/2] vhost: enhance async enqueue for small packets Jiayu Hu
2020-12-25  8:28   ` [dpdk-dev] [PATCH v3 0/2] Enhance Async Enqueue for Small Packets Jiayu Hu
2020-12-25  8:28     ` [dpdk-dev] [PATCH v3 1/2] vhost: cleanup async enqueue Jiayu Hu
2020-12-25  8:28     ` [dpdk-dev] [PATCH v3 2/2] vhost: enhance async enqueue for small packets Jiayu Hu
2021-01-05 11:41     ` [dpdk-dev] [PATCH v3 0/2] Enhance Async Enqueue for Small Packets Wang, Yinan
2021-01-07 10:45     ` Maxime Coquelin
2021-01-11 12:16     ` [dpdk-dev] [PATCH v4 " Jiayu Hu
2021-01-11 12:16       ` [dpdk-dev] [PATCH v4 1/2] vhost: cleanup async enqueue Jiayu Hu
2021-01-11 11:04         ` Maxime Coquelin
2021-01-11 14:04           ` Maxime Coquelin
2021-01-11 12:16       ` [dpdk-dev] [PATCH v4 2/2] vhost: enhance async enqueue for small packets Jiayu Hu
2021-01-11 12:44         ` Maxime Coquelin
2021-01-11 15:02       ` [dpdk-dev] [PATCH v4 0/2] Enhance Async Enqueue for Small Packets Maxime Coquelin

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git