[glibc/fw/malloc-tcache-32] malloc: Increase tcache fill count from 16 to 32

Florian Weimer via Glibc-cvs <[email protected]> Tue, 30 Jun 2026 17:31:57 +0000 (GMT)
Newsgroups gmane.comp.lib.glibc.cvs
Message-ID <[email protected]>
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=93b85d76e303cd792ee444490bf4928b161363c8

commit 93b85d76e303cd792ee444490bf4928b161363c8
Author: Florian Weimer <[email protected]>
Date:   Thu Dec 18 10:15:38 2025 +0100

    malloc: Increase tcache fill count from 16 to 32
    
    This avoids a regression in the omnetpp and xalancbmk benchmarks
    of SPEC.  Apparently, these benchmarks are very sensitive to the
    fill rate in malloc.
    
    Suggested-by: Wilco Dijkstra <[email protected]>
    Tested-by: Wilco Dijkstra <[email protected]>

Diff:
---
 malloc/malloc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/malloc/malloc.c b/malloc/malloc.c
index c39d60b509..74a2833ff7 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -306,7 +306,7 @@ verify (PTRDIFF_MAX <= SIZE_MAX / 2);
 
 /* This is another arbitrary limit, which tunables can change.  Each
    tcache bin will hold at most this number of chunks.  */
-# define TCACHE_FILL_COUNT 16
+# define TCACHE_FILL_COUNT 32
 
 /* Maximum chunks in tcache bins for tunables.  This value must fit the range
    of tcache->num_slots[] entries, else they may overflow.  */