Commit graph

61 commits

Author SHA1 Message Date
daanx
e43eb1f191 nicer debug output 2024-12-12 20:22:24 -08:00
daanx
df956c4a17 use thread spacing for reclaim as well 2024-12-12 17:22:41 -08:00
daanx
98879ac8bc use thread spacing for reclaim as well 2024-12-12 17:22:00 -08:00
daanx
118bd8c97f space out threads when searching for free pages 2024-12-12 16:37:31 -08:00
daanx
94ce342ea9 maintain pages set for arenas; improve arena load/unload 2024-12-11 22:06:25 -08:00
daanx
aed76f2910 wip: allow arena (re)loading 2024-12-11 20:34:23 -08:00
daanx
d5ed0cc71e various improvements 2024-12-09 14:31:43 -08:00
daanx
bf2f2a8bf4 fix bug where only the first chunkmap field would be considered 2024-12-08 18:48:56 -08:00
daanx
88990cec2d merge from dev 2024-12-08 18:27:05 -08:00
daanx
c8607a8d01 remove os_tld and stats parameters to os interface 2024-12-08 17:56:13 -08:00
daanx
d0c86f3f0e specialize bitmap operations for common page sizes 2024-12-07 16:26:07 -08:00
daanx
bf42759d97 check heaptag on abandonded page allocation 2024-12-07 15:13:17 -08:00
daanx
6b52b19e3b arch specific optimizations 2024-12-07 15:02:27 -08:00
daanx
9631b0d4d2 revise visiting arenas, better bitmap scanning 2024-12-07 14:03:51 -08:00
daanx
bf9a2ddb59 compile for 32-bit as well 2024-12-06 23:07:10 -08:00
daanx
659a9dd51d fix page info size and order; atomic page flags 2024-12-06 22:37:59 -08:00
daanx
5a5943ad33 record max_clear bit 2024-12-06 21:03:33 -08:00
daanx
61436a92b9 working simplified version without pairmaps and bitmap epoch 2024-12-06 15:26:01 -08:00
daanx
ec9c61c066 initial no more pairmap 2024-12-06 14:53:24 -08:00
daanx
7443ee317e tune free-ing and abandoning 2024-12-05 17:00:23 -08:00
daanx
bc67be4d79 small adjustments 2024-12-04 21:40:57 -08:00
daanx
afe9089152 more documentation; better pairmap find_and_set_to_busy, busy flag is now 0x10 2024-12-04 19:15:55 -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
8d9c725482 increase MAX_OBJ_SLICES to a full chunk (32MiB) 2024-12-03 17:27:43 -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
d96c134566 wip: initial version with eager abandonment 2024-12-02 16:01:45 -08:00
daanx
69ac69abac wip: use epoch with 512bit chunks 2024-12-02 00:31:08 -08:00
daanx
2f789aae9a wip: cannot compile 2024-12-01 16:26:59 -08:00
daanx
9ebe941ce0 first version that passes the make test 2024-11-30 20:21:32 -08:00
daanx
f8d04dc2bc compile with clang and gcc 2024-11-30 12:41:11 -08:00
daanx
309fc26b4b wip: add generic find_and_xset 2024-11-30 12:00: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
e0152ab82f wip: update any_set 2024-11-29 16:58:52 -08:00
daanx
68f5fb2f4b wip: further progress on segment removal; arena allocation 2024-11-29 15:08:06 -08:00
daanx
46afcbe06c wip: further progress on segment removal; arena allocation 2024-11-29 14:28:34 -08:00
daanx
441d4fed9f wip: further progress on removing segments 2024-11-29 10:40:18 -08:00
daanx
71cfa45e76 wip: initial work on mimalloc3 without segments 2024-11-28 19:31:04 -08:00
Daan
ce783df58f fix spelling errors (pr #710) 2024-04-20 17:18:09 -07:00
Daan
027b22aaf2 add arena stats 2024-03-03 09:37:46 -08:00
daanx
2f878354f4 add arena contains check for valid pointers 2023-04-18 14:13:55 -07:00
daanx
10a6b303be review bitmap.c 2023-04-18 13:34:23 -07:00
daanx
a5b47fe17b Merge branch 'dev' into dev-reset 2023-04-03 12:46:00 -07:00
Daan Leijen
cc4ed36c7e prepare for new release 2023-04-03 12:30:18 -07:00
Daan Leijen
595add5e3d wip: initial work on purgable arenas 2023-03-31 20:51:35 -07:00
Daan Leijen
f58357548c restructure header files 2023-03-20 10:37:39 -07:00