daanx
|
13ee94cef6
|
fix concurrent mi_tld access bug
|
2024-12-15 13:22:00 -08:00 |
|
daanx
|
216c04f8d9
|
clean up bitmap api
|
2024-12-13 18:39:03 -08:00 |
|
daanx
|
623eaedf33
|
add debug output for page map; free tld on thread exit
|
2024-12-12 19:59:54 -08:00 |
|
daanx
|
ccf5e36e6b
|
use frac 8 for reclaim_on_free and reabandon; halve full_page_retain if running in a threadpool
|
2024-12-11 16:26:39 -08:00 |
|
daanx
|
565656919e
|
fix comments in types; fix guarded alignment bug
|
2024-12-11 13:04:37 -08:00 |
|
daanx
|
24d3c1bc14
|
heap meta data always uses mi_meta_zalloc
|
2024-12-11 09:16:28 -08:00 |
|
daanx
|
c478ddaab4
|
fix MI_GUARDED build
|
2024-12-10 19:44:54 -08:00 |
|
Daan
|
f37aff6ee2
|
fix for macOS 14 and earlier
|
2024-12-09 22:27:40 -08:00 |
|
daanx
|
d5ed0cc71e
|
various improvements
|
2024-12-09 14:31:43 -08:00 |
|
daanx
|
88990cec2d
|
merge from dev
|
2024-12-08 18:27:05 -08:00 |
|
daanx
|
c8607a8d01
|
remove os_tld and stats parameters to os interface
|
2024-12-08 17:56:13 -08:00 |
|
daanx
|
2a4af6f169
|
comments
|
2024-12-08 17:21:17 -08:00 |
|
daanx
|
2084df3dde
|
add dedicated meta data allocation for threads and tld
|
2024-12-08 12:20:54 -08:00 |
|
daanx
|
c33de86da3
|
check for running in a threadpool to disable page reclaim
|
2024-12-07 17:11:11 -08:00 |
|
daanx
|
659a9dd51d
|
fix page info size and order; atomic page flags
|
2024-12-06 22:37:59 -08:00 |
|
daanx
|
61436a92b9
|
working simplified version without pairmaps and bitmap epoch
|
2024-12-06 15:26:01 -08:00 |
|
daanx
|
7443ee317e
|
tune free-ing and abandoning
|
2024-12-05 17:00:23 -08:00 |
|
daanx
|
bc67be4d79
|
small adjustments
|
2024-12-04 21:40:57 -08:00 |
|
daanx
|
bc7fe399b1
|
large bitmaps working; lock on arena_reserve
|
2024-12-03 23:35:33 -08:00 |
|
daanx
|
3fc2c8e279
|
fix assertions
|
2024-12-03 11:06:07 -08:00 |
|
daanx
|
666c089fc8
|
revise free reclaim; ensure unown cannot race with a free
|
2024-12-03 10:51:13 -08:00 |
|
daanx
|
bd5f7de3f4
|
can run basic test
|
2024-12-02 20:21:35 -08:00 |
|
daanx
|
d96c134566
|
wip: initial version with eager abandonment
|
2024-12-02 16:01:45 -08:00 |
|
daanx
|
1d7a9f62a5
|
bug fixes
|
2024-12-01 12:54:16 -08:00 |
|
daanx
|
55b70f1588
|
wip
|
2024-11-30 14:00:07 -08:00 |
|
daanx
|
f8d04dc2bc
|
compile with clang and gcc
|
2024-11-30 12:41:11 -08:00 |
|
daanx
|
9d904e8643
|
wip: bug fixes
|
2024-11-30 10:39:30 -08:00 |
|
daanx
|
0f635413d6
|
wip: can run initial test
|
2024-11-29 17:50:37 -08:00 |
|
daanx
|
68f5fb2f4b
|
wip: further progress on segment removal; arena allocation
|
2024-11-29 15:08:06 -08:00 |
|
daanx
|
71cfa45e76
|
wip: initial work on mimalloc3 without segments
|
2024-11-28 19:31:04 -08:00 |
|
Daan
|
cd61eb7cf1
|
Merge pull request #961 from devnexen/windows_tighten_criterias
_mi_memcpy/_mi_memzero: tighten criteria for intrinsics for windows.
|
2024-11-25 19:25:26 -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 |
|
David Carlier
|
9f0a7ac0be
|
_mi_memcpy/_mi_memzero: tighten criteria for intrinsics for windows.
FSRM is better used for buffer <= 128 bytes and ERMS, if supported for larger
chunks.
|
2024-11-16 10:05:14 +00:00 |
|
Daan
|
d951b4dd23
|
add missing mi_thread_done definition
|
2024-10-23 00:53:17 -07:00 |
|
Daan
|
aa881733d7
|
reorganize primitives for process initialization; use special data segment on Windows for thread termination by default on Windows now (issue #869)
|
2024-10-21 22:56:59 -07:00 |
|
daanx
|
b1188ea336
|
fix potential race on subproc field in the segment
|
2024-06-03 20:57:00 -07:00 |
|
daanx
|
96b69d7ef6
|
fix leak where OS abandoned blocks were not always reclaimed
|
2024-06-03 17:28:14 -07:00 |
|
Daan
|
f17ddc3395
|
increase thread data cache to32 entries
|
2024-06-03 09:55:02 -07:00 |
|
daanx
|
855e3b2549
|
add support to visit _all_ abandoned segment blocks per sub-process, upstream for python/cpython#114133
|
2024-06-02 09:41:12 -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 |
|
Daan Leijen
|
f93fb900b7
|
move lock code to atomic.h
|
2024-06-01 17:25:45 -07:00 |
|
daanx
|
d9aa19a763
|
add support for sub-processes (to supportpython/cpython#113717)
|
2024-06-01 15:57:18 -07:00 |
|
Daan
|
0c4041fa53
|
add support for custom heap and page tags, upstream of python/cpython#113742
|
2024-05-19 08:06:32 -07:00 |
|
Daan
|
710d6138c7
|
refactor thread meta-data initilazation, upstream of python/cpython#113263
|
2024-05-18 17:42:47 -07:00 |
|
Daan
|
e7f2ffe26c
|
fix build warning on alpine 32-bit
|
2024-05-16 18:53:50 -07:00 |
|
Daan Leijen
|
0022802177
|
commend and make at least 8 tries for reclaim
|
2024-03-25 15:25:04 -07:00 |
|
daanx
|
006ae2d055
|
add is_huge page flag to ensure the right page queue is returned (see #868)
|
2024-03-24 17:07:28 -07:00 |
|
Daan Leijen
|
b5665f0eec
|
add full block_size and page_start to page info
|
2024-03-24 14:17:17 -07:00 |
|
Daan Leijen
|
60c4a0fe56
|
fix compilation warnings for new uint16_t size for used field
|
2024-03-24 08:10:35 -07:00 |
|