Strumenti Utente

Strumenti Sito


magistraleinformaticanetworking:spm:sdpm09support

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:spm:sdpm09support [12/01/2010 alle 09:46 (13 anni fa)]
Marco Danelutto
magistraleinformaticanetworking:spm:sdpm09support [23/09/2010 alle 15:36 (12 anni fa)] (versione attuale)
Marco Danelutto
Linea 12: Linea 12:
   * [[http://www.di.unipi.it/mcsn2009/Programs/ProgrammiMCSN/Course_Programs_%28English%29.html|Link]] to the page with all the (preliminary) programs of the courses (in English)    * [[http://www.di.unipi.it/mcsn2009/Programs/ProgrammiMCSN/Course_Programs_%28English%29.html|Link]] to the page with all the (preliminary) programs of the courses (in English) 
   * [[http://www.mcsn.sssup.it/|Link]] to St. Anna master web page (mainly for registration/enrollment process)===== Course support material and links =====   * [[http://www.mcsn.sssup.it/|Link]] to St. Anna master web page (mainly for registration/enrollment process)===== Course support material and links =====
 +==== Slides of all the lessons given in the course ====
 +Lesson slides for the single lessons given during the course can be taken from the [[http://www.cli.di.unipi.it/doku/doku.php/magistraleinformaticanetworking/spm/sdpm09lessons|lessons]] web page. 
 +Here is a [[http://backus.di.unipi.it/~marcod/SPM/AllLessonsB2p.pdf|link]] with a PDF with all the slides used (included handwritings, if available), in a two slides per page format. 
  
 ==== Course introduction and motivations ==== ==== Course introduction and motivations ====
Linea 19: Linea 22:
   * [[http://www.tilera.com/products/processors.php|Tilera]] multicore chip home page   * [[http://www.tilera.com/products/processors.php|Tilera]] multicore chip home page
   * The book //Introduction to parallel computing// ([[http://www.amazon.com/Introduction-Parallel-Computing-Ananth-Grama/dp/0201648652|Amazon pointer]]) by Grama, Karypis, Kumar and Gupta, has in Chapter 5 a good introduction to performance modelling of parallel forms. Most of the analytical modelling presented in SPM lessons is discussed in the book by M. Vanneschi "Architettura degli elaboratori", PLUS ed. 2010 in chapter X (this is in Italian, however).    * The book //Introduction to parallel computing// ([[http://www.amazon.com/Introduction-Parallel-Computing-Ananth-Grama/dp/0201648652|Amazon pointer]]) by Grama, Karypis, Kumar and Gupta, has in Chapter 5 a good introduction to performance modelling of parallel forms. Most of the analytical modelling presented in SPM lessons is discussed in the book by M. Vanneschi "Architettura degli elaboratori", PLUS ed. 2010 in chapter X (this is in Italian, however). 
 +
 ==== Structured parallel/distributed programming ====  ==== Structured parallel/distributed programming ==== 
 === Skeletons === === Skeletons ===
Linea 26: Linea 30:
   * Paper //[[http://calvados.di.unipi.it/storage/paper_files/2006_advske_PC.pdf|Algorithmic skeletons meeting grids]]// by Aldinucci, Danelutto, Parallel Computing 32 (2006) 449–462, extending the principles of Cole's manifesto.    * Paper //[[http://calvados.di.unipi.it/storage/paper_files/2006_advske_PC.pdf|Algorithmic skeletons meeting grids]]// by Aldinucci, Danelutto, Parallel Computing 32 (2006) 449–462, extending the principles of Cole's manifesto. 
   * P3L paper [[http://calvados.di.unipi.it/storage/paper_files/1995_p3l_concurrency.pdf|Draft]] here.    * P3L paper [[http://calvados.di.unipi.it/storage/paper_files/1995_p3l_concurrency.pdf|Draft]] here. 
-  * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/mdf_paper.pdf|Paper]] introducing the macro data flow implementation model for skeletons +  * [[http://backus.di.unipi.it/~marcod/SPM/mdf_paper.pdf|Paper]] introducing the macro data flow implementation model for skeletons 
-  * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/assistmdf.pdf|Paper]] comparing template based and macro data flow based implementation of the ASSIST parmod skeleton (//An alternative implementation schema for ASSIST parmod// by M. Danelutto, C. Migliore & C. Pantaleo).+  * [[http://backus.di.unipi.it/~marcod/SPM/assistmdf.pdf|Paper]] comparing template based and macro data flow based implementation of the ASSIST parmod skeleton (//An alternative implementation schema for ASSIST parmod// by M. Danelutto, C. Migliore & C. Pantaleo).
   * [[http://www.di.unipi.it/~aldinuc/papers/2007_SCPE_muskel.pdf|Muskel: an expandable skeleton environment]] by M. Aldinucci, M. Danelutto and P. Dazzi (paper on Muskel expandability through macro data flow graphs)   * [[http://www.di.unipi.it/~aldinuc/papers/2007_SCPE_muskel.pdf|Muskel: an expandable skeleton environment]] by M. Aldinucci, M. Danelutto and P. Dazzi (paper on Muskel expandability through macro data flow graphs)
-  * Structured and unstructured parallelism exploitation using macro data flow. [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/IC.59_PAPP06_reading.pdf|//Joint Structured/Unstructured Parallelism Exploitation in muskel//]], by Danelutto, Dazzi, Proc. of ICCS: Intl. Conference on Computational Science, Workshop on Practical Aspects of High-level Parallel Programming, LNCS Springer, 2006. +  * Structured and unstructured parallelism exploitation using macro data flow. [[http://backus.di.unipi.it/~marcod/SPM/IC.59_PAPP06_reading.pdf|//Joint Structured/Unstructured Parallelism Exploitation in muskel//]], by Danelutto, Dazzi, Proc. of ICCS: Intl. Conference on Computational Science, Workshop on Practical Aspects of High-level Parallel Programming, LNCS Springer, 2006. 
   * Skeleton semantics. One [[http://www.di.unipi.it/~aldinuc/paper_files/2005_semantics_CLSS.pdf|paper]] from our group in Pisa (//Skeleton-based parallel programming: Functional and parallel semantics in a single shot// by Aldinucci, Danelutto, Computer Languages, Systems & Structures 33 (2007) pages 179 – 192. Another [[http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=04457103|paper]] by Mario Leyton (//Type Safe Algorithmic Skeletons// by Leyton, Caromel, 16th Euromicro PDP conference, Toulouse 2008).    * Skeleton semantics. One [[http://www.di.unipi.it/~aldinuc/paper_files/2005_semantics_CLSS.pdf|paper]] from our group in Pisa (//Skeleton-based parallel programming: Functional and parallel semantics in a single shot// by Aldinucci, Danelutto, Computer Languages, Systems & Structures 33 (2007) pages 179 – 192. Another [[http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=04457103|paper]] by Mario Leyton (//Type Safe Algorithmic Skeletons// by Leyton, Caromel, 16th Euromicro PDP conference, Toulouse 2008). 
   * Performance modeling of skeleton implementations. The notes "ASE" by M. Vanneschi, edited by SEU, have a chapter on analytical modelling of skeleton, which is basically what we used in this course (this is in Italian, unfortunately). The book mentioned above //Introduction to parallel computing// ([[http://www.amazon.com/Introduction-Parallel-Computing-Ananth-Grama/dp/0201648652|Amazon pointer]]) by Grama et al. has also a chapter with the definitions of the measures we used to evaluate performance.    * Performance modeling of skeleton implementations. The notes "ASE" by M. Vanneschi, edited by SEU, have a chapter on analytical modelling of skeleton, which is basically what we used in this course (this is in Italian, unfortunately). The book mentioned above //Introduction to parallel computing// ([[http://www.amazon.com/Introduction-Parallel-Computing-Ananth-Grama/dp/0201648652|Amazon pointer]]) by Grama et al. has also a chapter with the definitions of the measures we used to evaluate performance. 
Linea 41: Linea 45:
 === NEW! === === NEW! ===
   * A fresh look at the parallel programming problems: [[http://delivery.acm.org/10.1145/1570000/1562783/p56-asanovic.pdf?key1=1562783&key2=4491499521&coll=portal&dl=ACM&ip=131.114.88.241&CFID=66597108&CFTOKEN=59109785|A View of the Parallel Computing Landscape]] by Krste AsAnoViC, rAstisLAV boDiK, JAmes DemmeL, tonY KeAVenY, Kurt KeutZer, John KubiAtoWiCZ, neLson morGAn, DAViD PAtterson, KoushiK sen, John WAWrZYneK, DAViD WesseL, AnD KAtherine YeLiCK.    * A fresh look at the parallel programming problems: [[http://delivery.acm.org/10.1145/1570000/1562783/p56-asanovic.pdf?key1=1562783&key2=4491499521&coll=portal&dl=ACM&ip=131.114.88.241&CFID=66597108&CFTOKEN=59109785|A View of the Parallel Computing Landscape]] by Krste AsAnoViC, rAstisLAV boDiK, JAmes DemmeL, tonY KeAVenY, Kurt KeutZer, John KubiAtoWiCZ, neLson morGAn, DAViD PAtterson, KoushiK sen, John WAWrZYneK, DAViD WesseL, AnD KAtherine YeLiCK. 
- 
 ==== Target architectures (sw) ==== ==== Target architectures (sw) ====
 === Non structured === === Non structured ===
   * Sample POSIX/TCP code (pipeline)    * Sample POSIX/TCP code (pipeline) 
-    * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/main_thread.cpp|Code]] for opening two connections (server and client) with pthreads +    * [[http://backus.di.unipi.it/~marcod/SPM/main_thread.cpp|Code]] for opening two connections (server and client) with pthreads 
-    * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/main_openmp.cpp|Code]] for opening two connections (server and client) with OpenMP +    * [[http://backus.di.unipi.it/~marcod/SPM/main_openmp.cpp|Code]] for opening two connections (server and client) with OpenMP 
-    * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/pipeline1.tgz|Code]] for the Pipeline example (naif version, only integers, connections opened for each communication) +    * [[http://backus.di.unipi.it/~marcod/SPM/pipeline1.tgz|Code]] for the Pipeline example (naif version, only integers, connections opened for each communication) 
-    * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/rts.tgz|Code]] for the RTS answering discovery messages +    * [[http://backus.di.unipi.it/~marcod/SPM/rts.tgz|Code]] for the RTS answering discovery messages 
-    * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/discoverer.cpp|Code]] for the discoverer process +    * [[http://backus.di.unipi.it/~marcod/SPM/discoverer.cpp|Code]] for the discoverer process 
-    * [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/omp_stage.cpp|Code]] for the enhanced, standalone Pipeline example+    * [[http://backus.di.unipi.it/~marcod/SPM/omp_stage.cpp|Code]] for the enhanced, standalone Pipeline example
   * OpenMP   * OpenMP
     * [[http://openmp.org/wp/|Home page]]     * [[http://openmp.org/wp/|Home page]]
Linea 78: Linea 81:
 Java based  Java based 
   * ProActive/Calcium home page    * ProActive/Calcium home page 
-    * [[http://proactive.inria.fr/Home page]]+    * [[http://proactive.inria.fr|Home page]]
     * Mario Leyton has recently released a new version of Calcium, which is named Skandium. This is the [[http://skandium.niclabs.cl|Skandium home page]] where you can download code (GPL) and documentation.     * Mario Leyton has recently released a new version of Calcium, which is named Skandium. This is the [[http://skandium.niclabs.cl|Skandium home page]] where you can download code (GPL) and documentation.
   * Behavioural skeletons   * Behavioural skeletons
     * Behavioural skeletons run on top of ProActive and provide rule based autonomic managers of non functional features (performance). This is the [[http://gridcomp.ercim.org/content/view/26/34/|home page]] within the GridCOMP project web pages.      * Behavioural skeletons run on top of ProActive and provide rule based autonomic managers of non functional features (performance). This is the [[http://gridcomp.ercim.org/content/view/26/34/|home page]] within the GridCOMP project web pages. 
   * Muskel    * Muskel 
-    * Muskel [[http://cotognata.di.unipi.it/~marcodanelutto/wiki/doku.php?id=muskel|home page]] +    * Muskel [[http://backus.di.unipi.it/~marcod/wiki/doku.php?id=muskel|home page]] 
-    * Download muskel from [[http://cotognata.di.unipi.it/~marcodanelutto/SPM/muskel.tgz|this link]]+    * Download muskel from [[http://backus.di.unipi.it/~marcod/SPM/muskel.tgz|this link]]
  
 AOP/annotations based AOP/annotations based
Linea 93: Linea 96:
   * OcamlP3L    * OcamlP3L 
     * This is an implementation of P3L written in Ocaml, the french dialect of ML ([[http://ocamlp3l.inria.fr/eng.htm|home page]]).     * This is an implementation of P3L written in Ocaml, the french dialect of ML ([[http://ocamlp3l.inria.fr/eng.htm|home page]]).
-  * Skipper +  * Skipper  
     * Several version of Skipper was developed by J. Serot at LASMEA, here is the [[http://wwwlasmea.univ-bpclermont.fr/Personnel/Jocelyn.Serot/skipperd.html|home page]] of the last version, Skipper-D. Skipper adopts a macro data flow implementation.     * Several version of Skipper was developed by J. Serot at LASMEA, here is the [[http://wwwlasmea.univ-bpclermont.fr/Personnel/Jocelyn.Serot/skipperd.html|home page]] of the last version, Skipper-D. Skipper adopts a macro data flow implementation.
    
 +=== Notes === 
 +  * [[http://backus.di.unipi.it/~marcod/Tools/ProactiveScaLab.pdf|Notes]] on components with ProActive and SCA Tuscany (draft, all the examples detailed have been tested, but there are more recent versions of both ProActive and Tuscany SCA) 
magistraleinformaticanetworking/spm/sdpm09support.1263289606.txt.gz · Ultima modifica: 12/01/2010 alle 09:46 (13 anni fa) da Marco Danelutto