From: Joyce Kong <joyce.kong@arm.com> To: maxime.coquelin@redhat.com, chenbo.xia@intel.com, honnappa.nagarahalli@arm.com, ruifeng.wang@arm.com Cc: dev@dpdk.org, nd@arm.com Subject: [dpdk-dev] [PATCH v1 0/8] replace smp barriers in vhost with C11 atomic Date: Mon, 21 Dec 2020 23:50:25 +0800 Message-ID: <20201221155033.6771-1-joyce.kong@arm.com> (raw) This patchset is to replace rte smp barriers in vhost with C11 atomic built-ins. The rte_smp_*mb APIs provide full barrier functionality. However, many use cases do not require full barriers. To support such use cases, DPDK will adopt C11 barrier semantics and provide wrappers using C11 atomic built-ins.[1] With this patchset, PVP case(vhost-user + virtio-user) has 9.8% perf uplift for the split in_order path and no perf degradation for the packed in_order path under 0.001% acceptable loss on ThunderX2 platform. [1] http://code.dpdk.org/dpdk/latest/source/doc/guides/rel_notes/deprecation.rst Joyce Kong (8): examples/vhost: relax memory ordering when enqueue/dequeue examples/vhost_blk: replace smp with thread fence vhost: remove unnecessary smp barrier for desc flags vhost: remove unnecessary smp barrier for avail idx vhost: relax full barriers for desc flags vhost: relax full barriers for used idx vhost: replace smp with thread fence for packed vring vhost: replace smp with thread fence for control path examples/vhost/virtio_net.c | 12 ++++-------- examples/vhost_blk/vhost_blk.c | 8 ++++---- lib/librte_vhost/vdpa.c | 4 ++-- lib/librte_vhost/vhost.c | 18 +++++++++--------- lib/librte_vhost/vhost.h | 6 +++--- lib/librte_vhost/vhost_user.c | 2 +- lib/librte_vhost/virtio_net.c | 26 +++++++++++--------------- 7 files changed, 34 insertions(+), 42 deletions(-) -- 2.29.2
next reply other threads:[~2020-12-21 15:51 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-12-21 15:50 Joyce Kong [this message] 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 1/8] examples/vhost: relax memory ordering when enqueue/dequeue Joyce Kong 2021-01-07 16:33 ` Maxime Coquelin 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 2/8] examples/vhost_blk: replace smp with thread fence Joyce Kong 2021-01-07 16:35 ` Maxime Coquelin 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 3/8] vhost: remove unnecessary smp barrier for desc flags Joyce Kong 2021-01-07 16:38 ` Maxime Coquelin 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 4/8] vhost: remove unnecessary smp barrier for avail idx Joyce Kong 2021-01-07 16:43 ` Maxime Coquelin 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 5/8] vhost: relax full barriers for desc flags Joyce Kong 2021-01-07 16:45 ` Maxime Coquelin 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 6/8] vhost: relax full barriers for used idx Joyce Kong 2021-01-07 16:46 ` Maxime Coquelin 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 7/8] vhost: replace smp with thread fence for packed vring Joyce Kong 2021-01-07 17:06 ` Maxime Coquelin 2020-12-21 15:50 ` [dpdk-dev] [PATCH v1 8/8] vhost: replace smp with thread fence for control path Joyce Kong 2021-01-07 17:15 ` Maxime Coquelin 2021-01-08 9:16 ` [dpdk-dev] [PATCH v1 0/8] replace smp barriers in vhost with C11 atomic 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=20201221155033.6771-1-joyce.kong@arm.com \ --to=joyce.kong@arm.com \ --cc=chenbo.xia@intel.com \ --cc=dev@dpdk.org \ --cc=honnappa.nagarahalli@arm.com \ --cc=maxime.coquelin@redhat.com \ --cc=nd@arm.com \ --cc=ruifeng.wang@arm.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
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