Questa è una vecchia versione del documento!
Distributed systems: paradigms and models
This page will host all the support material relative to the course: useful links, teacher's notes, articles, etc.
The notes relative to the structured parallel programming models that were supposed to be available before Christmas will not be published before end of January (presumably). We apologize for this. All the course lessons are now available on the course web pages (slides and recordings) and we updated the support material web page in such a way most of the arguments dealt with in the course have some pointers to online documentation and/or already published papers.
Logistics
This link shows you the
position of all the buildings somehow relevant to the Master
-
Admin
Link to the secretary web page for the Master
Link to the page with all the (preliminary) programs of the courses (in English)
Link to St. Anna master web page (mainly for registration/enrollment process)===== Course support material and links =====
Course introduction and motivations
Link to the Top500.org home page
Presentation by Prof. Antonio González on Elastic Parallel Architectures, at Europar'2009
-
Tilera multicore chip home page
The book
Introduction to parallel computing (
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
Skeletons
-
Cole's PhD
thesis (gzipped postscript)
-
-
Paper introducing the macro data flow implementation model for skeletons
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).
-
Skeleton semantics. One
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
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 (
Amazon pointer) by Grama et al. has also a chapter with the definitions of the measures we used to evaluate performance.
-
Design patterns
Amazon pointer to
Design Patterns: Elements of Reusable Object-Oriented Software book by Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides (this is not relative to “parallel” patterns, actually)
Amazon pointer to
Patterns for Parallel Programming by Mattson, Sanders and Massingill, this is the book of parallel design patterns mentioned during the lessons
-
1 2 3 4 : pointers to papers by Massingill et al. illustrating parallel design patterns.
NEW!
A fresh look at the parallel programming problems:
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)
Non structured
Structured
C(++) + MPI based
eSkel
eSkel home page. This is the skeleton library maintained at the group of Murray Cole in Edinburgh.
Muesli
Muesli is the skeleton library by Herbert Kuchen at Muenster University.
Here is the library homepage.
SkeTo
SkeTo is the skeleton library running on top of MPI by Tokyo skeleton group. The
home page has links to download the library and the relative documentation.
MALLBA
This is a project run by Spanish Univ. Here is the project
home page
ASSIST
This is not targeting MPI, actually (it uses a POSIX/TCP target). Most of the concepts in ASSIST come from the skeleton and coordination language frameworks. ASSIST home page is
here
Java based
AOP/annotations based
ML based
OcamlP3L
This is an implementation of P3L written in Ocaml, the french dialect of ML (
home page).
Skipper
Several version of Skipper was developed by J. Serot at LASMEA, here is the
home page of the last version, Skipper-D. Skipper adopts a macro data flow implementation.