[PATCH v2 00/71] replace use of fixed size rte_mempcy

Stephen Hemminger stephen at networkplumber.org
Sat Mar 2 17:37:34 CET 2024


On Sat, 2 Mar 2024 14:05:45 +0100
Morten Brørup <mb at smartsharesystems.com> wrote:

> >   
> > > My experience with replacing rte_memcpy() with memcpy() (or vice  
> > versa)  
> > > is mixed.
> > >
> > > I've also tried just dropping the DPDK-custom memcpy() implementation
> > > altogether, and that caused a performance drop (in a particular app,  
> > on  
> > > a particular compiler and CPU).  
> 
> I guess the compilers are just not where we want them to be yet.
> 
> I don't mind generally replacing rte_memcpy() with memcpy() in the control plane.
> But we should use whatever is more efficient in the data plane.
> 
> We must also keep in mind that DPDK supports old distros with old compilers. We should not remove a superfluous hand crafted optimization if a supported old compiler hasn't caught up with it yet, i.e. if it isn't superfluous on some of the old compilers supported by DPDK.

When I scanned the result.
	1. Most copies were small (like Ether address or IPv6 address) and compiler
           inlining should beat a function call every time.
        2. Larger structure copies were in control path.


More information about the dev mailing list