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 in programming languages such as C, C++, and Fortran
Audience
- Developers
- Programmers
Testimonials (5)
Conducting training so that everyone could follow. Not leaving the student with questions asked by him.
Krzysztof - PKO Bank Polski
Course - HashiCorp Vault
Machine Translated
Practical examples.
Mateusz - Aplikacje Krytyczne
Course - BizTalk for Developers
Live Course Matching
Wojciech Karpinski - Uniwersytet Warszawski
Course - XML Fundamentals
Machine Translated
I like how helpful Clement is.
Mateera Kaikko - ASML US, LLC
Course - gRPC
Elegant examples and practical exercises.
Piotr Sztepiuk
Course - OpenCL
Machine Translated