Efficient Non-blocking Radix Trees

被引:0
|
作者
Velamuri, Varun [1 ]
机构
[1] Siemens Corp Res, Bangalore, Karnataka, India
来源
关键词
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
相关论文
共 50 条
  • [21] Efficient transformations of obstruction-free algorithms into non-blocking algorithms
    Taubenfeld, Gadi
    DISTRIBUTED COMPUTING, PROCEEDINGS, 2007, 4731 : 450 - 464
  • [22] An Efficient Self-Routing and Non-Blocking Interconnection Network on Chip
    Jain, Tripti
    Schneider, Klaus
    Jain, Ankesh
    TENTH INTERNATIONAL WORKSHOP ON NETWORK ON CHIP ARCHITECTURES (NOCARC 2017), 2017,
  • [23] Persistent Non-Blocking Binary Search Trees SupportingWait-Free Range Queries
    Fatourou, Panagiota
    Papavasileiou, Elias
    Ruppert, Eric
    SPAA'19: PROCEEDINGS OF THE 31ST ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURESS, 2019, 2019, : 275 - 286
  • [24] The Anchor Verifier for Blocking and Non-blocking Concurrent Software
    Flanagan, Cormac
    Freund, Stephen N.
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2020, 4 (04):
  • [25] An Adaptive Non-Blocking GVT Algorithm
    Mikida, Eric
    Kale, Laxmikant
    PROCEEDINGS OF THE 2019 ACM SIGSIM CONFERENCE ON PRINCIPLES OF ADVANCED DISCRETE SIMULATION (SIGSIM-PADS'19), 2019, : 25 - 36
  • [26] Non-blocking hashtables with open addressing
    Purcell, C
    Harris, T
    DISTRIBUTED COMPUTING, PROCEEDINGS, 2005, 3724 : 108 - 121
  • [27] Efficient Non-Blocking Event Management for Speculative Parallel Discrete Event Simulation
    Piccione, Andrea
    Pellegrini, Alessandro
    PROCEEDINGS OF THE 38TH ACM SIGSIM INTERNATIONAL CONFERENCE ON PRINCIPLES OF ADVANCED DISCRETE SIMULATION, ACM SIGSIM-PADS 2024, 2024, : 52 - 56
  • [28] Practical Non-blocking Unordered Lists
    Zhang, Kunlong
    Zhao, Yujiao
    Yang, Yajun
    Liu, Yujie
    Spear, Michael
    DISTRIBUTED COMPUTING, 2013, 8205 : 239 - 253
  • [29] REARRANGEABLE AND NON-BLOCKING SWITCHING NETWORKS
    PIPPENGER, N
    JOURNAL OF COMPUTER AND SYSTEM SCIENCES, 1978, 17 (02) : 145 - 162
  • [30] A STUDY OF NON-BLOCKING SWITCHING NETWORKS
    CLOS, C
    BELL SYSTEM TECHNICAL JOURNAL, 1953, 32 (02): : 406 - 424