Strumenti Utente

Strumenti Sito


magistraleinformaticanetworking:spd:start

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
magistraleinformaticanetworking:spd:start [13/03/2019 alle 15:37 (3 anni fa)]
Massimo Coppola
magistraleinformaticanetworking:spd:start [21/04/2021 alle 12:42 (9 mesi fa)] (versione attuale)
Massimo Coppola [Timetable]
Linea 1: Linea 1:
 ====== Strumenti di programmazione per sistemi paralleli e distribuiti ====== ====== Strumenti di programmazione per sistemi paralleli e distribuiti ======
- 
-**The page is currently under construction FIXME ** 
  
 ** Teacher: ** Dr. Massimo Coppola ** Teacher: ** Dr. Massimo Coppola
  
 **Contact info**\\ **Contact info**\\
 +Official CNR-ISTI web page [[https://www.isti.cnr.it/en/about/people-detail/71/Massimo_Coppola|Massimo Coppola at ISTI]]\\
 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 C, room 33\\  Office location :  CNR Reseach Area, ISTI-CNR, Building C, room 33\\ 
 +(due to COVID office-hours restrictions, office phone and location are unlikely useful) 
  
 **Course info**\\ **Course info**\\
-  * This page concerns the SPD course (535AA) for the academic year 2018-2019, which gives you **6 credits**.+  * This page concerns the SPD course (535AA) for the academic year 2020-2021, 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:spd:spd-14-15|SPD 2014-2015]]  ^  [[magistraleinformaticanetworking:spd:spd-15-16|SPD 2015-2016]]  ^ [[magistraleinformaticanetworking:spd:spd-16-17|SPD 2016-2017]] ^ [[magistraleinformaticanetworking:spd:spd-17-18|SPD 2017-2018]]  |+^  [[magistraleinformaticanetworking:spd:spd-14-15|SPD 2014-2015]]  ^  [[magistraleinformaticanetworking:spd:spd-15-16|SPD 2015-2016]]  ^ [[magistraleinformaticanetworking:spd:spd-16-17|SPD 2016-2017]] ^ [[magistraleinformaticanetworking:spd:spd-17-18|SPD 2017-2018]]  ^ [[magistraleinformaticanetworking:spd:spd-18-19|SPD 2018-2019]]  |
  
 ==== Timetable ==== ==== Timetable ====
Linea 26: Linea 26:
  
 ** Timetable ** ** Timetable **
-^ Monday |  **14-16** | C1  | (Polo Fibonacci) |  +^ Monday |  **14:15-16** | Virtual room WTW/2 |  |  
-Thursdaysday | **16-18** | N1 | (Polo Fibonacci) from 13/03 on |+Wednesday  **16:15-18** | Virtual room WTW/2 |   |
  
