Using Point-to-Point Communications
Christopher Cameron, Brandon Barker, CAC Staff (original)
Cornell Center for Advanced Computing
Revisions: 5/2022, 1/2014, 10/2014 (original)
This topic gives an overview of how to use point-to-point messages effectively and avoid deadlock.
Objectives
After you complete this topic, you should be able to:
- Explain how deadlock occurs
- Identify situations where deadlock commonly occurs
- Describe four strategies for avoiding deadlock
- Explain which strategy to use in different situations
- Define the term persistent communication
- Explain how MPI objects are manipulated using persistent communication
- Describe a nonblocking message-passing routine in terms of persistent communication
- Demonstrate creating requests, sending/receiving messages, and cleaning up objects using persistent communication
Prerequisites
- Familiarity with HPC paradigms and MPI Basics.
- Experience programming in a high-level language such as Fortran or C would be helpful, but the reader can still follow along to understand the concepts and methodologies.
- A basic familiarity with parallel programming concepts