about summary refs log tree commit diff
path: root/NEWS
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 /NEWS
parent3cefdd7310a5d1fad45648d9346e47df9c185fdc (diff)
downloadglibc-d5c3fafc4307c9b7a4c7d5cb381fcdbfad340bcc.tar.gz
glibc-d5c3fafc4307c9b7a4c7d5cb381fcdbfad340bcc.tar.xz
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 'NEWS')
-rw-r--r--NEWS8
1 files changed, 8 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 616b3244e7..1266276fcd 100644
--- a/NEWS
+++ b/NEWS
@@ -9,6 +9,14 @@ Version 2.26
 
 Major new features:
 
+* A per-thread cache has been added to malloc. Access to the cache requires
+  no locks and therefore significantly accelerates the fast path to allocate
+  and free small amounts of memory. Refilling an empty cache requires locking
+  the underlying arena. Performance measurements show significant gains in a
+  wide variety of user workloads. Workloads were captured using a special
+  instrumented malloc and analyzed with a malloc simulator. Contributed by
+  DJ Delorie with the help of Florian Weimer, and Carlos O'Donell.
+
 * Unicode 10.0.0 Support: Character encoding, character type info, and
   transliteration tables are all updated to Unicode 10.0.0, using
   generator scripts contributed by Mike FABIAN (Red Hat).