Get in Touch

Course Outline

Introduction

Overview of Message Passing Interface (MPI) Features and Architecture

  • Parallel computing basics.
  • The MPI process.

Getting Started with MPICH

  • Installation and configuration options.
  • Shared libraries.
  • Installing process managers.

Programming Basics with MPI

  • Writing, compiling, and linking programs.
  • Compilation commands.
  • Using Makefiles.

Running Programs with MPI

  • Standard mpiexec.
  • Process management extensions.
  • Remshell restrictions.

Sending and Receiving Messages

  • Message-passing routines.
  • Buffer and types (tags).
  • Using library calls.
  • Broadcast and reduction.

Coordinating Communications in MPI

  • Synchronization.
  • Collective patterns, routines, and operations.
  • Creating groups.

Working with Buffering Issues

  • Blocking and non-blocking communication.
  • Fairness in message-passing.
  • Communication modes.

Understanding Datatypes and Objects in MPI

  • Basic datatypes.
  • Vectors and structures.
  • Interleaving data.
  • MPI objects and references.

Writing Message-Passing Libraries

  • Attributes.
  • Sequential sections.
  • Managing and caching tags.

Evaluating the Performance of Parallel Programs

  • The MPI timer.
  • Profiling interface.
  • Logging.

Integrating Multiple Programs

  • Sending and exchanging data between programs.
  • Using intercommunicators.

Troubleshooting

Summary and Conclusion

Requirements

  • Experience with programming languages such as C, C++, and Fortran.

Audience

  • Developers.
  • Programmers.
 7 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories