glibc: backport AArch64 mem{cpy,cmp} improvements
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
glibc (Ubuntu) |
Fix Released
|
High
|
Simon Chopin | ||
Focal |
Triaged
|
High
|
Unassigned | ||
Jammy |
Triaged
|
High
|
Unassigned | ||
Kinetic |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[impact]
There have been relatively recent improvements to the memcmp and memcpy routines for server-grade AArch64 implementation, in particular AWS's Graviton3.
We'd like to backport those improvements to Jammy and Focal when appropriate, under the HWE umbrella.
The relevant patches are
https:/
https:/
In addition, to be able to actually test the changes and its impact on all architectures, we'll need the following fix:
https:/
[test case]
Since those are optimization patches, we'll be relying on the autopkgtests triggered by the upload for regression detection.
However, we'll also benchmark the optimizations on Graviton AWS instances as well as various Raspberry Pi models to ensure there is no severe performance regression on those platforms.
To do the performance test, first install the libc from this PPA:
https:/
that is the current Jammy glibc with the extra fix for benchmarking.
Then, untar the attached archive bench-timing.tar.xz on the target platform, and follow the instructions from the README.
[Regression potential]
This could potentially impact performance on other, non-server-grade arm64 platforms such as RPi. Furthermore, there could be unforeseen issues with the newly optimized routine in edge cases (a recent amd64 optimization had issues on page boundaries, for instance).
Changed in glibc (Ubuntu Focal): | |
status: | New → In Progress |
Changed in glibc (Ubuntu Jammy): | |
status: | New → In Progress |
Changed in glibc (Ubuntu Focal): | |
importance: | Undecided → High |
Changed in glibc (Ubuntu Jammy): | |
importance: | Undecided → High |
Changed in glibc (Ubuntu): | |
status: | In Progress → Fix Released |
Changed in glibc (Ubuntu Kinetic): | |
status: | New → Fix Released |
summary: |
- glibc: backport AArch64 memcmp improvements + glibc: backport AArch64 mem{cpy,cmp} improvements |
tags: |
added: regression-proposed verification-needed-jammy removed: verification-done-jammy |
tags: |
added: verification-done verification-done-focal verification-done-jammy removed: verification-needed verification-needed-focal verification-needed-jammy |
I have a preliminary package purely for testing purposed (the final release will contain more patches) at https:/ /launchpad. net/~schopin/ +archive/ ubuntu/ glibc-jammy- sru