diff options
author | Konstantin Kharlamov <Hi-Angel@yandex.ru> | 2023-02-16 18:07:55 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2023-03-04 13:25:34 +0200 |
commit | 396f46d904ab7509476b0d824ec2e4d9a231a2df (patch) | |
tree | b5d008d7acaaa6202b7a8a9831ca76740f049abd /src/alloc.c | |
parent | 49e021e5be943477329b065fbff76862ea832acc (diff) | |
download | emacs-396f46d904ab7509476b0d824ec2e4d9a231a2df.tar.gz |
bug#61489: Increase BLOCK_ALIGN from 1024 to 32768
Originally discovered by Tyler Dodge in his article "Significant Garbage
Collection Improvement For Emacs".
While testing this change on Archlinux system with Intel i5-7200U CPU,
average time of garbage collection gets reduced by ≈25%. Other users
report improvements up to 50%. While monitoring PSS of emacs with and
without customizations loaded before and after the patch, no
statistically significant differences were discovered. So overall, this
change is a win.
* src/alloc.c (BLOCK_ALIGN): increase from 1024 to 32768.
Diffstat (limited to 'src/alloc.c')
-rw-r--r-- | src/alloc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/alloc.c b/src/alloc.c index 6a7037b6bb0..5450586b533 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -1083,7 +1083,7 @@ lisp_free (void *block) BLOCK_BYTES and guarantees they are aligned on a BLOCK_ALIGN boundary. */ /* Byte alignment of storage blocks. */ -#define BLOCK_ALIGN (1 << 10) +#define BLOCK_ALIGN (1 << 15) verify (POWER_OF_2 (BLOCK_ALIGN)); /* Use aligned_alloc if it or a simple substitute is available. |