Daan
|
9b7537755a
|
Merge branch 'dev-steal' into dev
|
2024-11-25 19:28:35 -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
|
7673aa2517
|
ensure forced abandoned pages can be accessed after free
|
2024-11-25 18:41:57 -08:00 |
|
daanx
|
9b7ac9a1a6
|
clean up candidate search; add mi_collect_reduce
|
2024-11-25 16:58:02 -08:00 |
|
Diego Russo
|
3adb19c84c
|
Fix illegal instruction for older Arm architectures
This is a port of the PR https://github.com/python/cpython/issues/125444
|
2024-11-25 14:23:40 +00:00 |
|
daanx
|
71fec8caf5
|
add target_segments_per_thread option
|
2024-11-18 15:05:22 -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
|
0e76fe3798
|
add address hint to primitive allocation API
|
2024-11-16 16:57:37 -08:00 |
|
daanx
|
b27d154ffd
|
add virtual address bits and physical memory to the mem config
|
2024-11-16 15:37:08 -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
|
5f35933331
|
add 0 byte to canary to prevent spurious read overflow to read the canary (issue #951, pr #953)
|
2024-10-27 21:39:07 -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 |
|
Daan Leijen
|
4234a9bd9d
|
Merge branch 'dev-guarded' into dev
|
2024-08-21 11:30:33 -07:00 |
|
Daan Leijen
|
b9b529de28
|
shuffle for 128 bit
|
2024-08-21 10:45:19 -07:00 |
|
daanx
|
8899a11c70
|
clean up guarded pages code
|
2024-08-20 11:09:17 -07:00 |
|
daanx
|
635cf7af6a
|
fix multi-threaded free to unprotect guarded blocks
|
2024-08-20 09:55:57 -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 |
|
Daan
|
98058eed14
|
add heap tag to area descriptor
|
2024-06-04 16:54:06 -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 |
|
daanx
|
3333f776f9
|
push os abandoned blocks at the tail end
|
2024-06-03 15:37:05 -07:00 |
|
Daan
|
7e23576efa
|
remove old mi_abandoned_await_readers
|
2024-06-03 09:57:03 -07:00 |
|
Daan
|
2ed97f3ebb
|
whitespace
|
2024-06-03 09:55:11 -07:00 |
|
Daan
|
58fbb67963
|
fix c++ compilation
|
2024-06-03 09:25:53 -07:00 |
|
Daan
|
6b15342709
|
fix pthread initalization of mutexes
|
2024-06-02 16:41:07 -07:00 |
|
daanx
|
5501f59f6c
|
only reclaim for exclusive heaps in their associated arena
|
2024-06-02 13:16:20 -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 |
|
Daan Leijen
|
0b3cd51249
|
add initial primitive api for locks
|
2024-06-01 16:45:20 -07:00 |
|
daanx
|
d9aa19a763
|
add support for sub-processes (to supportpython/cpython#113717)
|
2024-06-01 15:57:18 -07:00 |
|
daanx
|
616db104a9
|
prevent UB in arena reservation
|
2024-06-01 12:29:48 -07:00 |
|
Daan
|
87d088b7e0
|
bump version to v1.8.8 for further development
|
2024-05-21 12:31:57 -07:00 |
|
daanx
|
b9b321d328
|
use _builtin_thread_pointer also on gcc 11-x64 and clang-14-x64
|
2024-05-19 20:42:28 -07:00 |
|
Daan
|
03224e17a0
|
bump cmake required version to 3.18 and detect libatomic more reliably, see pr #898
|
2024-05-19 13:25:31 -07:00 |
|
Daan
|
7ea7296d3e
|
add malloc_good_size override maacro, see issue #900 and pr #901
|
2024-05-19 12:03:55 -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
|
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
|
5eb29e971b
|
bump version to 1.8.7 for further development
|
2024-05-16 18:52:29 -07:00 |
|
Daan
|
a38c8dd0f9
|
rename must_free_whole -> has_partial_free
|
2024-05-16 14:41:10 -07:00 |
|
Daan
|
9e721e564a
|
bump version to v1.8.6
|
2024-05-13 09:16:26 -07:00 |
|