Commit graph

136 commits

Author SHA1 Message Date
daan
741a80256d merge from dev-exp 2019-11-11 14:51:16 -08:00
daan
2bb058bd25 remove cache_reset parameter 2019-11-11 14:44:32 -08:00
daan
534e1e39ef allow allocation in committed regions even if not requested 2019-11-11 14:42:29 -08:00
daan
93a6463383 only allow commit delay for small and medium objects 2019-11-11 14:16:45 -08:00
daan
181bef382c merge dev-exp 2019-11-10 11:39:53 -08:00
Daan Leijen
b04206a9d3 add os cache to arena 2019-11-10 10:10:10 -08:00
Daan Leijen
9f08ddd0d0 refactor regions; add commit tracking on a segment basis 2019-11-09 19:30:53 -08:00
daan
829fd872f4 initial delay slots 2019-11-04 11:48:41 -08:00
daan
2b005addd3 merge from dev-exp 2019-11-03 13:37:03 -08:00
daan
9d6a5acb22 fix unix build warnings 2019-11-03 13:34:54 -08:00
daan
bbca1cd8d9 allow decommit by default 2019-10-31 12:42:23 -07:00
daan
6695f8ae91 add allow_decommit option 2019-10-31 10:59:50 -07:00
daan
f7d2c45af3 initial experiment with fixed memory arena and sliced segments 2019-10-31 00:40:41 -07:00
daan
c7ec30ae25 fix secure mode 2019-10-30 15:36:13 -07:00
daan
4b15e2ed97 merge from dev 2019-10-17 18:24:35 -07:00
daan
60efb62155 make secure a build option only 2019-09-17 17:31:42 -07:00
daan
e73982c4cf better alignment for large and huge pages inside a segment 2019-09-04 18:42:37 -07:00
daan
d1bd1644d5 support zero-initialized memory detection 2019-09-02 13:16:52 -07:00
daan
4b39c0b06e fix eager_delay test, and allow large OS pages even without eager commit enabled 2019-08-29 07:55:57 -07:00
daan
154fd471a1 fix comparison warning 2019-08-29 07:48:15 -07:00
daan
d381fcd9fa rename lazy to eager_commit_delay 2019-08-28 12:09:23 -07:00
daan
9af51506a6 track commit and is_large status more precisely 2019-08-28 11:58:30 -07:00
daan
db8d443ae6 track more precisely if memory is fixed or committed 2019-08-26 22:45:26 -07:00
daan
25dca38ef9 merge from dev-win 2019-08-26 12:47:16 -07:00
daan
e8664001f7 Use standard _Atomic declarations and clean up atomic operations 2019-08-25 22:59:12 -07:00
daan
b0e38d5697 merge from dev-win 2019-08-25 13:12:57 -07:00
daan
b86c851cca put segment cache behind an option and disable by default 2019-08-25 12:35:14 -07:00
daan
a431d80fc3 better object sizes for large objects 2019-08-25 10:20:03 -07:00
daan
19f473e49a merge from dev; free huge objects directly and keep them abandoned 2019-08-24 16:16:09 -07:00
daan
23812cc0ac do not keep a queue of huge pages and free them directly 2019-08-24 15:45:14 -07:00
daan
6f5492cef8 enable initial lazy commit and optional decommit to reduce commit charge with many threads 2019-08-24 15:00:55 -07:00
daan
612b2cc9b7 clean up segment slice handling 2019-08-24 12:20:32 -07:00
daan
082f012a91 merge from dev-win 2019-08-23 21:56:28 -07:00
daan
6c6fcad242 remove threadid from pages and keep page flags separate (cherry picked) 2019-08-23 21:42:24 -07:00
daan
15552eba79 ensure volatile declaration for abandoned_next field 2019-08-23 21:39:27 -07:00
daan
acde83543f remove threadid from pages and keep page flags separate 2019-08-23 14:08:00 -07:00
daan
b511309709 ensure volatile declaration for abandoned_next field 2019-08-23 13:44:43 -07:00
daan
5c912f16d4 merge from remote 2019-08-21 11:35:09 -07:00
daan
a3c4b1c95b merge from dev-win 2019-08-21 11:18:05 -07:00
Daan Leijen
12257e5bc1 fix thread-id reset on page abandonment 2019-08-21 08:09:28 -07:00
Daan Leijen
cc6d14c55b fix thread-id reset on page abandonment 2019-08-21 08:06:40 -07:00
daan
cd52d0a6d9 merge dev-win 2019-08-20 17:31:46 -07:00
Daan Leijen
fb12f298ca merge from dev-win, fix small object size check 2019-08-16 19:14:08 -07:00
Daan Leijen
069c26dbab fix small object size check in mi_segment_page_alloc 2019-08-16 18:40:30 -07:00
Daan Leijen
91497e8d2d whitespace and warning fix 2019-08-16 17:49:49 -07:00
daan
a0b4ac2f66 new segment allocation; good results with Qas service 2019-08-15 23:19:52 -07:00
daan
f2ba95bc64 first working version of new segment allocation 2019-08-15 22:00:42 -07:00
daan
6ee248b012 wip: fixing bugs in new segment allocation 2019-08-15 14:40:15 -07:00
daan
f2bafbc57f wip: new segment allocation 2019-08-15 11:49:56 -07:00
daan
bbd81bbbd1 wip: new segment allocation with flexible large objects 2019-08-15 00:46:45 -07:00