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 条
  • [31] Address Scaling: Architectural Support for Fine-Grained Thread-Safe Metadata Management
    Mishra, Deepanjali
    Kanellopoulos, Konstantinos
    Panwar, Ashish
    Sriraman, Akshitha
    Seshadri, Vivek
    Mutlu, Onur
    Mowry, Todd C.
    IEEE COMPUTER ARCHITECTURE LETTERS, 2024, 23 (01) : 69 - 72
  • [32] 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, : 615 - 615
  • [33] StateML+:: From graphical state machine models to thread-safe Ada code
    Alonso, Diego
    Vicente-Chicote, Cristina
    Pastor, Juan A.
    Alvarez, Barbara
    RELIABLE SOFTWARE TECHNOLOGIES - ADA-EUROPE 2008, 2008, 5026 : 158 - 170
  • [34] Thread-safety in an MPI implementation: Requirements and analysis
    Gropp, William
    Thakur, Rajeev
    PARALLEL COMPUTING, 2007, 33 (09) : 595 - 604
  • [35] GALAHAD, a library of thread-safe Fortran 90 packages for large-scale nonlinear optimization
    Gould, NIM
    Orban, D
    Toint, PL
    ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2003, 29 (04): : 353 - 372
  • [36] An MPI-1 Compliant Thread-Based Implementation
    Diaz Martin, J. C.
    Rico Gallego, J. A.
    Alvarez Llorente, J. M.
    Perogil Duque, J. F.
    RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, PROCEEDINGS, 2009, 5759 : 327 - 328
  • [37] Coverage-Driven Test Generation for Thread-Safe Classes via Parallel and Conflict Dependencies
    Terragni, Valerio
    Pezze, Mauro
    Bianchi, Francesco A.
    2019 IEEE 12TH CONFERENCE ON SOFTWARE TESTING, VALIDATION AND VERIFICATION (ICST 2019), 2019, : 264 - 275
  • [38] High-order thread-safe lattice Boltzmann model for high performance computing turbulent flow simulations
    Montessori, Andrea
    La Rocca, Michele
    Amati, Giorgio
    Lauricella, Marco
    Tiribocchi, Adriano
    Succi, Sauro
    PHYSICS OF FLUIDS, 2024, 36 (03)
  • [39] Thread communication over MPI
    Nitsche, T
    RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, PROCEEDINGS, 2000, 1908 : 145 - 151
  • [40] Implementation issues for safe behaviour in robotic systems
    Pace, C.
    Seward, D. W.
    Agate, R.
    SAFETY AND RELIABILITY FOR MANAGING RISK, VOLS 1-3, 2006, : 2361 - +