Daan Leijen
8184e9de1f
Merge branch 'dev' into dev-slice
2023-03-06 10:29:27 -08:00
Daan Leijen
2e6ab0f230
add documentation for tracking tools; rename with prefix MI_TRACK_tool
2023-03-06 09:02:38 -08:00
Daan
e4b9ea918f
merge from dev
2023-03-04 14:52:30 -08:00
Daan
6dcebdc303
fix sizes in memory tracking and padding for huge alignments
2023-03-04 14:49:02 -08:00
Daan Leijen
5fe4a3480f
revert default max align commit back to 16
2023-02-20 12:21:06 -08:00
daan
8be4cee418
change max align size to 8
2023-02-20 12:15:26 -08:00
Daan Leijen
92ffc25d79
merge from dev
2022-12-19 17:08:45 -08:00
Johannes Schindelin
745a34f475
Fix whitespace
...
This mostly deletes trailing spaces.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 00:24:20 +01:00
Daan Leijen
ed82aa90ea
merge from dev where huge objects are now part of page queues again
2022-11-22 21:54:58 -08:00
Daan Leijen
969d8bc5fe
make huge pages part of the regular page queues again
2022-11-22 20:56:35 -08:00
Daan Leijen
83c027c4bf
fix medium page size to 512k
2022-11-21 18:56:56 -08:00
Daan Leijen
c007747169
back to 64k pages but 32MiB segments and a 1MiB minimal commit size
2022-11-21 15:03:15 -08:00
Daan Leijen
1a7f6f376d
move threadid field
2022-11-21 10:22:50 -08:00
Daan Leijen
7ebd1c6daf
merge from dev
2022-11-18 10:22:45 -08:00
Daan Leijen
18cf94dff6
move keys field in the page struct to keep offsets in the fast path the same for different build variants
2022-11-18 10:14:37 -08:00
Daan Leijen
82a765a255
experiment with 32KiB slices and increased MI_MIN_EXTEND
2022-11-18 09:38:01 -08:00
Daan Leijen
b940543cd5
experiment with smaller segment size (32MiB) and finer minimal commit (1MiB)
2022-11-17 18:57:45 -08:00
daan
c26c5da016
Merge branch 'dev' into dev-slice
2022-11-07 14:51:18 -08:00
daan
3e1d800e9b
potential fix for windows static linking with thread creation in dll's
2022-11-07 14:47:53 -08:00
daan
c55cc260ab
merge from dev-align
2022-11-07 11:29:03 -08:00
daan
1f12c3dd12
remove MI_ALIGNMENT_MAX and add comments
2022-11-07 11:13:42 -08:00
daan
651a99b35d
refine last slice setting for large alignments
2022-11-06 20:57:27 -08:00
daan
562efed54d
fix full SEGMENT_SIZE internal alignment by adding one more slice entry
2022-11-06 20:36:51 -08:00
daan
4814a649be
merge from dev-align
2022-11-06 16:23:42 -08:00
daan
6a80fa3ac1
initial progress on removing alignment limit
2022-11-05 14:46:52 -07:00
daan
9f36808a7f
initial api for heaps restricted to a certain arena
2022-11-01 16:22:51 -07:00
daan
66525ccae3
merge from dev-track
2022-10-30 14:31:21 -07:00
daan
886fd7d1b8
add cmakefile MI_VALGRIND option
2022-10-30 12:49:29 -07:00
daan
b48040e20a
set pages to noaccess explicitly for valgrind precision
2022-10-30 12:23:11 -07:00
daan
84c706508c
fix false positives from valgrind in rptest
2022-10-30 10:45:51 -07:00
daan
a1f5a5d962
fix various false positives in test-stress from valgrind
2022-10-29 14:37:55 -07:00
Daan Leijen
7e492f4420
merge from dev
2022-04-09 15:07:07 -07:00
Daan Leijen
6c91c75b14
remove thread local segment cache
2022-04-09 14:33:20 -07:00
Daan Leijen
332346b685
remove unneeded MI_HUGE_OBJ_SIZE_MAX
2022-04-07 10:38:31 -07:00
daan
8ec83f6945
increase min commit to 2 mib
2022-02-05 11:21:47 -08:00
daan
e11100a137
add minimal commit size for increased efficiency (decommit fine grained, commit coarse grained)
2022-02-05 10:57:15 -08:00
daan
0e2df71829
increase minimal commit size to 8*slice-size and add decommit_extend_delay as option
2022-02-04 16:11:38 -08:00
Daan
c6f32c9533
Merge pull request #528 from michaeljclark/mimalloc-fixes
...
mimalloc-types: amend comment adding medium to list of page kinds
2022-02-02 19:57:50 -08:00
Michael Clark
9da8788dae
mimalloc-types: amend comment adding medium to list of page kinds
2022-01-19 10:14:08 +13:00
daan
a74c05c6c0
Merge branch 'dev' into dev-slice
2022-01-10 16:21:15 -08:00
Christian Heimes
0353fc38dd
Allow overrides of MI_DEBUG memory constants
...
CPython and Windows CRT debug builds use different values for uninit,
freed, and padding bytes. Make ``MI_DEBUG_*`` constants conditional to
allow embedders to override the constants.
Windows dbgheap:
```
_bNoMansLandFill = 0xFD
_bDeadLandFill = 0xDD
_bCleanLandFill = 0xCD
```
Python memory debug
```
PYMEM_CLEANBYTE 0xCD
PYMEM_DEADBYTE 0xDD
PYMEM_FORBIDDENBYTE 0xFD
```
Signed-off-by: Christian Heimes <christian@python.org>
2022-01-05 13:22:47 +01:00
daan
72a33c37ef
merge from dev
2021-12-18 11:34:02 -08:00
Daan Leijen
78e2e580f8
Merge branch 'dev' into dev-slice
2021-12-18 11:11:54 -08:00
Daan Leijen
89090510bd
update alignment tests
2021-12-18 11:11:44 -08:00
daan
abbff9c030
merge from dev (MI_ALIGNED_MAX)
2021-12-17 13:23:24 -08:00
daan
684c2c82a7
restrict max aligment boundary to prevent bug with segment determination (found by Matthew Parkinson).
2021-12-17 11:40:46 -08:00
daan
f412df7a2b
make segment size smaller on 32-bit
2021-11-14 16:52:10 -08:00
daan
70547b5f16
fix slice count
2021-11-14 12:09:20 -08:00
daan
32170897dd
make decommit size equal to slice size
2021-11-14 11:45:28 -08:00
daan
511a8996f3
increase commit mask blocks to 2xslice size
2021-11-13 20:12:03 -08:00