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] |
On 06/13/2018 12:19 AM, H.J. Lu wrote:
The current glibc has memory and string functions highly optimized for the current processors on the market. But it takes years for released glibc to be installed on end-users machines. In 2018, many machines with the latest Intel processors are still running glibc 2.17, which was released in February, 2013. This patch set introduces the CPU run-time library for C, libcpu-rt-c. libcpu-rt-c contains a subset of the C library with the optimized functions. The resulting libcpu-rt-c.so is binary compatible with older versions of libc.so so that libcpu-rt-c.so can be used with LD_PRELOAD or linked directly with applications. For some workloads, LD_PRELOAD=libcpu-rt-c.so has shown to improve performance by as much as 20% on Skylake machine.
What do you gain from adding this to glibc?Old systems will not have sufficiently new compilers and linkers, and they will not be able to directly build glibc and this new library.
It seems that this library does not define its own ABI, so it does not have to be tied to the glibc release schedule, but putting it into the source tree implies such alignment.
I don't doubt that this can be useful (but I doubt it will completely stop string function backports), but building and shipping this library as part of glibc seems detrimental to its goals.
Thanks, Florian
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |