From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8B803A00C5; Thu, 30 Apr 2020 11:14:51 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6783C1DA35; Thu, 30 Apr 2020 11:14:51 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by dpdk.org (Postfix) with ESMTP id 8EADB1DA32 for ; Thu, 30 Apr 2020 11:14:50 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 018FF1063; Thu, 30 Apr 2020 02:14:50 -0700 (PDT) Received: from net-arm-thunderx2-03.shanghai.arm.com (net-arm-thunderx2-03.shanghai.arm.com [10.169.41.185]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id E02053F68F; Thu, 30 Apr 2020 02:14:46 -0700 (PDT) From: Joyce Kong To: maxime.coquelin@redhat.com, stephen@networkplumber.org, xiaolong.ye@intel.com, zhihong.wang@intel.com, thomas@monjalon.net, jerinj@marvell.com, yinan.wang@intel.com, ferruh.yigit@intel.com, honnappa.nagarahalli@arm.com, gavin.hu@arm.com Cc: nd@arm.com, dev@dpdk.org Date: Thu, 30 Apr 2020 17:14:35 +0800 Message-Id: <20200430091437.34958-1-joyce.kong@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200212092456.29433-1-joyce.kong@arm.com> References: <20200212092456.29433-1-joyce.kong@arm.com> Subject: [dpdk-dev] [PATCH v5 0/2] one way barrier for split vring idx X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patchset replaces the two-way barriers with C11 one-way barriers for split vring idx, when the frontend and backend are implemented in software. By doing PVP benchmarking, the test result of 2c1q showed the throughput increased 20% with the 0.001% of acceptable loss rate on Thunderx2 platform.[1] By doing vhost-user + virtio-user case benchmarking, 4% performance gain was measured on Thunderx2 platform by 2c1q RFC2544 test of 0.001% loss, and 4.7% performance was improved on Dell platform by 1c1q RFC2544 test of zero packet loss.[2] [1]https://doc.dpdk.org/guides/howto/pvp_reference_benchmark.html [2]https://doc.dpdk.org/dts/test_plans/pvp_multi_paths_performance_test_plan.html PVP test with virtio 1.0 normal path v5: Fix the compling issue when 'CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=y' is enabled. v4: Remove some duplicated code comment. v3: Modify some style error. v2: Add test performance statistics. Joyce Kong (2): virtio: one way barrier for split vring used idx virtio: one way barrier for split vring avail idx drivers/net/virtio/virtio_ethdev.c | 7 +-- drivers/net/virtio/virtio_ring.h | 2 +- drivers/net/virtio/virtio_rxtx.c | 35 ++++------- drivers/net/virtio/virtio_rxtx_simple_neon.c | 5 +- drivers/net/virtio/virtio_rxtx_simple_sse.c | 4 +- .../net/virtio/virtio_user/virtio_user_dev.c | 8 ++- drivers/net/virtio/virtqueue.c | 2 +- drivers/net/virtio/virtqueue.h | 58 ++++++++++++++++--- lib/librte_vhost/virtio_net.c | 19 +++--- 9 files changed, 81 insertions(+), 59 deletions(-) -- 2.17.1