magistraleinformaticanetworking:spd:start
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
| magistraleinformaticanetworking:spd:start [23/02/2024 alle 01:02 (2 anni fa)] – Massimo Coppola | magistraleinformaticanetworking:spd:start [06/03/2026 alle 12:21 (4 settimane fa)] (versione attuale) – [Timetable] Massimo Coppola | ||
|---|---|---|---|
| Linea 7: | Linea 7: | ||
| e-mail : massimo.coppola@isti.cnr.it \\ | e-mail : massimo.coppola@isti.cnr.it \\ | ||
| Phone : 050 315 2992 \\ | Phone : 050 315 2992 \\ | ||
| - | Office location : CNR Reseach Area, ISTI-CNR, Building | + | Office location : CNR Reseach Area, ISTI-CNR, Building |
| - | ^ **IMPORTANT: | + | ^ **IMPORTANT: |
| + | ^ | ||
| **Course info**\\ | **Course info**\\ | ||
| - | * This page concerns the SPD course (535AA) for the academic year 2023-2024, which gives you **6 credits**. | + | * This page concerns the SPD course (535AA) for the academic year 2025-2026, which gives you **6 credits**. |
| * Be sure to alway check the NEWS section in this page. | * Be sure to alway check the NEWS section in this page. | ||
| * Information about latest past editions of the SPD course can be found at the following links. | * Information about latest past editions of the SPD course can be found at the following links. | ||
| - | ^ [[magistraleinformaticanetworking: | + | ^ [[magistraleinformaticanetworking: |
| ==== Timetable ==== | ==== Timetable ==== | ||
| Linea 26: | Linea 27: | ||
| - | ^ Monday | + | ^ Thursday |
| - | ^ Friday | **11:00-13:00** | Room FIB L1 | | + | ^ Friday | **14:00-16:00** | Room FIB X3 | |
| [[https:// | [[https:// | ||
| - | + | | |
| - | + | ||
| - | | + | |
| * In case of exceptions, notice will be given in the News section below in this page and by email to the students. | * In case of exceptions, notice will be given in the News section below in this page and by email to the students. | ||
| Linea 40: | Linea 39: | ||
| === News and Updates === | === News and Updates === | ||
| - | | + | |
| + | * 06/03/2026 Starting next week the lessons will be recorded and uploaded to the official MS Teams channel | ||
| ==== Course Journal ==== | ==== Course Journal ==== | ||
| - | The [[magistraleinformaticanetworking: | + | The [[magistraleinformaticanetworking: |
| -------- | -------- | ||
| ==== Aim of the Course ==== | ==== Aim of the Course ==== | ||
| The course will provide a description and analysis of a few key parallel and distributed programming platforms and models, starting from their theoretical foundations, | The course will provide a description and analysis of a few key parallel and distributed programming platforms and models, starting from their theoretical foundations, | ||
| + | |||
| + | ^ **The overall program reported below is a preliminary one** | | ||
| + | |||
| + | - The course this year will be more flexible in the topics and in the definition of the students' | ||
| + | - Specific topics can be expanded according to the interest of the students, | ||
| + | - Interdisciplinary projects proposed by the student will be evaluated for the final assignment. | ||
| ==== Overall Program ==== | ==== Overall Program ==== | ||
| Linea 55: | Linea 61: | ||
| * Parallel Programming systems/ | * Parallel Programming systems/ | ||
| - | | + | * **MPI** message-passing programming (the core part of the MPI standard) |
| - | * **ONEAPI** as a unifying meta-approach toward programming several architectural layers, encapsulating other existing programming frameworks | + | |
| - | * **TBB** Thread Building Blocks Multicore oriented, shared-memory programming framework | + | * **TBB** Thread Building Blocks. Multicore oriented, shared-memory programming framework |
| - | * **SYCL** Common source CPU/GPU C++ programming framework | + | * **SYCL** |
| - | * Massively Multicore computation and GPU programming frameworks: mainly **OpenCL** but also references to CUDA | + | * Massively Multicore computation and GPU programming frameworks: mainly **OpenCL** but also references to **CUDA** |
| - | * other topics and parallel/ | + | * other topics and parallel/ |
| - | | + | * Software defined processors: FPGA-based open source processors, OpenCL to FPGA compilation |
| - | | + | * High-Level SPP languages for Clusters/ |
| - | | + | * SPC++ |
| - | | + | * BSP-based approaches (e.g. Apache Hama / Giraph, or MulticoreBSP) |
| - | | + | * Example Applications may include |
| - | * Data mining (K-means, classification...), machine learning algorithms; computational simulation algorithms | + | * Data mining (K-means, classification…), |
| - | * Managing HPC experiments with **SLURM** | + | * machine learning algorithms |
| - | * Further technology topics if time allows | + | * computational simulation algorithms |
| - | * Scripting HPC applications with **Python** | + | |
| - | * Foundation, Technologies we may cover if needed | + | |
| - | * Elementary mechanisms | + | * Scripting HPC applications with Python |
| - | * Basics of scheduling algorithms and resource management | + | |
| - | * Basics of Service Oriented Architectures SOA | + | We may cover other Foundational aspects and technologies, depending on the specific year and students' |
| - | * Service oriented Platforms, Cloud Computing and Cloud Federations | + | |
| + | | ||
| + | * Programming frameworks or libraries for parallelising/ | ||
| + | | ||
| + | * Basics of Service Oriented Architectures SOA | ||
| + | * Service oriented Platforms, Cloud Computing and Cloud Federations | ||
| -------- | -------- | ||
| Linea 86: | Linea 97: | ||
| ==== Teaching material ==== | ==== Teaching material ==== | ||
| === Books === | === Books === | ||
| - | | + | |
| - | * **B. Wilkinson, M. Allen -- Parallel Programming**, | + | * Latest **MPI Standard** from [[https://www.mpi-forum.org/ |
| + | * **M. Voss, J. Reinders - Today' | ||
| + | * //Older reference// | ||
| + | * **B. Wilkinson, M. Allen -- Parallel Programming**, | ||
| * **Michael Mc Cool, Arch D. Robinson and James Reinders -- Structured Parallel Programming (patterns for Efficient Computation)** 2012, Morgan Kaufmann. \\ Chapters 1 to 3 cover background topics which should be already known from previous courses (SPA, SPD courses). Stundents need to focus on the TBB material throughout the book: Appendix C and D, and the TBB examples in the book that appendix C references from chapters 4, 5, 8 and 9. Check also Chapter 11 on k-means. | * **Michael Mc Cool, Arch D. Robinson and James Reinders -- Structured Parallel Programming (patterns for Efficient Computation)** 2012, Morgan Kaufmann. \\ Chapters 1 to 3 cover background topics which should be already known from previous courses (SPA, SPD courses). Stundents need to focus on the TBB material throughout the book: Appendix C and D, and the TBB examples in the book that appendix C references from chapters 4, 5, 8 and 9. Check also Chapter 11 on k-means. | ||
| - | * //Alternate book:// An introduction to TBB is also found in **James Reinders -- Intel Threading Building Blocks** 2007, O' | + | |
| - | * **M. Voss, R. Asejo, J. Reinders -- Pro TBB Book code samples ported to oneAPI** Open access book on Springer | + | |
| - | * **J. Reinders et al. - Data Parallel C++ ** Open access book on Springer [[https:// | + | |
| === Papers and reading material === | === Papers and reading material === | ||
| - | TBD | + | Examples: |
| + | * **Parallel k-means** Dhillon & Modha Technical Report about parallel K-means, published as: A Data-Clustering Algorithm On Distributed Memory Multiprocessors. I.S. Dhillon, D.S.Modha, LNAI 1759, pag 245. Published version has issues, refer to the Tech. rep. | ||
| + | * **Parallel Clustering** Large-Scale Parallel Data Clustering. Dan Judd, Philip K. Mckinley, Anil K. Jain. Ieee Transaction On Pattern Analysis And Machine Intelligence, | ||
| + | |||
| + | |||
magistraleinformaticanetworking/spd/start.1708650145.txt.gz · Ultima modifica: 23/02/2024 alle 01:02 (2 anni fa) da Massimo Coppola
