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 条
  • [41] Developing countries and the WTO -: Issues of implementation
    Mukerji, A
    JOURNAL OF WORLD TRADE, 2000, 34 (06) : 33 - 74
  • [42] MPI Thread-Level Checking for MPI plus OpenMP Applications
    Saillard, Emmanuelle
    Carribault, Patrick
    Barthou, Denis
    EURO-PAR 2015: PARALLEL PROCESSING, 2015, 9233 : 31 - 42
  • [43] Thread safe astronomy
    Seaman, R.
    ASTRONOMISCHE NACHRICHTEN, 2008, 329 (03) : 237 - 240
  • [44] Advanced Thread Synchronization for Multithreaded MPI Implementations
    Hoang-Vu Dang
    Seo, Sangmin
    Amer, Abdelhalim
    Balaji, Pavan
    2017 17TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID), 2017, : 314 - 324
  • [45] MPI Sessions: Evaluation of an Implementation in Open MPI
    Hjelm, Nathan
    Pritchard, Howard
    Gutierrez, Samuel K.
    Holmes, Daniel J.
    Castain, Ralph
    Skjellum, Anthony
    2019 IEEE INTERNATIONAL CONFERENCE ON CLUSTER COMPUTING (CLUSTER), 2019, : 235 - 245
  • [46] Test suite for evaluating performance of MPI implementations that support MPI_THREAD_MULTIPLE
    Thakur, Rajeev
    Gropp, William
    RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, 2007, 4757 : 46 - 55
  • [47] On using an hybrid MPI-thread programming for the implementation of a parallel sparse direct solver on a network of SMP nodes
    Henon, Pascal
    Ramet, Pierre
    Roman, Jean
    PARALLEL PROCESSING AND APPLIED MATHEMATICS, 2006, 3911 : 1050 - 1057
  • [48] An MPI implementation of the BLACS
    Deshpande, V
    Sawyer, W
    3RD INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING, PROCEEDINGS, 1996, : 463 - 468
  • [49] Hybrid MPI-thread implementation on a cluster of SMP nodes of a parallel simulator for the propagation of powdery mildew in a vineyard
    Tessier, Gael
    Roman, Jean
    Latu, Guillaume
    HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS, PROCEEDINGS, 2006, 4208 : 833 - 842
  • [50] Thread Contracts for Safe Parallelism
    Karmani, Rajesh K.
    Madhusudan, P.
    Moore, Brandon M.
    ACM SIGPLAN NOTICES, 2011, 46 (08) : 125 - 134