Nonblocking Data Structures for Distributed-Memory Machines: Stacks as an Example

被引:3
|
作者
Diep, Thanh-Dang [1 ]
Furlinger, Karl [1 ]
机构
[1] Ludwig Maximilians Univ LMU Munich, MNM Team, Comp Sci Dept, Oettingenstr 67, D-80538 Munich, Germany
来源
2021 29TH EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED AND NETWORK-BASED PROCESSING (PDP 2021) | 2021年
关键词
non blocking data structures; distributed-memory machines; nonblocking stacks; global memory reclamation; ABA problem; SYNCHRONIZATION; ALGORITHMS; QUEUES;
D O I
10.1109/PDP52278.2021.00012
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Nonblocking data structures are an essential part of man) parallel applications in that they can help to improve fault tolerance and performance. Although there are scores of nonblocking data structures, such as stacks, queues, double-ended queues (deques), lists, widely used in practice. most of them arc designed to he used on shared-memory machines only. and cannot be used in a distributed-memory setting. Several recent studies focus on the development of novel tailor-made distributed nonblocking data structures and omit the potential for adapting a great wealth of existing shared-memory nonblocking ones for the distributed-memory case. Hence, we propose a general approach to bridge the gap between most existing nonblocking data structures and distributed-memory machines in this work. Several challenges, such as safe memory reclamation and solving the ABA problem, must he overcome. In this paper, we present a global memory management scheme to address these issues. The scheme takes advantage of hazard pointers which are widely used to tackle the problems in shared-memory environments. To demonstrate our general approach, we take stacks as a typical example of nonblocking data structures. This work also provides a survey of well-known nonblocking stack algorithms along with our analysis and evaluation in distributed-memory environments. Moreover, this paper depicts how to improve performance of a stack algorithm I making use of node Information.
引用
收藏
页码:9 / 17
页数:9
相关论文
共 50 条
  • [41] MOLECULAR-DYNAMICS SIMULATIONS OF COULOMBIC SYSTEMS ON DISTRIBUTED-MEMORY MIMD MACHINES
    KALIA, RK
    DELEEUW, S
    NAKANO, A
    VASHISHTA, P
    COMPUTER PHYSICS COMMUNICATIONS, 1993, 74 (03) : 316 - 326
  • [42] PARALLEL ALGORITHMS FOR MOLECULAR-DYNAMICS SIMULATIONS ON DISTRIBUTED-MEMORY MIMD MACHINES
    KALIA, RK
    NAKANO, A
    GREENWELL, DL
    VASHISHTA, P
    DELEEUW, SW
    SUPERCOMPUTER, 1993, 10 (02): : 11 - 25
  • [43] Efficient Breadth-First Search on Massively Parallel and Distributed-Memory Machines
    Ueno K.
    Suzumura T.
    Maruyama N.
    Fujisawa K.
    Matsuoka S.
    Data Science and Engineering, 2017, 2 (1) : 22 - 35
  • [44] Parallel progressive rendering of animation sequences at interactive rates on distributed-memory machines
    Reisman, A
    Gotsman, C
    Schuster, A
    1997 IEEE SYMPOSIUM ON PARALLEL RENDERING (PRS '97), PROCEEDINGS, 1997, : 39 - 47
  • [45] RUNTIME AND LANGUAGE SUPPORT FOR COMPILING ADAPTIVE IRREGULAR PROGRAMS ON DISTRIBUTED-MEMORY MACHINES
    HWANG, YS
    MOON, B
    SHARMA, SD
    PONNUSAMY, R
    DAS, R
    SALTZ, JH
    SOFTWARE-PRACTICE & EXPERIENCE, 1995, 25 (06): : 597 - 621
  • [46] COMPILING FOR DISTRIBUTED-MEMORY ARCHITECTURES
    ROGERS, A
    PINGALI, K
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1994, 5 (03) : 281 - 298
  • [47] PARALLEL RENDERING OF VOLUMETRIC DATA SET ON DISTRIBUTED-MEMORY ARCHITECTURES
    MONTANI, C
    PEREGO, R
    SCOPIGNO, R
    CONCURRENCY-PRACTICE AND EXPERIENCE, 1993, 5 (02): : 153 - 167
  • [48] A Distributed-Memory Algorithm for Connected Components Labeling of Simulation Data
    Harrison, Cyrus
    Weiler, Jordan
    Bleile, Ryan
    Gaither, Kelly
    Childs, Hank
    TOPOLOGICAL AND STATISTICAL METHODS FOR COMPLEX DATA: TACKLING LARGE-SCALE, HIGH-DIMENSIONAL, AND MULTIVARIATE DATA SPACES, 2015, : 3 - 19
  • [49] ON THE DESIGN OF DISTRIBUTED-MEMORY SISAL
    HAINES, M
    BOHM, W
    JOURNAL OF PROGRAMMING LANGUAGES, 1993, 1 (03): : 209 - 240
  • [50] COMPILING FOR DISTRIBUTED-MEMORY SYSTEMS
    ZIMA, HP
    CHAPMAN, BM
    PROCEEDINGS OF THE IEEE, 1993, 81 (02) : 264 - 287