-  * See also the Dept. [[https://www.di.unipi.it/en/education/mcsn/timetable-wtw|official timetable]]. +  * See also the Dept. [[https://didattica.di.unipi.it/laurea-magistrale-in-informatica-e-networking/orario-magistrale-informatica-e-networking/|official timetable]] and the virtual room links on [[https://esami.unipi.it/|esami.unipi.it]]. 
   * 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. 
  
 ** Question time **\\ ** Question time **\\
-This is a default question time slot. A different time slot can be agreed upon, if neededby phone / e-mail +As question time will also be held remotelyplease contact the teacher to set up either individual or joint telco sessions.
-^ Wednesday | 15-17 | ISTI-CNR office | +
  
 === News and Updates === === News and Updates ===
-  27/2/2019 Starting next week, the final official schedule applies (Monday, Wednesday+   21/04/2021 Final Examination for one candidate to be held today. To be held online (see course MS teams channel Esamiat 15.40. The examination teleconference is public. 
-  27/2/2019 today's lesson is in CNR room C40 (CNR-ISTIclose to entrance 19) from (about16.20 to 18.20 +   22/02/2021 There'going to be NO LESSON today due to personal constraints. Next scheduled lesson is on Wednesday 24. All students who are interested in the course should contact me via email or via the microsoft teams chat of the course (535AA 20/21...) **especially** if there is a superposition with their other teaching slots. \\ __It is possible to change the course schedule as needed__ (both Monday and Wednesday slots can be moved), but contact me ASAP
-  19/2/2019 **IMPORTANT**: schedule will likely change from next week on. If you missed the first lesson due to a schedule conflict with other coursesplease contact the teacher ASAP so that we can try to reschedule the lessons to non-conflicting slots+   17/02/21 First lesson will be held on the MS teams online platform today, 16:15-18:00I will open the meeting at 16 in order to check if all technical issues are actually solved.  
-  2nd lesson on Friday 22/2 +   * 15/02/2021 Students which are interested in the course (or even just the first lesson) should either check this page before the lesson or write me an emailin case of further issues with the online platform. //In that case a different one will be used as a backup and the lesson URL will be sent by email.// 
-  * First lesson is on Monday 18/2+   The first lesson of the Course will be held on February 17The virtual room information will be posted on this page as soon as possible, due to issues with both the MS Teams and Google Meet platforms.
    
 -------- --------
 ==== Course Journal ==== ==== Course Journal ====
  
-The [[magistraleinformaticanetworking:spd:lezioni18.19|course journal]] is a separate page in this wiki.+The [[magistraleinformaticanetworking:spd:lezioni20.21|course journal]] is a separate page in this wiki.
  
 -------- --------
Linea 59: Linea 57:
   * Parallel Programming systems/frameworks   * Parallel Programming systems/frameworks
     * **MPI** message-passing programming (the core part of the MPI 2.2 standard)     * **MPI** message-passing programming (the core part of the MPI 2.2 standard)
-    * **TBB** Thread Building Blocks Multicore oriented, shared-memory programming framework +    * **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 
 +    * **SYCL** Common source CPU/GPU C++ programming framework 
     * 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/distributed formalisms we may partially address     * other topics and parallel/distributed formalisms we may partially address
          * Software defined processors: FPGA-based open source processors, OpenCL to FPGA compilation           * Software defined processors: FPGA-based open source processors, OpenCL to FPGA compilation 
-         * ASSIST (a framework for parallel high-level parallel programming with autonomic management)  
          * High-Level SPP languages for Clusters/Clouds, dynamic and autonomic management          * High-Level SPP languages for Clusters/Clouds, dynamic and autonomic management
 +         * SPC++
          * BSP-based approaches (e.g. Apache Hama / Giraph, or MulticoreBSP)          * BSP-based approaches (e.g. Apache Hama / Giraph, or MulticoreBSP)
-  * Example Applications +  * **Example Applications** may include 
-    * K-means, data mining, machine learning algorithms; computational simulation algorithms +    * Data mining (K-means, classification...), machine learning algorithms; computational simulation algorithms 
-  * Foundation, Technologies+  * Managing HPC experiments with **SLURM** 
 +  * Further technology topics if time allows 
 +    * Scripting HPC applications with **Python** 
 +  * Foundation, Technologies we may cover if needed
     * Elementary mechanisms to distribute computation: message passing, shared memory, massive multicore     * Elementary mechanisms to distribute computation: message passing, shared memory, massive multicore
     * Basics of scheduling algorithms and resource management     * Basics of scheduling algorithms and resource management
     * Basics of Service Oriented Architectures SOA     * Basics of Service Oriented Architectures SOA
-  * Service oriented Platforms, Cloud Computing and Cloud Federations+    * Service oriented Platforms, Cloud Computing and Cloud Federations
  
 -------- --------
Linea 88: Linea 91:
   * **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'Reilly Media. More focused on TBB alone, but describes a quite old release of the framework, hence you need to look at online documentation for some of the features.   * //Alternate book:// An introduction to TBB is also found in **James Reinders -- Intel Threading Building Blocks** 2007, O'Reilly Media. More focused on TBB alone, but describes a quite old release of the framework, hence you need to look at online documentation for some of the features.
 +  * **M. Voss, R. Asejo, J. Reinders -- Pro TBB Book code samples ported to oneAPI** Open access book on Springer  [[https://link.springer.com/book/10.1007%2F978-1-4842-4398-5|Pro TBB Open Access]] 
 +  * **J. Reinders et al. - Data Parallel C++ ** Open access book on Springer [[https://link.springer.com/book/10.1007%2F978-1-4842-5574-2|Data Parallel C++ Open Access]]
  
 === Papers and reading material === === Papers and reading material ===
  
 TBD TBD
magistraleinformaticanetworking/spd/start.1552491425.txt.gz · Ultima modifica: 13/03/2019 alle 15:37 (3 anni fa) da Massimo Coppola