Skip to main content

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2840))

  • 734 Accesses

Abstract

MPI is often thought of as a low-level approach, even as a sort of “assembly language,” for parallel programming. This is both true and false. While MPI is designed to afford the programmer the ability to control the flow of data at a detailed level for maximum performance, MPI also provides highly expressive operations that support high-level programming. MPI’s design has also encouraged the design of parallel libraries, which can provide performance while shielding the user from the details of MPI programming.

This tutorial will begin with the basics of MPI, so that attendees need not be familiar with MPI beforehand. We will focus, however, on using MPI as a high-level language by exploiting data type libraries, collective operations, and MPI-I/O. We will cover both MPI-1 and MPI-2 topics in this area, and will introduce some tools for analyzing performance of MPI programs. We will then familiarize attendees with libraries that have been built on MPI, such as ScaLAPACK, PETSc, and parallel NetCDF.

We will conclude with a hands-on, “class participation” project. Using whatever laptops attendees can bring to the tutorial together with a wireless network we will supply, we will set up a parallel computer and supply attendees with copies of MPICH-2, our all-new implementation of MPI-1 and MPI-2. If all goes well, we should thus be able to have a quite capable parallel computer available for some interesting demonstrations and experiments. Both Windows and Linux laptops will be accommodated.

This work was supported by the Mathematical, Information, and Computational Sciences Division subprogram of the Office of Advanced Scientific Computing Research, U.S. Department of Energy, under Contract W-31-109-Eng-38.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Gropp, W.D., Lusk, E. (2003). High-Level Programming in MPI. In: Dongarra, J., Laforenza, D., Orlando, S. (eds) Recent Advances in Parallel Virtual Machine and Message Passing Interface. EuroPVM/MPI 2003. Lecture Notes in Computer Science, vol 2840. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39924-7_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-39924-7_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20149-6

  • Online ISBN: 978-3-540-39924-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics