Commit graph

232 commits

Author SHA1 Message Date
daanx
516e644359 rename option pagemap_commit; always commit the page map on macos (for now) 2024-12-22 16:06:49 -08:00
daanx
4c81c3cf90 enable purging of free committed slices from arenas 2024-12-13 13:17:00 -08:00
daanx
c5a2d11193 add extra checks for valid pointers in the pagemap, add max_vabits and debug_commit_full_pagemap options 2024-12-09 20:40:26 -08:00
daanx
68ac94c1ba set default arena reserve back to 1GiB 2024-12-08 18:53:43 -08:00
daanx
bf2f2a8bf4 fix bug where only the first chunkmap field would be considered 2024-12-08 18:48:56 -08:00
daanx
7443ee317e tune free-ing and abandoning 2024-12-05 17:00:23 -08:00
daanx
0616ee151e change to full_page_retain 2024-12-05 11:29:25 -08:00
daanx
666c089fc8 revise free reclaim; ensure unown cannot race with a free 2024-12-03 10:51:13 -08:00
daanx
fe5a314114 add base and size to OS memid 2024-12-02 19:31:36 -08:00
daanx
5e95ebc7a0 fix free stats 2024-12-02 17:46:41 -08:00
daanx
d96c134566 wip: initial version with eager abandonment 2024-12-02 16:01:45 -08:00
daanx
69ac69abac wip: use epoch with 512bit chunks 2024-12-02 00:31:08 -08:00
daanx
188294a0df wip: bug fixes 2024-11-30 11:12:39 -08:00
daanx
978d844e15 wip: bug fixes 2024-11-29 20:23:39 -08:00
daanx
b898dbe3e0 Merge branch 'dev' into dev-steal 2024-11-18 16:12:26 -08:00
daanx
71fec8caf5 add target_segments_per_thread option 2024-11-18 15:05:22 -08:00
Daan
3a7b6f0a8d allow build time setting of sample rate 2024-11-18 10:28:00 -08:00
daanx
d57cb0765d add guarded objects that are sampled (and fit a size range). guarded sample rate etc can be set per heap as well as defaulted with options 2024-11-17 22:45:09 -08:00
daanx
8ba1879073 add sampling for guarded objects 2024-11-17 00:06:16 -08:00
daanx
8b6017d976 rename mi_debug_guarded_ to mi_guarded_ 2024-11-16 22:42:32 -08:00
daanx
498c92e348 update guarded implementation to use block tags 2024-11-16 21:15:50 -08:00
daanx
b27d154ffd add virtual address bits and physical memory to the mem config 2024-11-16 15:37:08 -08:00
Daan
b5ae6fc555 remove wrong assertion 2024-10-29 20:08:36 -07:00
Daan
638ea539de allow certain options to have defaults set via the pre-processor at build time -- see issue #945 2024-10-21 05:04:01 -07:00
daanx
8899a11c70 clean up guarded pages code 2024-08-20 11:09:17 -07:00
daanx
0c19eb60cf initial working guarded pages 2024-08-19 21:21:40 -07:00
Daan
7b5df14bea initial work on guarded objects 2024-07-16 09:15:59 -07:00
daanx
f87ec74bb3 reduce delayed output from redirection to 16KiB to reduce the .bss size 2024-06-02 15:10:17 -07:00
daanx
8f874555d5 add initial support for visiting abandoned segments per subprocess, upstream for python/cpython#114133 2024-06-02 07:47:08 -07:00
daanx
1b21415dfa make retry on oom an option; revise size options to not overflow the long 2024-05-18 09:56:02 -07:00
Daan
a527f75161 add disallow_arena_alloc option 2024-04-22 10:10:20 -07:00
Daan Leijen
9c96d05ee4 abandoned reclaim on free is on by default 2024-03-24 14:52:50 -07:00
Daan Leijen
a8a53e3e85 fix double counting of free-ing for non-thread-local free calls 2024-03-24 14:50:15 -07:00
daanx
c4f1f2e079 make reclaim tries a percentage of the abandoned count 2024-03-01 14:57:46 -08:00
daanx
64edbc92dd allow abandoned segment reclaim on a free 2024-02-29 14:58:59 -08:00
daanx
814dac26a1 add KiB to size options 2023-05-19 18:00:46 -07:00
daanx
c1218883a4 more format specifiers for _mi_vsnprintf 2023-05-19 17:48:07 -07:00
daanx
e10467f673 add libc primitives to reduce dependencies 2023-05-19 11:57:10 -07:00
daanx
4a85f32f8e add libc.c source file 2023-05-19 10:24:39 -07:00
daanx
a59ae585c7 remove allow_purge option 2023-04-23 13:04:50 -07:00
daanx
8027fcfecd Merge branch 'dev' into dev-reset 2023-04-15 17:59:01 -07:00
Daan
9535726528 fix warnings on latest macOS 2023-04-14 09:42:04 -07:00
daanx
eb62caeda0 allow per page purging instead of reset 2023-04-08 17:37:58 -07:00
daanx
96e9e6f570 clean up option naming 2023-04-05 10:11:54 -07:00
daanx
8d56c155f9 set page_free to 0 by default 2023-04-04 16:58:58 -07:00
daanx
4fc597d4f4 more tight purge delay 2023-04-04 15:05:29 -07:00
daanx
77766e20a6 use only arena's instead of regions 2023-04-04 14:58:06 -07:00
daanx
449aad0635 wip: purgeable arenas; update option names and improve arena reservation 2023-04-04 12:15:57 -07:00
daanx
a5b47fe17b Merge branch 'dev' into dev-reset 2023-04-03 12:46:00 -07:00
Daan Leijen
05e7931b94 prevent pedantic warning 2023-04-01 11:28:34 -07:00