2841 Commits

Author SHA1 Message Date
joaquintides
5f7f6be571 included missing header 2024-10-21 12:43:20 +02:00
joaquintides
a4a5a3e127 fixed trivial bug in unused function 2024-03-14 09:34:38 +01:00
joaquintides
2f63dc4dd8 implmented element-level ll/sc access 2024-03-08 20:08:33 +01:00
joaquintides
a08e86d985 used two-stage ll/sc 2024-02-14 20:18:17 +01:00
joaquintides
b22c09700d fixed erase_if on sentinels, implemented one-access non-constant visitation 2024-02-12 13:41:20 +01:00
joaquintides
bad10788ff strengthened erase, relaxed metadata ops 2024-02-12 12:02:07 +01:00
joaquintides
a444cfb1ae implemented latch-free element save 2024-02-10 20:51:09 +01:00
joaquintides
db779b949e added missing synchronization 2024-02-09 19:40:45 +01:00
joaquintides
83ac0d59cc weakened many atomic ops 2024-02-09 19:08:33 +01:00
joaquintides
a05b55270a reenabled info logging 2024-02-09 12:43:04 +01:00
joaquintides
77a0f6bb74 implemented latch-free element load 2024-02-09 12:33:41 +01:00
joaquintides
687a446784 used parlay epoch framework 2024-02-03 17:37:08 +01:00
joaquintides
1c48ce8194 removed node recycling 2024-02-02 19:09:39 +01:00
joaquintides
1e9970d150 reverted 2024-02-02 12:07:58 +01:00
joaquintides
f10a9ab76d supressed wasted nodes report, relaxed metadata ops 2024-02-02 11:31:13 +01:00
joaquintides
83a81d6b1d relaxed epoch bumping 2024-02-01 20:04:00 +01:00
joaquintides
9b5545e30c avoided unnecessary epoch bumps 2024-01-29 13:12:47 +01:00
joaquintides
9e8d69c08a made garbage vectors bigger 2024-01-29 11:53:38 +01:00
joaquintides
99cee83c57 monitored wasted nodes 2024-01-27 11:53:48 +01:00
joaquintides
363ef61cf0 monitor garbage vector full condition 2024-01-26 11:15:28 +01:00
joaquintides
b67aaf3558 cacheline-aligned garbage vectors 2024-01-22 09:50:23 +01:00
joaquintides
1bae403d58 added node recycling 2024-01-21 18:53:33 +01:00
joaquintides
4021c276fe switched to node-based layout 2024-01-20 11:52:19 +01:00
joaquintides
d7f7792ee3 reduced contention on rehash_if_full, reduced min_for_epoch_bump 2024-01-13 13:12:07 +01:00
joaquintides
1d7165f759 incremented min_for_epoch_bump 2024-01-08 18:52:15 +01:00
joaquintides
25fe5948a6 sped up gc frequency 2024-01-08 17:52:52 +01:00
joaquintides
f55e6ac290 made gc thread local 2024-01-08 11:31:39 +01:00
joaquintides
78aaa8ea51 re-strengthened atomic ops, halved gc frequency again 2024-01-03 20:50:17 +01:00
joaquintides
07370c16e6 halved gc frequency 2024-01-03 17:46:43 +01:00
joaquintides
679faa51a9 re-enabled gc 2024-01-03 13:24:14 +01:00
joaquintides
628df0f500 disabled is_occupied 2024-01-03 12:48:37 +01:00
joaquintides
16eec4a9a7 relaxed atomic ops 2024-01-03 11:55:00 +01:00
joaquintides
3310fe061c temporarily disabled gc 2024-01-02 19:43:43 +01:00
joaquintides
8d3c924724 increased gc frequency 2024-01-02 12:01:17 +01:00
joaquintides
d576363d09 streamlined update_size_ctrl, printed concurrent_table stats 2024-01-02 10:42:01 +01:00
joaquintides
0aab436707 protected visitation against spurious insertion sentinels 2023-12-27 13:34:34 +01:00
joaquintides
71e9d35ab2 made latch-free unprotected_norehash_emplace_or_visit exception safe 2023-12-26 19:08:51 +01:00
joaquintides
f3f01e33f4 fined-tuned gc dimensions 2023-12-26 18:01:36 +01:00
joaquintides
c861b082b3 re-strengthened atomic_integral (insert-visit sync) 2023-12-26 10:01:16 +01:00
joaquintides
1418b96fb2 capped size_ctrl.ml in update_size_ctrl 2023-12-25 13:02:57 +01:00
joaquintides
a68b92d1cd * relaxed atomic_integral
* re-enabled gc
* optimized mco calculation
* added heuristic to *reduce* mco at insertion time
* fixed signedness bug at update_size_ctrl
2023-12-25 12:48:04 +01:00
joaquintides
71fb7636c5 prevented gc overcall, temporarily disabled gc 2023-12-20 19:02:49 +01:00
joaquintides
5808607c4f reverted 2023-12-19 12:42:11 +01:00
joaquintides
e91f743530 temporarily restricted gc to one designated thread 2023-12-19 12:22:11 +01:00
joaquintides
13d6cc0a33 reduced insertion contention zone 2023-12-19 11:34:35 +01:00
joaquintides
4cd3cd5ac2 used pointers rather than positions in the garbage collector 2023-12-18 13:38:57 +01:00
joaquintides
b55a13c6b6 simplified erasure 2023-12-18 13:25:14 +01:00
joaquintides
35138450c8 desynced size control 2023-12-16 11:55:23 +01:00
joaquintides
ca7120d928 removed prior experiments and optimized insertion via two-step counter 2023-12-14 12:36:04 +01:00
joaquintides
b866bba144 removed counter-based protection on insertion 2023-12-13 13:51:05 +01:00