daanx
|
45f7fb559a
|
small fixes
|
2024-12-04 00:14:56 -08:00 |
|
daanx
|
bc7fe399b1
|
large bitmaps working; lock on arena_reserve
|
2024-12-03 23:35:33 -08:00 |
|
daanx
|
e5fdd6e110
|
wip: initial large bitmaps
|
2024-12-03 22:43:14 -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
|
fe5a314114
|
add base and size to OS memid
|
2024-12-02 19:31:36 -08:00 |
|
daanx
|
5e95ebc7a0
|
fix free stats
|
2024-12-02 17:46:41 -08:00 |
|
daanx
|
1d7a9f62a5
|
bug fixes
|
2024-12-01 12:54:16 -08:00 |
|
daanx
|
9ebe941ce0
|
first version that passes the make test
|
2024-11-30 20:21:32 -08:00 |
|
daanx
|
d15e83030e
|
wip: rename arena blocks to slices
|
2024-11-30 12:16:41 -08:00 |
|
daanx
|
188294a0df
|
wip: bug fixes
|
2024-11-30 11:12:39 -08:00 |
|
daanx
|
9d904e8643
|
wip: bug fixes
|
2024-11-30 10:39:30 -08:00 |
|
daanx
|
978d844e15
|
wip: bug fixes
|
2024-11-29 20:23:39 -08:00 |
|
daanx
|
0f635413d6
|
wip: can run initial test
|
2024-11-29 17:50:37 -08:00 |
|
daanx
|
71cfa45e76
|
wip: initial work on mimalloc3 without segments
|
2024-11-28 19:31:04 -08:00 |
|
daanx
|
9cae0d31cd
|
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
|
2024-11-17 23:30:19 -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 |
|
Daan Leijen
|
c57e9b855c
|
fix std malloc compile of the stress test
|
2024-11-16 19:43:13 -08:00 |
|
Daan
|
e2f4fe647e
|
update test file
|
2024-10-29 22:23:21 -07: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
|
50d3525a8c
|
add test for issue #944
|
2024-10-21 05:04:27 -07:00 |
|
Daan
|
db3d8485d2
|
increase TSAN test to 400 iterations
|
2024-08-21 17:13:51 -07:00 |
|
Daan
|
51025f1ac2
|
set lower parameters for guarded test
|
2024-08-21 15:29:32 -07:00 |
|
Daan Leijen
|
4234a9bd9d
|
Merge branch 'dev-guarded' into dev
|
2024-08-21 11:30:33 -07:00 |
|
daanx
|
b5c6495f69
|
don't consider memory as large OS pages if only madvise'd
|
2024-08-20 15:58:36 -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
|
e0baf882bb
|
reduce UBSAN parameters to stay within pipeline limits
|
2024-06-03 21:26:38 -07:00 |
|
Daan
|
b123bbe6c0
|
increase iterations for tsan test
|
2024-06-03 21:13:34 -07:00 |
|
daanx
|
b1188ea336
|
fix potential race on subproc field in the segment
|
2024-06-03 20:57:00 -07:00 |
|
daanx
|
76b0873ce2
|
fix asan tracking by explicitly setting memory to undefined before a free
|
2024-06-03 20:28:47 -07:00 |
|
daanx
|
f02a0b3541
|
more aggressive reclaim from free for OS blocks
|
2024-06-03 14:05:57 -07:00 |
|
daanx
|
1a9cf7bce2
|
switch between OS and arena allocation in stress test
|
2024-06-03 11:43:35 -07:00 |
|
Daan
|
768872e4e0
|
typo in stress test
|
2024-06-02 16:24:13 -07:00 |
|
daanx
|
a964322a21
|
revise the segment map to only apply to OS allocated segments and reduce the .BSS footprint
|
2024-06-02 14:46:59 -07:00 |
|
daanx
|
5501f59f6c
|
only reclaim for exclusive heaps in their associated arena
|
2024-06-02 13:16:20 -07:00 |
|
daanx
|
635d626c82
|
fix leak in abandoned block visiting
|
2024-06-02 10:43:41 -07:00 |
|
daanx
|
f7fe5bf20e
|
optimize heap walks, by Sam Gross, upstream of python/cpython#114133
|
2024-06-02 10:28:30 -07:00 |
|
Daan Leijen
|
0b3cd51249
|
add initial primitive api for locks
|
2024-06-01 16:45:20 -07:00 |
|
Daan
|
0dcdc55bbd
|
better aligned test
|
2024-05-11 07:09:30 -07:00 |
|
Daan
|
c70c1df16a
|
better fast path for aligned allocation; check max alloc size correctly in the aligned fallback
|
2024-05-10 20:19:17 -07:00 |
|
Daan
|
c13c17f1d0
|
Merge pull request #864 from rHermes/fix-passing-heap
Avoid compilation error when passing in heap_t to C++ allocators
|
2024-04-19 10:07:55 -07:00 |
|
Daan
|
06b510c42d
|
fix build pipeline for ASAN
|
2024-04-19 09:41:24 -07:00 |
|
Daan Leijen
|
6688b45fbd
|
rename MI_ALIGNMENT_MAX to MI_BLOCK_ALIGNMENT_MAX for clarity
|
2024-03-24 10:57:02 -07:00 |
|
Teodor Spæren
|
3d89f6388e
|
Fix std::shared_pointer calling free on provided heap pointers
|
2024-03-09 15:14:32 +01: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 |
|