[dpdk-dev] [dpdk-stable] [PATCH v5 2/2] ring: move the atomic load of head above the loop

Jerin Jacob jerin.jacob at caviumnetworks.com
Mon Nov 5 14:41:33 CET 2018


-----Original Message-----
> Date: Mon, 05 Nov 2018 14:17:27 +0100
> From: Thomas Monjalon <thomas at monjalon.net>
> To: Honnappa Nagarahalli <Honnappa.Nagarahalli at arm.com>
> Cc: stable at dpdk.org, "Gavin Hu (Arm Technology China)" <Gavin.Hu at arm.com>,
>  Bruce Richardson <bruce.richardson at intel.com>, "dev at dpdk.org"
>  <dev at dpdk.org>, "stephen at networkplumber.org" <stephen at networkplumber.org>,
>  "olivier.matz at 6wind.com" <olivier.matz at 6wind.com>,
>  "chaozhu at linux.vnet.ibm.com" <chaozhu at linux.vnet.ibm.com>,
>  "konstantin.ananyev at intel.com" <konstantin.ananyev at intel.com>,
>  "jerin.jacob at caviumnetworks.com" <jerin.jacob at caviumnetworks.com>, nd
>  <nd at arm.com>, hemant.agrawal at nxp.com, shreyansh.jain at nxp.com
> Subject: Re: [dpdk-stable] [PATCH v5 2/2] ring: move the atomic load of
>  head above the loop
> 
> External Email
> 
> 03/11/2018 10:34, Honnappa Nagarahalli:
> > > > > ---
> > > > >  doc/guides/rel_notes/release_18_11.rst |  7 +++++++
> > > > >  lib/librte_ring/rte_ring_c11_mem.h     | 10 ++++------
> > > > >  2 files changed, 11 insertions(+), 6 deletions(-)
> > > > >
> > > > > diff --git a/doc/guides/rel_notes/release_18_11.rst
> > > > > b/doc/guides/rel_notes/release_18_11.rst
> > > > > index 376128f..b68afab 100644
> > > > > --- a/doc/guides/rel_notes/release_18_11.rst
> > > > > +++ b/doc/guides/rel_notes/release_18_11.rst
> > > > > @@ -69,6 +69,13 @@ New Features
> > > > >    checked out against that dma mask and rejected if out of range.
> > > > > If more
> > > > than
> > > > >    one device has addressing limitations, the dma mask is the more
> > > > restricted one.
> > > > >
> > > > > +* **Updated the ring library with C11 memory model.**
> > > > > +
> > > > > +  Updated the ring library with C11 memory model, in our tests the
> > > > > + changes  decreased latency by 27~29% and 3~15% for MPMC and SPSC
> > > > cases respectively.
> > > > > +  The real improvements may vary with the number of contending
> > > > > + lcores and the  size of ring.
> > > > > +
> > > > Is this a little misleading, and will users expect massive performance
> > > > improvements generally? The C11 model seems to be used only on some,
> > > > but not all, arm platforms, and then only with "make" builds.
> > > >
> > > > config/arm/meson.build: ['RTE_USE_C11_MEM_MODEL', false]]
> > This is an error. There is already an agreement that on Arm based platforms, C11 memory model would be used by default. Specific platforms can override it if required.
> > Would this be ab acceptable change for RC2 or RC3?
> 
> If NXP and Cavium agrees, I think it can go in RC2.

Yes. meson and make config should be same. i.e  on Arm based platforms,
C11 memory model would be used by default. Specific platforms can
override it if required.

I think, meson config needs to be updated to be inline with make config.


> For RC3, not sure.
> 
> 
> 


More information about the dev mailing list