magistraleinformaticanetworking:spd:lezioni10.11
Journal of Lessons, SPD year 2010-2011
Journal
07/03/2010 Introduction to the course — Aim and purpose, program, structure, rules and kind of final tests. — Message Passing Interface, Part 1 — The MPI standard, brief history and purpose. Message Passing programming and portability, functional and performance portability. The library approach of MPI. MPI basic concepts: communicators.
08/03 Message Passing Interface, Part 1 continued — MPI basic concepts: communicators, point to point primitives, collective primitives, datatypes; communication semantics in MPI: envelopes, local/global completion, (non)blocking operations, communication modes. Opaque Objects. Primitive datatypes.
11/03 MPI, Part 2 — MPI Datatypes: role in MPI, primitive datatypes, derived datatypes. Datatypes and data conversion/packing/unpacking. Basic Send and Receive and their differences: checking communication result, count of received items, asymmetric receives (wildcard TAG and SOURCE) and the status opaque object in receives. Derived datatypes as local opaque objects. Typemaps and type signatures of an MPI datatype. Type signatures and send-receive compatibility, different typemaps corresponding to a same type signature. Basic datatype constructors MPI_CONTIGUOUS, MPI_VECTOR.
14/03 No lesson
15/03 No lesson
18/03 MPI, Part 3 — Array and Struct Datatype Constructors: MPI_HVECTOR, MPI_INDEXED, MPI_HINDEXED, MPI_INDEX_BLOCK, MPI_STRUCT; effect of extent and size in composing datatypes in memory, upper bound and lower bound markers, related auxiliary functions: MPI_GET_ADDRESS, MPI_TYPE_SIZE, MPI_TYPE_GET_EXTENT, MPI_TYPE_CREATE_RESIZED, MPI_TYPE_GET_TRUE_EXTENT. Commit and free operations, MPI_TYPE_DUP. MPI_INIT and MPI_FINALIZE.
21/03 MPI, Part 4 — MPI Collective operations (except the ALLTOALLW and reduce/scan operations).
22/03 MPI, Part 5 — MPI Collective operations ALLTOALLW and reduce/scan; user-defined reduction operators. Groups and Communicators: semantics (local versus global), creation and manipulation primitives.
25/03 24/03 MPI, Part 6 — Communication modes: Buffered, Ready, Synchronous. Attaching buffers to MPI: semantics and primitives. Incomplete communications: semantics, MPI_REQUEST opaque objects, MPI_GET_STATUS. Semantics of Incomplete Sends with modes, Incomplete Receive. Semantics and use of MPI_TEST and MPI_WAIT primitives in the plain, *SOME, *ANY and *ALL variants. Brief description of MPI_CANCEL and MPI_REQUEST_FREE.
28/03 Assist, Part 1 — Recap on Parallel Skeleton Languages, introduction to a line of SPP languages (co-)developed at the C.S. Dept. : P3L, OcamlP3L, SKIE, ASSIST. See Assist Tutorials on the course main page.
29/03 MPI lab time bring your laptops!
01/04 Assist, Part 2
29/04
Coarse grain and Parallel Bridging models — Recap of the RAM model; the Parallel RAM (PRAM) model of algorithmic cost. Theoretical vs realistic cost models, and the quest for parallel bridging models. Modeling communication abstracting away from the network structure: QSM and LogP (mention) and the BSP model. Superstep model, cost of a superstep, cost of an algorithm. BSP can be a programming model: mention of BSPlib and NestStep / BlockLib
Doodle poll to fill :
New Doodle poll – please report
NO for unavailable times,
YES if you are sure that the time slot is free, and
(yes) if you don't know for sure.
02/05 Lesson canceled for illness
03/05 Lesson canceled for illness
06/05 Lesson canceled for illness
09/05 XtreemOS to be completed, see slides
10/05 MPI Lab time
12/05 Lesson room: Blue Room at S.Anna building, 16-18 hours (see news in the main page) BSP practice.
13/05 MPI Lab Time
16/05 From Grids to Clouds (and beyond ?) Very short survey of Grids and Service oriented architectures. Differences between Grids and Clouds. Basic definitions related to Clouds: Public/Private/Hybrid clouds, Cloudbursting. Introduction to the Contrail Research Project and to Cloud Federations.
17/05 Cloud computing: Open Nebula
19/05 Cloud computing: Open Nebula
20/05
23/05 GPU computing
24/05 Discussion on projects
26/05 GPU computing continued
27/05 The Cell Broadband Engine processor (CBE)
30/05 The Intel Thread Building Block Library (TBB) Introduction, story of the library, approach: high-level constructs, implementation over thread sets; general concepts; current structure of classes+templates over C++ with a runtime library to support them; constructs (parallel_for, parallel_reduce); use of lambda expressions; partitioners; containers (hash_map, vector, queue); types of mutexes.
Slides, Notes and References to papers
Date | Slides | Student notes | Other information |
7-8/3/2011 | Intro MPI part 1 | | Relevant Material from MPI standard:
Chapter 1: have a look at it;
Chapter 2: sec. 2.3, 2.4, 2.5.1, 2.5.4, 2.5.6, 2.6.3, 2.6.4, 2.7, 2.8;
Chapter 3: sec. 3.1, 3.2.3, 3.4; 3.5, (skim through 3.7). |
11-18/3/2011 | | | Relevant Material from MPI standard:
Chapter 3: sec. 3.2.2 - 3.2.6, 3.3;
Chapter 4: sec. 4 up to 4.1.2; 4.1.5 – 4.1.11 |
21-22/3/2011 | | | Relevant Material from MPI standard:
Chapter 5: sec up to 5.2.1, 5.3 – 5.8, 5.9, 5.11, 5.12
Chapter 6: up to 6.4 skipping intercommunicators |
24/3/2011 | | | Relevant Material from MPI standard:
Chapter 3: sec 3.4, 3.5, 3.6, 3.7; (skim through 3.8 – 3.10); 3.11 |
28/3-11/4/2011 | Slides about ASSIST, part I | | Assist coding examples |
| Slides about ASSIST, part II | | |
| Slides about ASSIST, part III Slides on ASSIST, part III B | | |
29/3/2011
12/4/2011
15/4/2011
10/5/2011 | Lab time exercises | | |
29/4/2011 | | | "Hierarchical Models and Software Tools for Parallel Programming" - LNCS 2625, cap 15
Articolo di Valiant sui Parallel Bridging Models
Link al position paper di T.H.Cormen
Pagina degli articoli di Cormen |
9/05/2011 | XtreemOS slides (used for the lesson)
XtreemOS slides (longer presentation, for reference) | | See paper Virtual Organization Support within a Grid-Wide Operating System |
12/5/2011 | | | |
13/5/2011 | | | |
16/5/2011 | Grid and Cloud Introductory Slides
presentation was updated, uploaded on 19/05 | | Foster, Kesselman, Tuecke, The Anatomy of the Grid
Craig Lee, A perspective on scientific cloud computing - HPDC2010
“The Future Of Cloud Computing” – report of EU expert group |
17/5/2011
19/5/2011
20/5/2011 | Tutorial about OpenNebula
Contrail overview
Contrail and Cloud federations | | |
27/5/2011 | | | Articolo sul processore Cell BE |
30/5/2011 | Introduction to the Thread Building Blocks | | |
magistraleinformaticanetworking/spd/lezioni10.11.txt · Ultima modifica: 19/07/2011 alle 13:47 (12 anni fa) da Massimo Coppola