Course Outline
Introduction
Overview of Message Passing Interface (MPI) Features and Architecture
- Fundamentals of parallel computing
- Understanding the MPI process
Getting Started with MPICH
- Installation and configuration options
- Working with shared libraries
- Installing process managers
Programming Basics with MPI
- Writing, compiling, and linking programs
- Essential compilation commands
- Utilizing Makefiles
Executing Programs with MPI
- Using standard mpiexec
- Extensions for process management
- Addressing remshell restrictions
Sending and Receiving Messages
- Message-passing routines
- Managing buffers and data types (tags)
- Utilizing library calls
- Implementing broadcast and reduction operations
Coordinating Communications in MPI
- Synchronization techniques
- Collective patterns, routines, and operations
- Creating and managing groups
Navigating Buffering Issues
- Distinguishing between blocking and non-blocking communication
- Ensuring fairness in message passing
- Exploring communication modes
Understanding Datatypes and Objects in MPI
- Working with basic datatypes
- Utilizing vectors and structures
- Interleaving data effectively
- Managing MPI objects and references
Writing Message-Passing Libraries
- Understanding attributes
- Handling sequential sections
- Managing and caching tags
Evaluating the Performance of Parallel Programs
- Using the MPI timer
- Leveraging the profiling interface
- Implementing logging
Integrating Multiple Programs
- Sending and exchanging data between programs
- Utilizing intercommunicators
Troubleshooting
Summary and Conclusion
Requirements
- Proficiency in programming languages such as C, C++, and Fortran.
Target Audience
- Software Developers
- Programmers
Testimonials (3)
The speed and focus on the target system, I could maintain focus well
Kevin - Phoenix Contact B.V.
Course - gRPC
Practical examples.
Mateusz - Aplikacje Krytyczne
Course - BizTalk for Developers
Theory and excises not separated but after every bigger Topic there were exercises to remember theory in practice