Glibc 2.29 Released With getcpu() On Linux, New Optimizations
In the half-year since glibc 2.28 debuted there has been more optimizations and new additions to this de facto C library. Glibc 2.29 brings with it a new getcpu() wrapper function that returns the CPU currently in use as well as its NUMA node of the calling thread or process. This is just wrapping around Linux's getcpu() system call.
On the optimization front, Glibc has newly optimized generic versions of exp, exp2, log, log2, pow, sinf, cosf, sincosf and tanf. This release also now uses Transactional Lock Elision by default on PowerPC64LE when supported by the kernel, support for the C-SKY ABIv2 on Linux following that 32-bit CPU support recently making it into the Linux 4.20 kernel and GCC 9.0, and various other changes and improvements. Also worth pointing out are three security fixes in Glibc 2.29 for recently published CVEs.
More details on the Glibc 2.29 highlights via libc-announce. Glibc 2.30 is now open for development.