Efficient Non-blocking Radix Trees

被引:0
作者
Velamuri, Varun [1 ]
机构
[1] Siemens Corp Res, Bangalore, Karnataka, India
来源
EURO-PAR 2017: PARALLEL PROCESSING | 2017年 / 10417卷
关键词
Concurrent; Non-blocking; Lock-free; Radix tree; Trie; Performance;
D O I
10.1007/978-3-319-64203-1_41
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Radix trees belong to the class of trie data structures, used for storing both sets and dictionaries in a way optimized for space and lookup. In this work, we present an efficient non-blocking implementation of radix tree data structure that can be configured for arbitrary alphabet sizes. Our algorithm implements a linearizable set with contains, insert and remove operations and uses single word compare-and-swap (CAS) instruction for synchronization. We extend the idea of marking the child edges instead of nodes to improve the parallel performance of the data structure. Experimental evaluation indicates that our implementation out-performs other known lock-free implementations of trie and binary search tree data structures using CAS by more than 100% under heavy contention.
引用
收藏
页码:565 / 579
页数:15
相关论文
共 12 条
  • [1] Brown T., SOURCE CODE NONBLOCK
  • [2] Brown T, 2011, LECT NOTES COMPUT SC, V7109, P207, DOI 10.1007/978-3-642-25873-2_15
  • [3] Corbet J, 2006, LINUX WEEKLY NEWS
  • [4] Non-blocking Binary Search Trees
    Ellen, Faith
    Fatourou, Panagiota
    Ruppert, Eric
    van Breugel, Franck
    [J]. PODC 2010: PROCEEDINGS OF THE 2010 ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING, 2010, : 131 - 140
  • [5] Gramoli V, 2015, ACM SIGPLAN NOTICES, V50, P1, DOI [10.1145/2858788.2688501, 10.1145/2688500.2688501]
  • [6] MiBench: A free, commercially representative embedded benchmark suite
    Guthaus, MR
    Ringenberg, JS
    Ernst, D
    Austin, TM
    Mudge, T
    Brown, RB
    [J]. WWC-4: IEEE INTERNATIONAL WORKSHOP ON WORKLOAD CHARACTERIZATION, 2001, : 3 - 14
  • [7] Natarajan A, 2014, ACM SIGPLAN NOTICES, V49, P317, DOI [10.1145/2555243.2555256, 10.1145/2692916.2555256]
  • [8] Valgrind: A framework for heavyweight dynamic binary instrumentation
    Nethercote, Nicholas
    Seward, Julian
    [J]. ACM SIGPLAN NOTICES, 2007, 42 (06) : 89 - 100
  • [9] Concurrent Tries with Efficient Non-Blocking Snapshots
    Prokopec, Aleksandar
    Bronson, Nathan G.
    Bagwell, Phil
    Odersky, Martin
    [J]. ACM SIGPLAN NOTICES, 2012, 47 (08) : 151 - 160
  • [10] Repetti T.J, 2015, CASE STUDY OPTIMIZIN