====== Parallel and Distributed Programming ====== ---- ===== News ===== * November 27th, 2024: Dear student, next Wednesday **December 4t there will be no lesson**, as I will have to attend an institutional meeting in Bari. * November 11th, 2024: Dear student, next Wednesday **November 13th there will be no lesson**, due to the concurrent presentation of a PhD thesis defense. * October 22nd, 2024: Dear student, tomorrow there will be the graduation ceremony for L-31 and LM-18 degrees. The class is canceled. ---- ===== General Info ===== **Teacher**: * [[https://docenti.unicam.it/pdett.aspx?ids=N&tv=d&UteId=626|Prof. Andrea Polini]] * Diego Bonura **ESSE3 Link** * [[|Parallel and Distributed Programming - AY 2024/25]] **Scheduling of Lectures**: * Scheduling is available at the following [[:didattica:ay2425:orario_en|link]] **Degrees**: * [[didattica:mscs|MSc in Computer Science (LM-18)]] ---- ===== Distributed Programming Module ===== **Course Slides** * {{ :didattica:ay2425:pdp:programmazionedistribuita_2024_v3.pdf |}} **Webex** * [[https://unicam.webex.com/unicam/ldr.php?RCID=5d89edcd49cea31f89e74c18a71448f4|Lesson of 30 September 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=f4bbe7b49092840b3f3e2fd80172e7c8|Lesson of 7 October 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=716d910e23e335fe1aa0a67cdc0e8c32|Lesson of 14 October 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=c6140317eb3f6cf114a714671451a04c|Lesson of 21 October 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=780bbc466dfbfa078fab11b1861e9788|Lesson of 28 October 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=f861f1c6eff9d66f79022b0c29d861e0|Lesson of 4 November 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=d9b41e898b56d5cbd05ff9b67693d7cf|Lesson of 11 November 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=c9f5f09a8bc5527d21e1984a913a2740|Lesson of 18 November 2024]] * [[https://unicam.webex.com/unicam/ldr.php?RCID=b9ef165e3c0ed48a52035090aef19861|Lesson of 25 November 2024]] ** Repo ** * https://github.com/meriturva/Parallel-and-Distributed-Programming **Textbooks** * Designing Data-Intensive Applications - Martin Kleppmann - O'Reilly Media, Inc. **Exam project** * The project should be about the implementation of a distributed application case. This application should be implemented using a combination of microservices (or actors), database, cache, and asynchronous communication technologies. It will be important to introduce some concepts such as transactions and queues into the project. A plus will be the implementation of saga, telemetry, and security mechanisms. It is not necessary to implement a frontend but it will be sufficient to make some APIs available. ---- ===== Parallel Programming Module ===== **Lessons** * Lesson recordings are available [[https://docs.google.com/spreadsheets/d/1JjIO6gtDmREP_vXstVJ9d3pbk9L0rKiOdf23QZ8_x4k/edit?usp=sharing|here]] **Textbooks** * [PM] P. Pacheco, M. Malensek - "Introduction to Parallel Programming", 2nd Edition, Morgan Kaufmann, 2021 * [HKE] W.W. Hwu, D.B. Kirk, I. El Hajj - "Programming Massively Parallel Processors - a hands-on approach", 4th Edition, Morgan Kaufmann, 2022