Introduction to MPI Programming

Our "Introduction to Parallel Programming using MPI" series is a free, four-part interactive workshop that aims to provide a basic introduction to parallel programming using Message Passing Interface (MPI). This will enable users with basic (serial) programming experience using Fortran or C to scale their applications over many compute cores to take full advantage of RCC resources. We will also discuss parallelization techniques and debugging of parallel codes.

Although our primary goal is to show users how to use RCC resources to develop parallel applications, this knowledge will be useful if you plan to use any super computing facility. Therefore, we encourage anyone who is familiar with programming using Fortran or C to attend the workshop.

Workshop Format

This is an interactive, hands-on workshop. Basic Fortran or C programming experience is required. It will be held in a fully-equipped classroom laboratory with furnished computers. Attendees may bring their own notebook computers, but this will not be necessary.

Topics Covered

By the end of this workshop, attendees will be able to develop parallelized applications using MPI.

Specific topics covered include:

  • Introduction to parallel computing and MPI
  • Introduction to basic MPI calls and data types
  • Blocking vs non-blocking MPI calls
  • Collective communication
  • Applications and types of parallelism: how to parallelize your code
  • Debugging a parallel code

Piazza

During this workshop, we will use Piazza.

Piazza enables the workshop participants to discuss problems and post comments on the content. Also, the instructor can answer questions easily outside the workshop meeting times. We will also post workshop slides and code samples in piazza course page. Attendees will receive and email from the Piazza Team no-reply@piazza.com with the subject line "Prasad Maddumage welcomes you to RCC MPI, Florida State University". Piazza will be a great asset, but sign up is optional for the workshop, and attendees will still have access to workshop slides through RCC website.

Instructor

This workshop will be led by Prasad Maddumage, an Applications Specialist at RCC. Prasad has over seven years of parallel scientific code development experience mainly using Fortran.