This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Improve performance of strncpy


On Wed, Sep 10, 2014 at 07:34:40PM +0200, Florian Weimer wrote:
> On 09/10/2014 05:21 PM, Wilco Dijkstra wrote:
> >Yes, you're right, I timed it and there is actually little difference, while
> >the code is now even simpler. New version below (not attaching results in bad
> >characters due to various mail servers changing line endings).
> >
> >OK for commit?
> 
> I think you could simplify it down to strnlen, memcpy, and memset.

I don't think that's an improvement, at least not in the general case.
It involves iterating twice over the source string, which for long
strings could mean blowing the whole cache twice and fetching from
main memory twice. There's a good reason that string operations are
usually implemented to perform the copy and length computation
together in a single pass.

Rich


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]