Introduction to MPI

logo1
Current Status
Not Enrolled
Price
Free
Get Started

The Message Passing Interface (MPI) is a transformative standard for enabling communication in parallel computing environments. By facilitating data exchange between compute nodes, MPI creates a robust distributed memory model that powers modern high-performance computing (HPC). Its ability to efficiently share data across thousands of processors allows researchers to scale their applications to tackle complex problems faster and more effectively.

This course will equip you with essential MPI skills, from understanding parallel programming fundamentals to mastering advanced techniques. You’ll learn the basics of shared and distributed memory models, explore point-to-point and collective communication, and address challenges like non-contiguous memory and deadlocks. Gain hands-on experience optimising MPI applications by porting serial code to parallel implementations, selecting optimal communication patterns, and profiling performance to maximise scalability and efficiency.

Requirements: Participants must have access to a computer with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed below).

HPC Access: It is expected that DiRAC users connect to their allocated system. If you experience any issues please contact us and we will try to help. Non-DiRAC users are welcome to use this material, but they will have to use their own system.

Accessibility: We are dedicated to providing a positive and accessible learning environment for all. Please get in touch if you require any accommodations or if there is anything we can do to make this lesson more accessible to you.

Contact: Please email richard.regan@durham.ac.uk for more information.