2017 26th International Conference on Parallel Architectures and Compilation Techniques (PACT) 2017
DOI: 10.1109/pact.2017.17
|View full text |Cite
|
Sign up to set email alerts
|

RCU-HTM: Combining RCU with HTM to Implement Highly Efficient Concurrent Binary Search Trees

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
5
0

Year Published

2018
2018
2021
2021

Publication Types

Select...
3
2
1

Relationship

2
4

Authors

Journals

citations
Cited by 10 publications
(5 citation statements)
references
References 22 publications
0
5
0
Order By: Relevance
“…We use an internal AVL tree as an example, but the same procedure can be used for any type of ST. While the application of RCU‐HTM on binary STs has been presented in Reference 23, in this work we showcase the universality of the technique and its efficacy and applicability on any type of search tree. We implement RCU‐HTM versions of 12 types of STs, showcasing its applicability. We implement three unbalanced binary STs (internal, partially external, and external), six balanced binary STs (internal, partially external, and external versions of both AVL and Red‐Black trees), 1 relaxed‐balanced partially external AVL ST, a B+‐tree (i.e., the external version of a B‐tree) and an (a‐b)‐tree (i.e., a relaxed‐balanced variant of a B+‐tree). We evaluate RCU‐HTM STs and compare their performance with several state‐of‐the‐art implementations that use four different synchronization methods, namely, locks, atomic operations, RCU and HTM.…”
Section: Introductionmentioning
confidence: 67%
“…We use an internal AVL tree as an example, but the same procedure can be used for any type of ST. While the application of RCU‐HTM on binary STs has been presented in Reference 23, in this work we showcase the universality of the technique and its efficacy and applicability on any type of search tree. We implement RCU‐HTM versions of 12 types of STs, showcasing its applicability. We implement three unbalanced binary STs (internal, partially external, and external), six balanced binary STs (internal, partially external, and external versions of both AVL and Red‐Black trees), 1 relaxed‐balanced partially external AVL ST, a B+‐tree (i.e., the external version of a B‐tree) and an (a‐b)‐tree (i.e., a relaxed‐balanced variant of a B+‐tree). We evaluate RCU‐HTM STs and compare their performance with several state‐of‐the‐art implementations that use four different synchronization methods, namely, locks, atomic operations, RCU and HTM.…”
Section: Introductionmentioning
confidence: 67%
“…First, we evaluate pointer chasing workloads, i.e., lock-based concurrent data structures from the ASCYLIB library [31], used as key-value sets. In ASCYLIB's Binary Search Tree (BST) [37], the lock memory requests are only 0.1% of the total memory requests, so we also evaluate an external fine-grained locking BST from [130]. Data structures are initialized with a fixed size and statically partitioned across NDP units, except for BSTs, which are distributed randomly.…”
Section: Ndp Coresmentioning
confidence: 99%
“…Stack [31] 100K -100% push Queue [31,104] 100K -100% pop Array Map [31,56] 10 -100% lookup Priority Queue [11,31,118] 20K -100% deleteMin Skip List [31,118] 5K -100% deletion Hash Table [31,63] 1K -100% lookup Linked List [31,63] 20K -100% lookup Binary Search Tree Fine-Grained (BST_FG) [130] 20K -100% lookup Binary Search Tree Drachsler (BST_Drachsler) [31,37] 10K -100% deletion…”
Section: Data Structure Configurationmentioning
confidence: 99%
“…Given we did not implement opt-s-tree in HTM due to it requiring lightweight reads, one should be able to combine the approaches of COP and s-tree for improved performance. Siakavaras et al 50 applied Read-Copy-Update (RCU) techniques to context of AVL trees in HTM by having update operations create a copy of the section of the tree they modify, and then linking in the modified tree while keeping the original nodes in the read set to prevent conflicts. This allows read operations to be performed entirely without synchronization.…”
Section: Related Workmentioning
confidence: 99%
“…Different to s-tree, modifications due to rotations may still result in large transactions resulting in a trade-off between fast reads and a possible increase in conflicts. Note that both the works of Avni and Kuszmaul 49 and Siakavaras et al 50 relied on the strong memory model semantics of Intel's HTM between transactional and non-transactional accesses, while the non-optimized version of s-tree does not.…”
Section: Related Workmentioning
confidence: 99%