Issues in developing a thread-safe MPI implementation

被引:0
|
作者
Gropp, William [1 ]
Thakur, Rajeev [1 ]
机构
[1] Argonne Natl Lab, Div Math & Comp Sci, Argonne, IL 60439 USA
关键词
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The MPI-2 Standard has carefully specified the interaction between MPI and user-created threads, with the goal of enabling users to write multithreaded programs while also enabling MPI implementations to deliver high performance. In this paper, we describe and analyze what the MPI Standard says about thread safety and what it implies for an implementation. We classify the MPI functions based on their thread-safety requirements and discuss several issues to consider when implementing thread safety in MPI. We use the example of generating new context ids (required for creating new communicators) to demonstrate how a simple solution for the single-threaded case cannot be used when there are multiple threads and how a naive thread-safe algorithm can be expensive. We then present an algorithm for generating context ids that works efficiently in both single-threaded and multithreaded cases.
引用
收藏
页码:12 / 21
页数:10
相关论文
共 50 条
  • [21] Architectural aspects of a thread-safe graphical component system based on Aos
    Frey, TM
    MODULAR PROGRAMMING LANGUAGES, PROCEEDINGS, 2003, 2789 : 188 - 191
  • [22] Thread-safe lattice Boltzmann for high-performance computing on GPUs
    Montessori, Andrea
    Lauricella, Marco
    Tiribocchi, Adriano
    Durve, Mihir
    La Rocca, Michele
    Amati, Giorgio
    Bonaccorso, Fabio
    Succi, Sauro
    JOURNAL OF COMPUTATIONAL SCIENCE, 2023, 74
  • [23] An Evaluation of Thread-Safe and Contexts-Domains Features in Cray SHMEM
    Namashivayam, Naveen
    Knaak, David
    Cernohous, Bob
    Radcliffe, Nick
    Pagel, Mark
    OPENSHMEM AND RELATED TECHNOLOGIES: ENHANCING OPENSHMEM FOR HYBRID ENVIRONMENTS, 2016, 10007
  • [24] Is This Class Thread-Safe? Inferring Documentation using Graph-Based Learning
    Habib, Andrew
    Pradel, Michael
    PROCEEDINGS OF THE 2018 33RD IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMTED SOFTWARE ENGINEERING (ASE' 18), 2018, : 41 - 52
  • [25] A Comprehensive Study on the Energy Efficiency of Java']Java's Thread-Safe Collections
    Pinto, Gustavo
    Liu, Kenan
    Castor, Fernando
    Liu, Yu David
    32ND IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2016), 2016, : 20 - 31
  • [26] MAP-Coverage: a Novel Coverage Criterion for Testing Thread-Safe Classes
    Wang, Zan
    Zhao, Yingquan
    Liu, Shuang
    Sun, Jun
    Chen, Xiang
    Lin, Huarui
    34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, : 734 - 746
  • [27] Enhancing Call-Level Interfaces with Thread-Safe Local Memory Structures
    Pereira, Oscar Mortagua
    Aguiar, Rui L.
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2017, 27 (9-10) : 1549 - 1565
  • [28] Open issues in MPI implementation
    Thakur, Rajeev
    Gropp, William
    ADVANCES IN COMPUTER SYSTEMS ARCHITECTURE, PROCEEDINGS, 2007, 4697 : 327 - +
  • [29] Memory-efficient and thread-safe quasi-destructive graph unification
    van Lohuizen, MP
    38TH ANNUAL MEETING OF THE ASSOCIATION FOR COMPUTATIONAL LINGUISTICS, PROCEEDINGS OF THE CONFERENCE, 2000, : 352 - 359
  • [30] Artifacts for "A Comprehensive Study on the Energy Efficiency of Java']Java's Thread-Safe Collections"
    Pinto, Gustavo
    Liu, Kenan
    Castor, Fernando
    Liu, Yu David
    32ND IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2016), 2016, : 614 - 614