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
|
63ddc31d3f
|
fix 32-bit compile warnings
|
2023-04-17 12:05:33 -07:00 |
|
daanx
|
e03f26b035
|
fix atomic signature
|
2023-04-17 11:39:55 -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
|
a52ba65f65
|
further fix for atomic build error suggested by Davide Di Gennaro (issue #729, pr #724)
|
2023-04-17 09:13:08 -07:00 |
|
daanx
|
a655c28b66
|
cleanup
|
2023-04-16 12:29:21 -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
|
0174d19af3
|
increase thread data cache to 16
|
2023-04-15 19:49:14 -07:00 |
|
daanx
|
8027fcfecd
|
Merge branch 'dev' into dev-reset
|
2023-04-15 17:59:01 -07:00 |
|
Sergey Fedorov
|
cd915900a2
|
atomic.h: unbreak build on Darwin PPC
|
2023-04-15 07:06:47 +08:00 |
|
Daan
|
5a866ca7e1
|
fix build error on Android/Linux for an atomic signature (pr #724, issue #729)
|
2023-04-14 09:44:36 -07:00 |
|
daanx
|
48d0d0da9b
|
fix thread data cache to use pure os alloc
|
2023-04-13 15:27:20 -07:00 |
|
daanx
|
0ba79d01f6
|
allow static allocation in arenas for internal metadata
|
2023-04-13 13:19:39 -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
|
cdefd5b69c
|
fix stats for purging
|
2023-04-05 11:11:03 -07:00 |
|
daanx
|
96e9e6f570
|
clean up option naming
|
2023-04-05 10:11:54 -07:00 |
|
daanx
|
55df1f3a54
|
more detailed stats, including purges
|
2023-04-05 09:48:22 -07:00 |
|
daanx
|
cb0369452d
|
use exponetially sized arenas
|
2023-04-04 17:54:33 -07:00 |
|
daanx
|
d01017ffda
|
extend primitive api with is_zero parameters
|
2023-04-04 16:32:39 -07:00 |
|
daanx
|
a2e1d2b893
|
add segment map to track valid pointers
|
2023-04-04 16:00:17 -07:00 |
|
daanx
|
461df1e878
|
implement arena exclusive heap allocation for dev
|
2023-04-04 15:40:43 -07:00 |
|
daanx
|
77766e20a6
|
use only arena's instead of regions
|
2023-04-04 14:58:06 -07:00 |
|
daanx
|
1d231be758
|
clarify needs_recommit
|
2023-04-04 13:05:48 -07:00 |
|
daanx
|
5c39fe7246
|
decommit returns whether re-commit is needed
|
2023-04-04 12:57:18 -07:00 |
|
daanx
|
449aad0635
|
wip: purgeable arenas; update option names and improve arena reservation
|
2023-04-04 12:15:57 -07:00 |
|
daanx
|
a5b47fe17b
|
Merge branch 'dev' into dev-reset
|
2023-04-03 12:46:00 -07:00 |
|
daanx
|
92556e0e62
|
bump version for further development
|
2023-04-03 12:45:04 -07:00 |
|
Daan Leijen
|
595add5e3d
|
wip: initial work on purgable arenas
|
2023-03-31 20:51:35 -07:00 |
|
Daan Leijen
|
7cf60deb12
|
wip: initial delayed purging of arenas
|
2023-03-31 14:07:59 -07:00 |
|
Daan Leijen
|
1a57a53b75
|
Merge branch 'dev' into dev-reset
|
2023-03-31 10:31:43 -07:00 |
|
Daan Leijen
|
d3ec7f378e
|
fix compile on ppc64IE and s390x arches (issue #717)
|
2023-03-31 10:25:32 -07:00 |
|
Daan Leijen
|
6eee9e4be2
|
add option eager_reserve
|
2023-03-30 16:20:11 -07:00 |
|
Daan Leijen
|
f08d9d489c
|
bump version for further development
|
2023-03-30 09:19:35 -07:00 |
|
Daan Leijen
|
176b6e6aa0
|
add mi_arena_is_os_allocated
|
2023-03-28 09:59:41 -07:00 |
|
Daan Leijen
|
9792b6364d
|
move more prototypes in internal.h for safety
|
2023-03-28 09:25:32 -07:00 |
|
Daan Leijen
|
c92e9e7bf7
|
add comment that thread id's should not be zero, issue #698
|
2023-03-20 14:01:09 -07:00 |
|
Daan Leijen
|
0b4c3da2e9
|
make process init race free (issue #701)
|
2023-03-20 13:55:39 -07:00 |
|
Daan Leijen
|
65402836ae
|
comments
|
2023-03-20 11:30:52 -07:00 |
|
Daan Leijen
|
e24e1125ee
|
bump version to 1.8.0
|
2023-03-20 11:03:50 -07:00 |
|
Daan Leijen
|
0509d11ac5
|
more comments
|
2023-03-20 11:02:16 -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 |
|
Daan Leijen
|
17a20f280b
|
dont track ETW by default
|
2023-03-16 20:16:31 -07:00 |
|
Daan Leijen
|
1a99efc671
|
integrate ETW windows event tracing into mimalloc as another track tool
|
2023-03-16 20:08:43 -07:00 |
|
Xinglong He
|
072316bd33
|
add etw support
|
2023-03-16 17:47:20 -07:00 |
|
Daan Leijen
|
c4c96d2f8d
|
update older vs ide projects
|
2023-03-15 20:38:10 -07:00 |
|
Daan Leijen
|
e937070cf1
|
Merge branch 'dev' into dev-platform
|
2023-03-15 20:33:35 -07:00 |
|
Daan Leijen
|
824fd8a7b1
|
fix issue #707; rename a local template parameter (destroy) to work around two-phase template resolve in msvc 2019
|
2023-03-15 20:31:52 -07:00 |
|
Daan Leijen
|
9a2dbf373e
|
move thread init to primitives
|
2023-03-15 13:35:23 -07:00 |
|
Daan Leijen
|
9b110090b2
|
move threadid and mi_get_default_heap to primitives
|
2023-03-14 20:35:00 -07:00 |
|
Daan Leijen
|
3579d3b861
|
move mi_thread_id to primitives
|
2023-03-14 19:38:45 -07:00 |
|
Daan Leijen
|
10f62eb5a1
|
add c primitives, move getenv into primitives
|
2023-03-14 18:10:00 -07:00 |
|
Daan Leijen
|
08a01d26dc
|
initial commit of new primitive layer
|
2023-03-14 16:54:46 -07:00 |
|
Daan Leijen
|
2e6ab0f230
|
add documentation for tracking tools; rename with prefix MI_TRACK_tool
|
2023-03-06 09:02:38 -08:00 |
|
Daan Leijen
|
465eb81d30
|
track free blocks in valgrind for heap_destroy as well
|
2023-03-05 18:18:41 -08:00 |
|
Daan
|
056c2ce45b
|
match track free size to tracked malloc size
|
2023-03-05 11:01:51 -08:00 |
|
Daan
|
3c906bde8b
|
better track_free_size
|
2023-03-04 15:17:13 -08:00 |
|
Daan
|
6dcebdc303
|
fix sizes in memory tracking and padding for huge alignments
|
2023-03-04 14:49:02 -08:00 |
|
Daan Leijen
|
6a230f8329
|
fix compilation of heap specific STL allocators for vs2017
|
2023-02-07 11:07:52 -08:00 |
|
Daan Leijen
|
4cebb48062
|
bump version to v1.7.9
|
2022-12-23 13:29:06 -08:00 |
|
Daan Leijen
|
4d1e74aadd
|
add comment
|
2022-12-19 18:01:58 -08:00 |
|
Daan Leijen
|
8c89a77064
|
add default constructors to stl heap allocators
|
2022-12-19 17:25:49 -08:00 |
|
Daan
|
51e2be6647
|
Merge branch 'dev' into fix-const
|
2022-12-19 17:10:54 -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
|
ddc9841019
|
fix parameters for mi_track_free
|
2022-11-28 11:12:35 -08:00 |
|
Daan Leijen
|
10981ab122
|
add initial support for using mimalloc with address sanitizer support; use -DMI_ASAN=ON
|
2022-11-28 10:55:19 -08:00 |
|
Daan Leijen
|
76db72814c
|
fix unused parameter warning in clang
|
2022-11-28 10:54:45 -08:00 |
|
Daan Leijen
|
be2bc9e7ca
|
better attributes on new/delete overrides for Microsoft visual C++
|
2022-11-28 09:15:16 -08:00 |
|
Vadim Markovtsev
|
7da4a34dc1
|
Make "destroy" a compile-time constant + fix const allocator comparisons
|
2022-11-28 12:04:12 +01:00 |
|
Daan Leijen
|
c1299484de
|
refactor C++ STL allocator definitions (pr #651)
|
2022-11-27 13:00:15 -08:00 |
|
Vadim Markovtsev
|
4cdfc18888
|
Refactor C++ allocators to be DRY and protected
|
2022-11-24 15:13:19 +01:00 |
|
Daan Leijen
|
969d8bc5fe
|
make huge pages part of the regular page queues again
|
2022-11-22 20:56:35 -08:00 |
|
Daan Leijen
|
78690fbec2
|
fix proteced status in stl allocator (pr #625)#
|
2022-11-22 18:41:51 -08:00 |
|
Daan Leijen
|
9617f16df9
|
add STL allocators that use a specific heap and can destroy at the end; see original PR #625 by @vmarkovtsev
|
2022-11-22 16:58:32 -08:00 |
|
Daan Leijen
|
6e2b077b35
|
rename to heap_alloc_new and heap_alloc_new_n
|
2022-11-22 14:48:26 -08:00 |
|
Daan Leijen
|
34910664f1
|
add mi_heap_new_ and mi_heap_new_n
|
2022-11-22 14:46:23 -08:00 |
|
Daan Leijen
|
35d332141d
|
experimental destroy_on_exit option for statically linked mimalloc in a dynamically unloaded DLL
|
2022-11-18 11:00:23 -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
|
8834e128e8
|
improve mi_free codegen
|
2022-11-18 10:13:51 -08:00 |
|
daan
|
2479d168ad
|
decommit unused prefix of large aligned blocks
|
2022-11-07 16:41:40 -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
|
312ce6f916
|
bump version to v1.7.8 for further development
|
2022-11-07 11:36:44 -08:00 |
|
daan
|
2daec6c72f
|
add more comments
|
2022-11-07 11:23:04 -08:00 |
|
daan
|
1f12c3dd12
|
remove MI_ALIGNMENT_MAX and add comments
|
2022-11-07 11:13:42 -08:00 |
|
Daan
|
d3715132d1
|
move null ptr check
|
2022-11-06 09:52:54 -08:00 |
|
daan
|
4b91ff760d
|
initial working large alignment
|
2022-11-05 16:40:42 -07:00 |
|
daan
|
6a80fa3ac1
|
initial progress on removing alignment limit
|
2022-11-05 14:46:52 -07:00 |
|
daan
|
fe61be80bf
|
update to v1.7.7
|
2022-11-03 17:03:57 -07:00 |
|
daan
|
5ad06f9997
|
fix compiler warning on unused parameter (issues #251)
|
2022-11-02 09:50:49 -07:00 |
|
daan
|
e6bd41ba3f
|
update arena_id api
|
2022-11-01 16:26:17 -07:00 |
|
daan
|
fe2d5aa8ff
|
initial work on heaps restricted to specific arena's
|
2022-11-01 14:00:20 -07:00 |
|
daan
|
698bb2cae7
|
split out _mi_page_try_use_delayed_free for contention reduction (issue #630)
|
2022-10-31 11:01:01 -07:00 |
|
daan
|
7bef5f5f5b
|
reduce contention on the delayed_free lock; see issue #630
|
2022-10-31 10:34:55 -07:00 |
|
daan
|
886fd7d1b8
|
add cmakefile MI_VALGRIND option
|
2022-10-30 12:49:29 -07:00 |
|