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: Ping: [Patch] aarch64: Thunderx specific memcpy and memmove


On Wed, May 24, 2017 at 11:42 PM, Siddhesh Poyarekar
<siddhesh@gotplt.org> wrote:
> On Wednesday 24 May 2017 10:34 PM, Szabolcs Nagy wrote:
>> - i don't know if you plan to make more changes to the thunderx
>> memcpy, if prefetching is the only change then it's likely that
>> we can agree on a generic version that's good enough.  if you
>> do plan to make further changes, then keep in mind that we try
>> to have same/similar generic memcpy across c runtimes and if
>> your change is good for generic we might not be able to use the
>> code outside of glibc (so newlib, bionic, freebsd,.. memcpy
>> would diverge)
>
> Steve, if that is desirable then please consider contributing the code
> to cortex-strings[1].

One memcpy does not fit all micro-arch.  Just look at x86, where they
have many different versions and even do selection based on cache size
(see the current discussion about the memcpy regression).

>
>> - non-thunderx systems are affected: static linked code using
>> memcpy will start to go through an indirection (iplt) instead
>> of direct call. if there are complaints about it or other ifunc
>> related issues come up, then again we will have to reconsider it.

Just to answer this.  This is true on x86 and PowerPC already so there
should be no difference on aarch64 than those two targets.

>
> They could use a library built with --disable-multiarch.  The only place
> I can see this happening is on systems that currently need bespoke
> images, e.g. raspberry pis or similar form factors.  Since they're
> building custom images anyway, it shouldn't be too hard to add a glibc
> built with --disable-multiarch for them.
>
> Removing multiarch completely is not an option since there's thunderx
> *and* falkor (yes yes, coming soon, I promise!) with their own routines
> and perhaps more in future.

ThunderX2T99 version should be posted by the end of next week.

>
> Siddhesh
>
> [1] https://launchpad.net/cortex-strings


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