Commit Graph

54 Commits

Author SHA1 Message Date
daanx
f6320bd3be merge from dev-abandon 2024-03-01 15:15:24 -08:00
daanx
c4f1f2e079 make reclaim tries a percentage of the abandoned count 2024-03-01 14:57:46 -08:00
daanx
e5d1cb3092 merge from dev-abandon 2024-03-01 10:56:43 -08:00
daanx
cf8f73098e start abandoned search randomized 2024-03-01 10:51:18 -08:00
daanx
8fb51aae4d merge from dev-abandon 2024-02-29 15:51:37 -08:00
daanx
64edbc92dd allow abandoned segment reclaim on a free 2024-02-29 14:58:59 -08:00
daanx
bdda13b880 track abandoned segments in an arena bitmap instead of with a list 2024-02-29 14:27:28 -08:00
daanx
c569b77b77 Merge branch 'dev' into dev-slice 2023-05-19 17:53:02 -07:00
daanx
e10467f673 add libc primitives to reduce dependencies 2023-05-19 11:57:10 -07:00
daanx
4a85f32f8e add libc.c source file 2023-05-19 10:24:39 -07:00
daanx
56c0a8025a merge from dev 2023-04-24 09:06:56 -07:00
daanx
632edf9996 rename was_zero/committed to initially_zero/committed 2023-04-24 09:03:43 -07:00
daanx
672e3dde8f Merge branch 'dev' into dev-slice 2023-04-18 19:19:51 -07:00
daanx
e6f3647556 track os alignment and base 2023-04-18 19:00:50 -07:00
daanx
fb07276d48 merge from dev 2023-04-18 17:33:01 -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
becf379ecd merge from dev-reset 2023-04-16 12:32:20 -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
b0104ef4fd merge from dev 2023-04-16 11:01:25 -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
e35e919ea4 remove segment-cache as it is superseded by better arena management 2023-04-13 15:37:54 -07:00
daanx
e6681f2d4b Merge branch 'dev-reset' into dev-slice-reset 2023-04-13 15:27:33 -07:00
daanx
48d0d0da9b fix thread data cache to use pure os alloc 2023-04-13 15:27:20 -07:00
daanx
991d04b2b1 merge from dev-reset 2023-04-13 13:37:56 -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
2715191f58 merge from dev-reset 2023-04-05 11:22:36 -07:00
daanx
cdefd5b69c fix stats for purging 2023-04-05 11:11:03 -07:00
daanx
c0c81a1b7b merge from dev-reset 2023-04-04 18:47:55 -07:00
daanx
cb0369452d use exponetially sized arenas 2023-04-04 17:54:33 -07:00
daanx
24034c997c merge from dev-reset 2023-04-04 16:44:07 -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
a836d233ff merge from dev-reset 2023-04-04 12:27:47 -07:00
daanx
449aad0635 wip: purgeable arenas; update option names and improve arena reservation 2023-04-04 12:15:57 -07:00
daanx
f5ab38f87b wip: use purge throughout for segments and arenas; more agressive delays 2023-04-03 15:06:09 -07:00
Daan Leijen
f4e006fa76 merge from dev-reset 2023-03-31 21:10:25 -07:00
Daan Leijen
595add5e3d wip: initial work on purgable arenas 2023-03-31 20:51:35 -07:00
Daan Leijen
391f8bbd72 merge from dev 2023-03-28 10:00:18 -07:00
Daan Leijen
176b6e6aa0 add mi_arena_is_os_allocated 2023-03-28 09:59:41 -07:00
Daan Leijen
4c681cffe0 merge from dev 2023-03-28 09:27:06 -07:00
Daan Leijen
9792b6364d move more prototypes in internal.h for safety 2023-03-28 09:25:32 -07:00
Daan Leijen
165b847051 improve segment_cache assertions 2023-03-23 16:11:38 -07:00
Daan Leijen
4a18fa3775 Merge branch 'dev-platform' into dev-slice-platform 2023-03-20 11:31:03 -07:00
Daan Leijen
65402836ae comments 2023-03-20 11:30:52 -07:00