Integrating MPI and nanothreads programming model

  • Authors:
  • Panagiotis E. Hadjidoukas;Eleftherios D. Polychronopoulos;Theodore S. Papatheodorou

  • Affiliations:
  • High Performance Information Systems Laboratory, Department of Computer Engineering and Informatics, University of Patras, Rio, Greece;High Performance Information Systems Laboratory, Department of Computer Engineering and Informatics, University of Patras, Rio, Greece;High Performance Information Systems Laboratory, Department of Computer Engineering and Informatics, University of Patras, Rio, Greece

  • Venue:
  • EUROMICRO-PDP'02 Proceedings of the 10th Euromicro conference on Parallel, distributed and network-based processing
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a prototype runtime system that integrates MPI, used on distributed memory systems, and Nanothreads Programming Model (NPM), a programming model for shared memory multiprocessors. This integration does not alter the independence of the two models, since the runtime system is based on a multilevel design that supports each of them individually but offers the capability to combine their advantages. Existing MPI codes can be executed without any changes, codes for shared memory machines can be used directly, while the concurrent use of both models is easy. Major feature of the runtime system is portability, as it is based exclusively on calls to MPI and Nthlib, a user-level threads library that has been ported to several operating systems. The runtime system supports the hybrid-programming model (MPI+OpenMP), providing also a solution for better load balancing in MPI applications. Moreover, it extends the API and the multiprogramming functionality of the NPM on clusters of multiprocessors and can support an extension of the OpenMP standard on distributed memory multiprocessors.