[dpdk-dev] [PATCH v8 1/3] eal/x86: run-time dispatch over memcpy
Ananyev, Konstantin
konstantin.ananyev at intel.com
Fri Oct 13 12:26:32 CEST 2017
> -----Original Message-----
> From: Thomas Monjalon [mailto:thomas at monjalon.net]
> Sent: Friday, October 13, 2017 10:29 AM
> To: Li, Xiaoyun <xiaoyun.li at intel.com>; Ananyev, Konstantin <konstantin.ananyev at intel.com>
> Cc: dev at dpdk.org; Richardson, Bruce <bruce.richardson at intel.com>; Lu, Wenzhuo <wenzhuo.lu at intel.com>; Zhang, Helin
> <helin.zhang at intel.com>
> Subject: Re: [dpdk-dev] [PATCH v8 1/3] eal/x86: run-time dispatch over memcpy
>
> 13/10/2017 11:01, Xiaoyun Li:
> > lib/librte_eal/common/arch/x86/rte_memcpy.c | 59 ++
> > lib/librte_eal/common/arch/x86/rte_memcpy_avx2.c | 44 +
> > .../common/arch/x86/rte_memcpy_avx512f.c | 44 +
> > lib/librte_eal/common/arch/x86/rte_memcpy_sse.c | 40 +
> > .../common/include/arch/x86/rte_memcpy.h | 861 +-----------------
> > .../common/include/arch/x86/rte_memcpy_internal.h | 966 +++++++++++++++++++++
>
> I think that rte_memcpy_internal.h should not be in the include directory.
> Can it be moved to lib/librte_eal/common/arch/ ?
I am afraid we can't - for size < 128 bytes we still use inline version of memcpy -
to avoid perfomance regression.
So we still need that file to stay in include dir.
>
> > --- a/lib/librte_eal/bsdapp/eal/rte_eal_version.map
> > +++ b/lib/librte_eal/bsdapp/eal/rte_eal_version.map
> > @@ -243,6 +243,7 @@ DPDK_17.11 {
> > rte_eal_iova_mode;
> > rte_eal_mbuf_default_mempool_ops;
> > rte_lcore_has_role;
> > + rte_memcpy_ptr;
>
> I don't know what is the consequence of adding this function in the .map
> file for architectures where it does not exist?
I don't have arm/ppc box to try...
Though I tried to add unexciting function name into
lib/librte_eal/linuxapp/eal/rte_eal_version.map.
Didn't encounter any problems.
So my guess - it is harmless.
Konstantin
More information about the dev
mailing list