From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Gavin Hu (Arm Technology China)" Subject: Re: [PATCH v4 2/2] ring: move the atomic load of head above the loop Date: Fri, 2 Nov 2018 07:15:48 +0000 Message-ID: References: <1541066031-29125-1-git-send-email-gavin.hu@arm.com> <1541066031-29125-3-git-send-email-gavin.hu@arm.com>, <20181101102601.7933b8d1@xeon-e3> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Cc: "dev@dpdk.org" , "thomas@monjalon.net" , "olivier.matz@6wind.com" , "chaozhu@linux.vnet.ibm.com" , "bruce.richardson@intel.com" , "konstantin.ananyev@intel.com" , "jerin.jacob@caviumnetworks.com" , "stable@dpdk.org" , nd To: Honnappa Nagarahalli , Stephen Hemminger Return-path: In-Reply-To: Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" > -----Original Message----- > From: Honnappa Nagarahalli > Sent: Friday, November 2, 2018 12:31 PM > To: Gavin Hu (Arm Technology China) ; Stephen > Hemminger > Cc: dev@dpdk.org; thomas@monjalon.net; olivier.matz@6wind.com; > chaozhu@linux.vnet.ibm.com; bruce.richardson@intel.com; > konstantin.ananyev@intel.com; jerin.jacob@caviumnetworks.com; > stable@dpdk.org; nd > Subject: RE: [PATCH v4 2/2] ring: move the atomic load of head above the > loop >=20 > >=20 >=20 > On Thu, 1 Nov 2018 17:53:51 +0800 > Gavin Hu wrote: >=20 > > +* **Updated the ring library with C11 memory model.** > > + > > + Updated the ring library with C11 memory model including the followin= g > changes: > > + > > + * Synchronize the load and store of the tail > > + * Move the atomic load of head above the loop > > + >=20 > Does this really need to be in the release notes? Is it a user visible ch= ange or > just an internal/optimization and fix. >=20 > [Gavin] There is no api changes, but this is a significant change as ring= is > fundamental and widely used, it decreases latency by 25% in our tests, it= may > do even better for cases with more contending producers/consumers or > deeper depth of rings. >=20 > [Honnappa] I agree with Stephen. Release notes should be written from > DPDK user perspective. In the rte_ring case, the user has the option of > choosing between c11 and non-c11 algorithms. Performance would be one > of the criteria to choose between these 2 algorithms. IMO, it probably ma= kes > sense to indicate that the performance of c11 based algorithm has been > improved. However, I do not know what DPDK has followed historically > regarding performance optimizations. I would prefer to follow whatever ha= s > been followed so far. > I do not think that we need to document the details of the internal chang= es > since it does not help the user make a decision. I read through the online guidelines for release notes, besides API and new= features, resolved issues which are significant and not newly introduced i= n this release cycle, should also be included. In this case, the resolved issue existed for long time, across multiple rel= ease cycles and ring is a core lib, so it should be a candidate for release= notes.=20 https://doc.dpdk.org/guides-18.08/contributing/patches.html section 5.5 says:=20 Important changes will require an addition to the release notes in doc/guid= es/rel_notes/.=20 See the Release Notes section of the Documentation Guidelines for details. https://doc.dpdk.org/guides-18.08/contributing/documentation.html#doc-guide= lines "Developers should include updates to the Release Notes with patch sets tha= t relate to any of the following sections: New Features Resolved Issues (see below) Known Issues API Changes ABI Changes Shared Library Versions Resolved Issues should only include issues from previous releases that have= been resolved in the current release. Issues that are introduced and then = fixed within a release cycle do not have to be included here." Suggested order in release notes items: * Core libs (EAL, mempool, ring, mbuf, buses) * Device abstraction libs and PMDs