Commit graph

263 commits

Author SHA1 Message Date
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
QuarticCat
632421da3a
fix typos 2024-06-19 10:49:03 +08: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
Daan Leijen
7cf60deb12 wip: initial delayed purging of arenas 2023-03-31 14:07:59 -07:00
Daan Leijen
6eee9e4be2 add option eager_reserve 2023-03-30 16:20:11 -07:00
Daan
96b55bd0bb potential fix for macOS issue #697 2023-03-22 09:48:40 -07:00
Daan Leijen
f58357548c restructure header files 2023-03-20 10:37:39 -07:00
Daan Leijen
84ef963a47 remove conioinclude 2023-03-15 14:43:35 -07:00
Daan Leijen
4348a05d0f small fixes 2023-03-14 18:24:38 -07:00
Daan Leijen
10f62eb5a1 add c primitives, move getenv into primitives 2023-03-14 18:10:00 -07:00
Daan Leijen
2b0421a25c fix -Wunused-function for mi_strn-cmp; originally by @rui314 in PR #662 but rebased to dev branch 2022-12-19 17:38:39 -08:00
Daan Leijen
dfc95f34c4 first try WriteFile for a redirected stderr 2022-12-19 16:57:50 -08:00
Johannes Schindelin
089e85b113 Make MIMALLOC_SHOW_STATS work with redirected stderr
Setting `MIMALLOC_SHOW_STATS` to ask mimalloc to print out something
after the process is done is the easiest way to verify that a
mimalloc-enabled Git is running.

So it better work and not try to write to a Win32 Console when it got a
regular file handle instead or, as is the case in Git for Windows'
regular Git Bash window, an emulated pseudo terminal.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 01:13:00 +01:00
Johannes Schindelin
11cab6a0c0 Avoid %z format
This format is not supported by MSVC runtimes targeted by the mingw-64
toolchain.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 00:24:43 +01:00
Johannes Schindelin
745a34f475 Fix whitespace
This mostly deletes trailing spaces.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 00:24:20 +01:00
Daan Leijen
e42a22c9ca fix warnings 2022-11-28 09:59:48 -08:00
Daan Leijen
35d332141d experimental destroy_on_exit option for statically linked mimalloc in a dynamically unloaded DLL 2022-11-18 11:00:23 -08:00
daan
c4663463d1 add mi_cdecl to functions to avoid errors when compiling with a different calling convention, see PR #592 2022-10-31 12:16:34 -07:00
Daan Leijen
7bc602ebb4 redefine mi_likely/mi_unlikely to work with C++ 20 [[likely]] attributes 2022-04-19 19:50:06 -07:00
Daan Leijen
ca0bac743d maintain backward compatible option order 2022-04-14 16:10:36 -07:00
Daan Leijen
f87cba9bd8 add max segment reclaim as an option 2022-04-14 16:05:49 -07:00
Daan Leijen
faca422b71 fix msvc warnings at level 4 2022-04-09 14:48:30 -07:00