DPDK patches and discussions
 help / color / mirror / Atom feed
From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: dev@dpdk.org, chenbo.xia@intel.com, jiayu.hu@intel.com,
	yuanx.wang@intel.com, wenwux.ma@intel.com,
	bruce.richardson@intel.com, john.mcnamara@intel.com
Cc: Maxime Coquelin <maxime.coquelin@redhat.com>
Subject: [dpdk-dev] [PATCH v2 05/15] vhost: remove async batch threshold
Date: Tue, 26 Oct 2021 18:28:54 +0200	[thread overview]
Message-ID: <20211026162904.482987-6-maxime.coquelin@redhat.com> (raw)
In-Reply-To: <20211026162904.482987-1-maxime.coquelin@redhat.com>

Reaching the async batch threshold was one of the condition
to trigger the DMA transfer. However, this condition was
never met since the threshold value is 32, same as the
MAX_PKT_BURST value.

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 lib/vhost/virtio_net.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/lib/vhost/virtio_net.c b/lib/vhost/virtio_net.c
index f0d923704a..c4a8b5276f 100644
--- a/lib/vhost/virtio_net.c
+++ b/lib/vhost/virtio_net.c
@@ -25,8 +25,6 @@
 
 #define MAX_BATCH_LEN 256
 
-#define VHOST_ASYNC_BATCH_THRESHOLD 32
-
 static  __rte_always_inline bool
 rxvq_is_mergeable(struct virtio_net *dev)
 {
@@ -1565,12 +1563,10 @@ virtio_dev_rx_async_submit_split(struct virtio_net *dev,
 		vq->last_avail_idx += num_buffers;
 
 		/*
-		 * conditions to trigger async device transfer:
-		 * - buffered packet number reaches transfer threshold
+		 * condition to trigger async device transfer:
 		 * - unused async iov number is less than max vhost vector
 		 */
-		if (unlikely(pkt_burst_idx >= VHOST_ASYNC_BATCH_THRESHOLD ||
-			(VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX))) {
+		if (unlikely(VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX)) {
 			n_xfer = async->ops.transfer_data(dev->vid,
 					queue_id, tdes, 0, pkt_burst_idx);
 			if (likely(n_xfer >= 0)) {
@@ -1864,12 +1860,10 @@ virtio_dev_rx_async_submit_packed(struct virtio_net *dev,
 		vq_inc_last_avail_packed(vq, num_descs);
 
 		/*
-		 * conditions to trigger async device transfer:
-		 * - buffered packet number reaches transfer threshold
+		 * condition to trigger async device transfer:
 		 * - unused async iov number is less than max vhost vector
 		 */
-		if (unlikely(pkt_burst_idx >= VHOST_ASYNC_BATCH_THRESHOLD ||
-			(VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX))) {
+		if (unlikely(VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX)) {
 			n_xfer = async->ops.transfer_data(dev->vid,
 					queue_id, tdes, 0, pkt_burst_idx);
 			if (likely(n_xfer >= 0)) {
-- 
2.31.1


  parent reply	other threads:[~2021-10-26 16:29 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-26 16:28 [dpdk-dev] [PATCH v2 00/15] vhost: clean-up and simplify async implementation Maxime Coquelin
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 01/15] vhost: move async data in a dedicated structure Maxime Coquelin
2021-10-28 12:03   ` Xia, Chenbo
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 02/15] vhost: hide inflight async structure Maxime Coquelin
2021-10-28 12:07   ` Xia, Chenbo
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 03/15] vhost: simplify async IO vectors Maxime Coquelin
2021-10-29  5:37   ` Xia, Chenbo
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 04/15] vhost: simplify async IO vectors iterators Maxime Coquelin
2021-10-29  5:44   ` Xia, Chenbo
2021-10-26 16:28 ` Maxime Coquelin [this message]
2021-10-29  6:19   ` [dpdk-dev] [PATCH v2 05/15] vhost: remove async batch threshold Xia, Chenbo
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 06/15] vhost: introduce specific iovec structure Maxime Coquelin
2021-10-29  6:19   ` Xia, Chenbo
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 07/15] vhost: remove useless fields in async iterator struct Maxime Coquelin
2021-10-29  6:19   ` Xia, Chenbo
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 08/15] vhost: improve IO vector logic Maxime Coquelin
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 09/15] vhost: remove notion of async descriptor Maxime Coquelin
2021-10-26 16:28 ` [dpdk-dev] [PATCH v2 10/15] vhost: simplify async enqueue completion Maxime Coquelin
2021-10-26 16:29 ` [dpdk-dev] [PATCH v2 11/15] vhost: simplify getting the first in-flight index Maxime Coquelin
2021-10-26 16:29 ` [dpdk-dev] [PATCH v2 12/15] vhost: prepare async for mbuf to desc refactoring Maxime Coquelin
2021-10-26 16:29 ` [dpdk-dev] [PATCH v2 13/15] vhost: prepare sync " Maxime Coquelin
2021-10-26 16:29 ` [dpdk-dev] [PATCH v2 14/15] vhost: merge sync and async mbuf to desc filling Maxime Coquelin
2021-10-26 16:29 ` [dpdk-dev] [PATCH v2 15/15] vhost: increase number of async IO vectors Maxime Coquelin
2021-10-28 12:40 ` [dpdk-dev] [PATCH v2 00/15] vhost: clean-up and simplify async implementation Hu, Jiayu
2021-10-29 10:34 ` Maxime Coquelin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211026162904.482987-6-maxime.coquelin@redhat.com \
    --to=maxime.coquelin@redhat.com \
    --cc=bruce.richardson@intel.com \
    --cc=chenbo.xia@intel.com \
    --cc=dev@dpdk.org \
    --cc=jiayu.hu@intel.com \
    --cc=john.mcnamara@intel.com \
    --cc=wenwux.ma@intel.com \
    --cc=yuanx.wang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).