[dpdk-dev] [PATCH v1 0/8] replace smp barriers in vhost with C11 atomic
Joyce Kong
joyce.kong at arm.com
Mon Dec 21 16:50:25 CET 2020
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
More information about the dev
mailing list