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 |
|
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 |
|
daanx
|
381da05d8a
|
make mimalloc includes relative to the current file, upstream of python/cpython#113141
|
2024-05-18 16:48:58 -07:00 |
|
Daan
|
b1ec1d5e5a
|
refactor aligned allocation
|
2024-05-11 07:22:56 -07:00 |
|
Daan
|
7128db7bba
|
simplified aligned allocation; improved codegen; fix mi_good_size with padding included; add MI_MAX_ALIGN_GUARANTEE
|
2024-05-11 06:43:52 -07:00 |
|
Daan
|
7247b9e326
|
allow configuring page and segment sizes (pr #753 and pr #862)
|
2024-04-20 16:45:49 -07:00 |
|
Daan
|
5050b63038
|
define MI_MAX_ALLOC_SIZE as PTRDIFF_MAX (related to #877)
|
2024-04-19 09:53:21 -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
|
6688b45fbd
|
rename MI_ALIGNMENT_MAX to MI_BLOCK_ALIGNMENT_MAX for clarity
|
2024-03-24 10:57:02 -07:00 |
|
Daan Leijen
|
ea6137a501
|
use MI_MAX_ALIGN_SIZE to adjust block_offset_adj
|
2024-03-24 09:01:58 -07:00 |
|
Daan Leijen
|
60c4a0fe56
|
fix compilation warnings for new uint16_t size for used field
|
2024-03-24 08:10:35 -07:00 |
|
Daan
|
9085596eab
|
update comment
|
2024-03-23 08:57:29 -07:00 |
|
Daan
|
cc809b0cd4
|
take 16 bits from used field to create a fast unalign path
|
2024-03-18 01:40:03 -07:00 |
|
Daan
|
db52999d85
|
update used block comment (issue #861)
|
2024-03-08 09:01:26 -08:00 |
|
daanx
|
5fe83bf327
|
limit reclaim from free to half the segments to prevent a pure freeing thread to reclaim too many segments
|
2024-03-03 17:38:50 -08:00 |
|
Daan
|
56d1a859ca
|
Merge branch 'dev' into dev-abandon
|
2024-03-03 09:37:53 -08:00 |
|
Daan
|
027b22aaf2
|
add arena stats
|
2024-03-03 09:37:46 -08:00 |
|
daanx
|
bdda13b880
|
track abandoned segments in an arena bitmap instead of with a list
|
2024-02-29 14:27:28 -08:00 |
|
daanx
|
632edf9996
|
rename was_zero/committed to initially_zero/committed
|
2023-04-24 09:03:43 -07:00 |
|
daanx
|
e6f3647556
|
track os alignment and base
|
2023-04-18 19:00:50 -07:00 |
|
daanx
|
09e42aea4e
|
clarify is_zero meaing
|
2023-04-18 17:41:18 -07:00 |
|
daanx
|
4d976270eb
|
review is_zero flag
|
2023-04-18 17:18:39 -07:00 |
|
daanx
|
b845be241a
|
wip: use memid for OS allocation
|
2023-04-18 16:38:47 -07:00 |
|
daanx
|
a8c581059b
|
Merge branch 'dev' into dev-reset
|
2023-04-17 09:48:58 -07:00 |
|
daanx
|
43be9c2909
|
possible fix for warnings on armv6 (issue #719)
|
2023-04-17 09:25:41 -07:00 |
|
daanx
|
d48b988c40
|
clean up os api
|
2023-04-16 11:21:45 -07:00 |
|
daanx
|
0fc4de1440
|
use rich memid's to simplify the internal API's and invariants
|
2023-04-15 21:31:17 -07:00 |
|
daanx
|
c90a2bbd0a
|
make memid's abstract for safety
|
2023-04-13 12:17:52 -07:00 |
|
daanx
|
eb62caeda0
|
allow per page purging instead of reset
|
2023-04-08 17:37:58 -07:00 |
|
daanx
|
55df1f3a54
|
more detailed stats, including purges
|
2023-04-05 09:48:22 -07:00 |
|
daanx
|
461df1e878
|
implement arena exclusive heap allocation for dev
|
2023-04-04 15:40:43 -07:00 |
|
Daan Leijen
|
65402836ae
|
comments
|
2023-03-20 11:30:52 -07:00 |
|
Daan Leijen
|
ec5f4904b0
|
more comments
|
2023-03-20 11:01:40 -07:00 |
|
Daan Leijen
|
f58357548c
|
restructure header files
|
2023-03-20 10:37:39 -07:00 |
|