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 条
  • [31] Modular Verification of a Non-Blocking Stack
    Parkinson, Matthew
    Bornat, Richard
    O'Heam, Peter
    CONFERENCE RECORD OF POPL 2007: THE 34TH ACM SIGPLAN SIGACT SYMPOSIUM ON PRINCIPLES OF PROGAMMING LANGUAGES, 2007, : 297 - 302
  • [32] Non-Blocking Conditions for EGS Networks
    Busi, Italo
    Pattavina, Achille
    IEEE COMMUNICATIONS LETTERS, 2010, 14 (06) : 572 - 574
  • [33] Design of non-blocking permutation generator
    Lee, J
    Jung, J
    2002 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS, VOLS 1-5, CONFERENCE PROCEEDINGS, 2002, : 2090 - 2094
  • [34] Generalized non-blocking copy networks
    To, PP
    Lee, TT
    ICC'97: 1997 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS - TOWARDS THE KNOWLEDGE MILLENNIUM, CONFERENCE RECORD - VOLS 1-3, 1997, : 467 - 471
  • [35] Modular verification of a non-blocking stack
    Parkinson, Matthew
    Bornat, Richard
    O'Hearn, Peter
    ACM SIGPLAN NOTICES, 2007, 42 (01) : 297 - 302
  • [36] A case for non-blocking collective operations
    Hoefler, Torsten
    Squyres, Jeffrey M.
    Rehm, Wolfgang
    Lumsdaine, Andrew
    FRONTIERS OF HIGH PERFORMANCE COMPUTING AND NETWORKING - ISPA 2006 WORKSHOPS, PROCEEDINGS, 2006, 4331 : 155 - +
  • [37] Efficient non-blocking top-k query processing in distributed networks
    Deng, Bo
    Jia, Yan
    Yang, Shuqiang
    DATABASE SYSTEMS FOR ADVANCED APPLICATIONS, PROCEEDINGS, 2006, 3882 : 880 - 889
  • [38] Grasping the Gap Between Blocking and Non-Blocking Transactional Memories
    Kuznetsov, Petr
    Ravi, Srivatsan
    DISTRIBUTED COMPUTING (DISC 2015), 2015, 9363 : 232 - 247
  • [39] Grasping the gap between blocking and non-blocking transactional memories
    Kuznetsov, Petr
    Ravi, Srivatsan
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2017, 101 : 1 - 16
  • [40] A non-blocking parallel spatial join algorithm
    Luo, G
    Naughton, JF
    Ellmann, CJ
    18TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING, PROCEEDINGS, 2002, : 697 - 705