[dpdk-dev] [PATCH 2/2] mbuf: make sure userdata is initialized
Stephen Hemminger
stephen at networkplumber.org
Fri Jul 10 17:43:56 CEST 2015
On Fri, 10 Jul 2015 10:32:17 +0100
Bruce Richardson <bruce.richardson at intel.com> wrote:
> On Thu, Jul 09, 2015 at 04:37:48PM -0700, Stephen Hemminger wrote:
> > From: Stephen Hemminger <shemming at brocade.com>
> >
> > For applications that use m->userdata the initialization can
> > be a signficant (10%) performance penalty.
> >
> > Rather than taking the cache penalty of initializing userdata
> > in the receive handling, do it in the place where mbuf is
> > already cache hot and being setup.
>
> Should the management of the userdata field not be the responsibility of the
> app itself, rather than having the PMD manage it? If the PMD does manage the
> userdata field, I would suggest taking the approach of having the field cleared
> by the mbuf library on free, rather than on RX.
The problem with that is m->userdata is that when the application
gets the mbuf, touching the userdata field causes false cache
sharing and we see a significant performance drop. Internally the
userdata field is only used for few special cases and 0/NULL
is used to indicate that no metadata is present.
More information about the dev
mailing list