Commit graph

213 commits

Author SHA1 Message Date
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
daan
442bad9190 add good-fit for allowing larger blocks in smaller segments 2019-08-09 11:18:38 -07:00
daan
5e56b40fe6 improve page flags handling 2019-08-08 17:18:49 -07:00
daan
6596e970a5 move in_full and has_aligned into page threadid for a single test in mi_free 2019-08-08 15:23:18 -07:00
daan
55778d2fe4 improved stats 2019-08-08 11:36:13 -07:00
daan
189ad0f81d small optimizations, use bitwise aligne 2019-07-23 15:00:13 -07:00
daan
84a292538c merge with medium pages 2019-07-12 20:39:29 -07:00
daan
a927c07de9 merge medium pages 2019-07-12 20:27:56 -07:00
daan
42cf5e1580 reintroduce support for medium size pages 2019-07-12 20:11:39 -07:00
daan
8a6b474fa0 merge from dev 2019-07-11 16:32:11 -07:00
daan
a932e43650 experiment with larger small pages 2019-07-11 15:44:37 -07:00
daan
f844665c9f merge from dev-win 2019-07-10 22:57:37 -07:00
daan
da0fb1e53f merge dev-win 2019-07-10 20:50:32 -07:00
daan
6deea16d2d add segment count to internal statistics 2019-07-10 19:54:46 -07:00
daan
ef4359b272 fix abondoned segment counter, and free list adding 2019-07-10 16:33:49 -07:00
daan
b80b0837ab Merge branch 'dev-win' into dev-exp 2019-07-10 07:50:26 -07:00
daan
5b6f4ecc12 fix compilation warning 2019-07-10 07:50:04 -07:00
daan
224951695a enable non eager commit 2019-07-10 07:24:56 -07:00
daan
46a9e51f74 enable non eager-commit flag 2019-07-10 07:17:21 -07:00
daan
d8c47bfed2 ensure commit of reused cached segments 2019-07-09 23:37:59 -07:00
daan
3192ca4682 merge with dev-win 2019-07-09 23:34:17 -07:00
daan
3009a7b1fe support non- eager_commit; on larson reduces commit charge 10x, but other benchmarks often see no improvement 2019-07-09 21:34:56 -07:00
daan
ad9db3a633 fix leak of huge segments in caches 2019-07-09 20:35:07 -07:00
daan
0314373d93 add reset_decommit, reset_discard options; maintain more statistics 2019-07-09 20:24:00 -07:00