Portable explicit threading and concurrent programming for MPI applications

  • Authors:
  • Tobias Berka;Helge Hagenauer;Marian Vajteršic

  • Affiliations:
  • Department of Computer Sciences, University of Salzburg, Salzburg, Austria;Department of Computer Sciences, University of Salzburg, Salzburg, Austria;Department of Computer Sciences, University of Salzburg, Salzburg, Austria, Department of Informatics, Mathematical Institute, Slovak Academy of Sciences, Bratislava, Slovakia

  • Venue:
  • PPAM'11 Proceedings of the 9th international conference on Parallel Processing and Applied Mathematics - Volume Part II
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

New applications for parallel computing in today's data centers, such as online analytical processing, data mining or information retrieval, require support for concurrency. Due to online query processing and multi-user operation, we need to concurrently maintain and analyze the data. While the Portable Operating System Interface (POSIX) defines a thread interface that is widely available, and while modern implementations of the Message Passing Interface (MPI) support threading, this combination is lacking in safety, security and reliability. The development of such parallel applications is therefore complex, difficult and error-prone. In response to this, we propose an additional layer of middleware for threaded MPI applications designed to simplify the development of concurrent parallel programs. We formulate a list of requirements and sketch a design rationale for such a library. Based on a prototype implementation, we evaluate the run-time overhead to estimate the overhead caused by the additional layer of indirection.