posix_memalign performance regression in 2.38?
Xi Ruoyao
xry111@xry111.site
Fri Aug 4 02:52:44 GMT 2023
Hi,
There seems a performance regression of posix_memalign in Glibc-2.38:
$ cat t.c
#include <stdlib.h>
int main()
{
void *buf;
for (int i = 0; i < (1 << 16); i++)
posix_memalign(&buf, 64, 16);
}
$ cc t.c
$ time ./a.out
real 0m0.008s
user 0m0.005s
sys 0m0.003s
$ time ~/sources/lfs/glibc-2.38/build/testrun.sh ./a.out
real 0m4.376s
user 0m4.369s
sys 0m0.007s
The behavior seems worse than quadratic: if I change "1 << 16" to "1 <<
17", I get:
$ time ~/sources/lfs/glibc-2.38/build/testrun.sh ./a.out
real 0m28.597s
user 0m28.568s
sys 0m0.022s
I've not bisected for this yet.
--
Xi Ruoyao <xry111@xry111.site>
School of Aerospace Science and Technology, Xidian University
More information about the Libc-alpha
mailing list