Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente |
magistraleinformaticanetworking:spd:lezioni20.21 [19/02/2021 alle 15:58 (4 anni fa)] – Massimo Coppola | magistraleinformaticanetworking:spd:lezioni20.21 [01/03/2021 alle 14:54 (4 anni fa)] (versione attuale) – [Journal] Massimo Coppola |
---|
* 15/02/2021 **NO LESSON** | * 15/02/2021 **NO LESSON** |
* 17/02/2021 **Course introduction** -- Parallel programming frameworks and high-level approach to parallel programming over different platforms: MPI, TBB, OpenCL as main examples, oneAPI and SYCL as unifying approaches; 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. **MPI basic concepts** 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). | * 17/02/2021 **Course introduction** -- Parallel programming frameworks and high-level approach to parallel programming over different platforms: MPI, TBB, OpenCL as main examples, oneAPI and SYCL as unifying approaches; 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. **MPI basic concepts** 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). |
* 22/02/2021 | * 22/02/2021 **NO LESSON** |
* 24/02/2021 | * 24/02/2021 **MPI basic concepts** -- 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); MPI Datatypes relationship with sequential language types. MPI library initialization and basic MPI usage; point to point communication semantics (buffer behaviour, receive, status objects, MPI_PROC_NULL); MPI primitive datatypes. |
* 01/03/2021 | * 01/03/2021 **MPI** – Derived MPI datatypes (purpose as explicitly defined meta-data provided to the MPI implementation, multiple language bindings, code-instantiated metadata, examples). MPI datatypes semantics: typemap and type signature (matching rules for communication, role in MPI-performed packing and unpacking); core primitives for datatype creation ( MPI_Type_* : contiguous, vector, hvector, indexed, hindexed, struct; commit, free) and examples. Point to point communication modes (MPI_BSEND, MPI_SSEND; MPI_RSend usage); non-blocking communication (Wait and Test group of primitives, semantics, MPI_Request object handles to active requests); canceling and testing cancellation of non-blocking primitives (issues and pitfalls, interaction with MPI implementation, e.g. MPI_finalize). |
* 03/03/2021 | * 03/03/2021 ** Interested students (either of this academic year or any previous one) need to contact the teacher ** |
* 08/03/2021 | * 08/03/2021 |
* 10/03/2021 | * 10/03/2021 |
====Slides, Notes and References to papers==== | ====Slides, Notes and References to papers==== |
| |
^ Date ^ Slides ^ Notes ^ References / Info | | ^ Date ^ Slides ^ Recordings ^ Notes ^ References / Info | |
| 17/02 | {{ :magistraleinformaticanetworking:spd:2020:spd20-21_course_intro.pdf | Course introduction}} | | | | | 17/02 | {{ :magistraleinformaticanetworking:spd:2020:spd20-21_course_intro.pdf | Course introduction}} | [[https://unipiit.sharepoint.com/sites/a__td_47439/Shared%20Documents/Lezioni-test/Recordings/Riunione%20in%20_Lezioni-test_-20210217_163525-Registrazione%20della%20riunione.mp4?web=1 | MS TEAMS link 1]] | | | |
| 17/02, ... | {{ :magistraleinformaticanetworking:spd:2020:mpi-lesson1.pdf | MPI lesson 1}} | | | | | 17/02 | {{ :magistraleinformaticanetworking:spd:2020:mpi-lesson1.pdf | MPI lesson 1}} | [[https://unipiit.sharepoint.com/sites/a__td_47439/Shared%20Documents/Lezioni-test/Recordings/Riunione%20in%20_Lezioni-test_-20210217_172953-Registrazione%20della%20riunione.mp4?web=1 | MS TEAMS link 2]] | | | |
| | 24/02 | {{ :magistraleinformaticanetworking:spd:2020:mpi-lesson1.pdf | MPI lesson 1}} {{ :magistraleinformaticanetworking:spd:2020:mpi-lesson2.pdf | MPI Lesson 2}} | [[https://unipiit.sharepoint.com/sites/a__td_47439/Shared%20Documents/Lezioni-test/Recordings/Riunione%20in%20_SPD%20Lessons_-20210224_163405-Registrazione%20della%20riunione.mp4?web=1 | MS TEAMS link 3]] [[https://unipiit.sharepoint.com/sites/a__td_47439/Shared%20Documents/Lezioni-test/Recordings/Riunione%20in%20_SPD%20Lessons_-20210224_174939-Registrazione%20della%20riunione.mp4?web=1 | MS TEAMS link 4]] | | | |
| | 1/03 | {{ :magistraleinformaticanetworking:spd:2020:mpi-lesson2.pdf | MPI Lesson 2}} {{ :magistraleinformaticanetworking:spd:2020:mpi-lesson3.pdf | MPI lesson 3}} | [[https://unipiit.sharepoint.com/sites/a__td_47439/Shared%20Documents/Lezioni-test/Recordings/Riunione%20in%20_SPD%20Lessons_-20210301_142527-Registrazione%20della%20riunione.mp4?web=1 | MS TEAMS link 5]] [[https://unipiit.sharepoint.com/sites/a__td_47439/Shared%20Documents/Lezioni-test/Recordings/Riunione%20in%20_SPD%20Lessons_-20210301_152431-Registrazione%20della%20riunione.mp4?web=1 | MS TEAMS link 6]] | | |