=====Journal of Lessons, SPD year 2025-2026==== ====Journal==== * 19/02/2026 **Course introduction** -- Parallel programming frameworks and high-level approach to parallel programming over different platforms: MPI, TBB and OpenCL as main examples; course organization and prerequisites; reference books and studying material. \\ -- ** MPI (Message Passing Interface) standard ** -- brief history and aim of the standard, single program / multiple data execution model, compilation and linkage model; issues in supporting multiple programming languages and uses (application, utility library and programming language support) with a static compilation and linkage approach. Portability in parallel programming: functional and non-functional aspects, performance tuning and performance debugging. * 20/02/2026 ** MPI (Message Passing Interface) standard ** -- brief history and aim of the standard, single program / multiple data execution model, compilation and linkage model; issues in supporting multiple programming languages and uses (application, utility library and programming language support) with a static compilation and linkage approach. Portability in parallel programming: functional and non-functional aspects, performance tuning and performance debugging. MPI as a parallel framework that supports a structured approach to parallel programming. Basic concepts of MPI: communicators (definition, purpose, difference between inter and intra-communicators, process ranks). Point to point communication (concepts of envelope, local/global completion, blocking/non-blocking primitive, send modes); collective communications (definition, communication scope, global serialization, freedom of implementation in the standard); MPI datatypes (basic meaning and use, primitive / derived datatypes). * 26/02/2026 * 27/02/2026 * 05/03/2026 * 06/03/2026 * 12/03/2026 * 13/03/2026 * 19/03/2026 * 20/03/2026 * 26/03/2026 * 27/03/2026 ====Slides, Notes and References to papers==== ^ Date ^ Slides ^ Notes ^ References / Info | | 19/02 | {{ :magistraleinformaticanetworking:spd:spd25-26_course_intro.pdf | Course introduction}} | | | | 20/02 | {{ :magistraleinformaticanetworking:spd:2025:mpi-lesson1.pdf | Lesson 1}} | | see last slide | | 26/02 | {{ :magistraleinformaticanetworking:spd:2025:mpi-lesson2.pdf | Lesson 2}} {{ :magistraleinformaticanetworking:spd:2025:mpi-lesson3.pdf | Lesson 3}} | | see last slide | | 27/02 | | | |