Commit graph

278 commits

Author SHA1 Message Date
daanx
25f84f5fd1 merge from dev-steal 2024-11-25 19:17:25 -08:00
daanx
7673aa2517 ensure forced abandoned pages can be accessed after free 2024-11-25 18:41:57 -08:00
daanx
829ae9fdc3 merge from dev-steal 2024-11-25 16:59:15 -08:00
daanx
9b7ac9a1a6 clean up candidate search; add mi_collect_reduce 2024-11-25 16:58:02 -08:00
daanx
ea3ac0750e merge from dev-steal 2024-11-18 15:08:17 -08:00
daanx
71fec8caf5 add target_segments_per_thread option 2024-11-18 15:05:22 -08:00
daanx
0fa99d41fc merge from dev-slice 2024-11-18 11:13:29 -08:00
daanx
edc7ddd37c Merge branch 'dev' into dev-steal 2024-11-18 11:05:31 -08:00
daanx
54ee4e7632 merge from dev 2024-11-17 23:29:21 -08:00
daanx
498c92e348 update guarded implementation to use block tags 2024-11-16 21:15:50 -08:00
daanx
723869014f add ability to abandon segments after a threshold 2024-10-09 21:24:20 -07:00
Daan Leijen
4913c2c65b Merge branch 'dev-steal' into dev-slice-steal 2024-10-09 15:16:13 -07:00
Daan Leijen
a7e7cbac89 use enqueue_from_full, and keep inserting at the end 2024-10-09 15:15:57 -07:00
daanx
428e3b9ee0 Merge branch 'dev-steal' into dev-slice-steal 2024-10-09 15:05:48 -07:00
daanx
0316cb1d88 reduce page search to 8 2024-10-09 15:05:35 -07:00
daanx
933ac5c14c Merge branch 'dev-steal' into dev-slice-steal 2024-10-09 14:41:25 -07:00
daanx
cbc0e19809 revert back to unfull at the end of queues as it slows down some benchmarks (like alloc-test1) 2024-10-09 14:41:12 -07:00
daanx
03fbaedec5 Merge branch 'dev-steal' into dev-slice-steal 2024-10-09 14:35:49 -07:00
daanx
96877159c2 insert full pages that became unfull, at the start of the page queue to increase potential reuse 2024-10-09 14:35:33 -07:00
daanx
a05b5ab0a1 search N pages for a best fit 2024-10-09 14:21:50 -07:00
daanx
b3d502179a Merge branch 'dev-steal' into dev-slice-steal 2024-10-09 11:28:33 -07:00
daanx
ffa8bce581 prefer pages that do not expand 2024-10-09 11:27:57 -07:00
Daan Leijen
1ab67d44c8 merge from dev-guarded 2024-08-20 12:57:20 -07:00
daanx
0c19eb60cf initial working guarded pages 2024-08-19 21:21:40 -07:00
daanx
76b0873ce2 fix asan tracking by explicitly setting memory to undefined before a free 2024-06-03 20:28:47 -07:00
Daan
e8206e9f6f merge from dev improved aligned allocation 2024-05-11 07:08:48 -07:00
Daan
7128db7bba simplified aligned allocation; improved codegen; fix mi_good_size with padding included; add MI_MAX_ALIGN_GUARANTEE 2024-05-11 06:43:52 -07:00
Daan
79aa5bbb7a Merge branch 'dev' into dev-slice 2024-04-20 19:59:19 -07:00
Daan
88aa84727d fix spelling errors (pr #710) 2024-04-20 17:12:09 -07:00
Daan
78418b3d24 fix overflow of slice count, PR #877 2024-04-19 10:03:14 -07:00
Daan
5050b63038 define MI_MAX_ALLOC_SIZE as PTRDIFF_MAX (related to #877) 2024-04-19 09:53:21 -07:00
Daan
bcf975c028 merge from dev 2024-03-25 17:00:06 -07:00
Daan
6b4f3f6223 further ASAN fix 2024-03-25 16:37:46 -07:00
Daan Leijen
c1d7d7f563 merge from dev 2024-03-25 15:32:56 -07:00
Daan Leijen
0022802177 commend and make at least 8 tries for reclaim 2024-03-25 15:25:04 -07:00
Daan Leijen
cc8d89a085 update comments 2024-03-25 07:35:49 -07:00
Daan Leijen
af3f2f9168 fix assertions and warnings on gcc 2024-03-24 22:32:32 -07:00
Daan Leijen
3c85983a35 merge from dev with new page fields (block_size and is_huge) 2024-03-24 22:12:33 -07:00
daanx
006ae2d055 add is_huge page flag to ensure the right page queue is returned (see #868) 2024-03-24 17:07:28 -07:00
Daan Leijen
b5665f0eec add full block_size and page_start to page info 2024-03-24 14:17:17 -07:00
Daan Leijen
6688b45fbd rename MI_ALIGNMENT_MAX to MI_BLOCK_ALIGNMENT_MAX for clarity 2024-03-24 10:57:02 -07:00
Daan Leijen
6399dbdc30 merge from dev (new free.c) 2024-03-24 09:56:26 -07:00
Daan Leijen
ea6137a501 use MI_MAX_ALIGN_SIZE to adjust block_offset_adj 2024-03-24 09:01:58 -07:00
Daan Leijen
4f809aadb7 use free field for expiration instead of used 2024-03-24 08:29:56 -07:00
Daan Leijen
60c4a0fe56 fix compilation warnings for new uint16_t size for used field 2024-03-24 08:10:35 -07:00
Daan
cc809b0cd4 take 16 bits from used field to create a fast unalign path 2024-03-18 01:40:03 -07:00
daanx
063f25ba11 merge from dev 2023-04-22 10:20:24 -07:00
daanx
2a6352fef2 add further zero initialization checks 2023-04-22 10:18:57 -07:00
daanx
eff7940f30 merge from dev 2023-04-18 17:54:07 -07:00
daanx
173382ef60 is_zero review; fix asan check 2023-04-18 17:52:16 -07:00