aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Delorie <dj@delorie.com>2017-07-06 13:37:30 -0400
committerDJ Delorie <dj@delorie.com>2017-07-06 13:37:30 -0400
commitd5c3fafc4307c9b7a4c7d5cb381fcdbfad340bcc (patch)
tree380cfbc329860434d6b29825bd02ba5f0c7d4b30 /INSTALL
parentIncrease some test timeouts. (diff)
downloadglibc-d5c3fafc4307c9b7a4c7d5cb381fcdbfad340bcc.tar.gz
glibc-d5c3fafc4307c9b7a4c7d5cb381fcdbfad340bcc.tar.bz2
glibc-d5c3fafc4307c9b7a4c7d5cb381fcdbfad340bcc.zip
Add per-thread cache to malloc
* config.make.in: Enable experimental malloc option. * configure.ac: Likewise. * configure: Regenerate. * manual/install.texi: Document it. * INSTALL: Regenerate. * malloc/Makefile: Likewise. * malloc/malloc.c: Add per-thread cache (tcache). (tcache_put): New. (tcache_get): New. (tcache_thread_freeres): New. (tcache_init): New. (__libc_malloc): Use cached chunks if available. (__libc_free): Initialize tcache if needed. (__libc_realloc): Likewise. (__libc_calloc): Likewise. (_int_malloc): Prefill tcache when appropriate. (_int_free): Likewise. (do_set_tcache_max): New. (do_set_tcache_count): New. (do_set_tcache_unsorted_limit): New. * manual/probes.texi: Document new probes. * malloc/arena.c: Add new tcache tunables. * elf/dl-tunables.list: Likewise. * manual/tunables.texi: Document them. * NEWS: Mention the per-thread cache.
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL6
1 files changed, 6 insertions, 0 deletions
diff --git a/INSTALL b/INSTALL
index 5c745244a6..0ff87ed603 100644
--- a/INSTALL
+++ b/INSTALL
@@ -200,6 +200,12 @@ will be used, and CFLAGS sets optimization options for the compiler.
libnss_nisplus are not built at all. Use this option to enable
libnsl with all depending NSS modules and header files.
+'--disable-experimental-malloc'
+ By default, a per-thread cache is enabled in 'malloc'. While this
+ cache can be disabled on a per-application basis using tunables
+ (set glibc.malloc.tcache_count to zero), this option can be used to
+ remove it from the build completely.
+
'--build=BUILD-SYSTEM'
'--host=HOST-SYSTEM'
These options are for cross-compiling. If you specify both options