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
|
66052f135f
|
allow custom thread id, upstream of python/cpython#115488)
|
2024-05-18 17:05:13 -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 |
|
daanx
|
c48a21215b
|
fix arm64 windows compilation, upstream of python/cpython#111527
|
2024-05-18 16:41:39 -07:00 |
|
daanx
|
937fd19338
|
comment
|
2024-05-18 16:32:10 -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
|
a38c8dd0f9
|
rename must_free_whole -> has_partial_free
|
2024-05-16 14:41:10 -07:00 |
|
Daan
|
13e519202a
|
fix comments; nicer strdup/strndup
|
2024-05-13 09:02:40 -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
|
1ebc28a8ff
|
update comment
|
2024-05-10 15:58:37 -07:00 |
|
Daan
|
cc3c14f2ed
|
use builtin_thread_pointer only on non-apple arm64 (issue #883 and #851)
|
2024-04-26 23:34:10 -07:00 |
|
Daan
|
146f9d2333
|
make TLS slot default instead of __builtin_thread_pointer. Potentially fixes build errors on various platforms (see issue #883)
|
2024-04-24 19:48:04 -07:00 |
|
Daan
|
204348e468
|
only define WIN32_LEAN_AND_MEAN if needed
|
2024-04-20 16:58:58 -07:00 |
|
Daan
|
7247b9e326
|
allow configuring page and segment sizes (pr #753 and pr #862)
|
2024-04-20 16:45:49 -07:00 |
|
Daan
|
336f83fbd1
|
use __builtin_thread_pointer on arm64 with older gcc compilers (issue #851)
|
2024-04-20 16:09:45 -07:00 |
|
Daan
|
bf5932c3c6
|
use better purging for segments_collect
|
2024-04-19 12:43:05 -07:00 |
|
Daan
|
2b7530e183
|
add segment_collect for forced heap_collect
|
2024-04-19 12:33:17 -07:00 |
|
Daan
|
32e065bb32
|
rename segment_thread_collect to segment_collect
|
2024-04-19 12:11:58 -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
|
a8a53e3e85
|
fix double counting of free-ing for non-thread-local free calls
|
2024-03-24 14:50:15 -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
|
07ae64bd81
|
faster check for NULL in mi_free by combining with masking
|
2024-03-24 10:39:22 -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
|
70e3ce07d1
|
Merge branch 'dev' into dev-abandon
|
2024-03-02 17:34:58 -08:00 |
|
Daan
|
683332c950
|
Define reallocarr as weak to avoid symbol collision on gnu/Linux. #751 by @Romain-Geissler-1A
|
2024-03-02 17:12:58 -08:00 |
|
Daan
|
e1f6516fda
|
Fix undefined symbol errors when building for wasi #758, by @anuraaga
|
2024-03-02 17:05:29 -08:00 |
|
Daan
|
5d22157dc8
|
support tls_slot for PPC
#781, by @barracuda156
|
2024-03-02 16:41:49 -08:00 |
|
Daan
|
5634527fae
|
add terminating quote
|
2024-03-02 15:26:42 -08:00 |
|
Daan
|
dfb5cadf33
|
don't use the new __builtin_thread_pointer on macOS
|
2024-03-02 14:06:34 -08:00 |
|
Daan Leijen
|
3966953b7f
|
prefer using __builtin_thread_pointer over assembly primitives. Fixes #851 and #852 as well.
|
2024-03-02 11:50:57 -08:00 |
|
daanx
|
500d2ad1fd
|
ensure non-arena segments are force purged on abandonment; make non-arena reclaim atomic
|
2024-03-01 18:47:59 -08:00 |
|
daanx
|
c4f1f2e079
|
make reclaim tries a percentage of the abandoned count
|
2024-03-01 14:57:46 -08:00 |
|
daanx
|
cf8f73098e
|
start abandoned search randomized
|
2024-03-01 10:51:18 -08:00 |
|
daanx
|
64edbc92dd
|
allow abandoned segment reclaim on a free
|
2024-02-29 14:58:59 -08:00 |
|
daanx
|
bdda13b880
|
track abandoned segments in an arena bitmap instead of with a list
|
2024-02-29 14:27:28 -08:00 |
|
Daan Leijen
|
36ee5f9024
|
avoid warning on newer clang
|
2023-06-30 12:21:01 -07:00 |
|
Daan Leijen
|
1325ee640a
|
avoid warning on newer clang
|
2023-06-30 12:16:38 -07:00 |
|
daanx
|
e10467f673
|
add libc primitives to reduce dependencies
|
2023-05-19 11:57:10 -07:00 |
|