]> git.ipfire.org Git - thirdparty/glibc.git/commit
malloc: Improve arena_for_chunk()
authorWilco Dijkstra <wilco.dijkstra@arm.com>
Tue, 18 Mar 2025 12:30:10 +0000 (12:30 +0000)
committerWilco Dijkstra <wilco.dijkstra@arm.com>
Tue, 18 Mar 2025 17:14:34 +0000 (17:14 +0000)
commit9f551e28a74941e17ed4572511a2308c03f5a718
tree0a914f21d4b1316f3559a9ca854d0954c521f859
parentdd003db8d127b0a8ebabc6a972501a7d881073ea
malloc: Improve arena_for_chunk()

Change heap_max_size() to improve performance of arena_for_chunk().
Instead of a complex calculation, using a simple mask operation to get the
arena base pointer.  HEAP_MAX_SIZE should be larger than the huge page size,
otherwise heaps will use not huge pages.

On AArch64 this removes 6 instructions from arena_for_chunk(), and
bench-malloc-thread improves by 1.1% - 1.8%.

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
malloc/arena.c