magistraleinformaticanetworking:spm:spm1617lessons
Questa è una vecchia versione del documento!
Distributed Systems: Paradigms and models
Official lesson register
Lessons
Day | Hours | Argument | Blackboard | Multimedia |
---|---|---|---|---|
Sept. 19 | 2 | Course introduction. Real life examples of parallel and distributed computing. Motivations. (Partial audio video support due to laptop substitution) | blackboard (2nd hour only) | (1st hour only) |
Sept. 20 | 2 | Motivations: different kind of (parallel & distributed) devices available. Technological improvements. | ||
Sept. 21 | 2 | More on clusters: homogeneous and heterogeneous configurations, MTBF, effect of initial program deployement. Measures (latency, service time, speedup, scalability) | ||
Sept. 26 | 2 | Measures (efficiency, Amdahal & Gustafson law). Application parallelization principles. | ||
Sept. 27 | 2 | Application parallelization principles: more applications. Concurrent activity mechanisms (processes and threads) | ||
Sept. 28 | 2 | Mechanisms (and code) to set up threads and processes under Posix/Linux. | PDF tarball of the code used. | |
Oct. 3 | 2 | Techniques to contain interaction overheads. Parallel/distributed models: data parallelism, task graph. | ||
Oct. 4 | 2 | Parallel/distributed models: Work pool, Master/slave, Client/server, Pipeline (producer/consumer). Granularity of parallel computations. Mapping. | ||
Oct. 5 | 2 | Exercise: assignment of Xeon PHI account, instructions for remote access to the machine, assignment of the exercise with creation of n threads and fair termination | PDF Instructions to access PHI | (partial) |
Oct. 10 | 2 | Load balancing: static and dynamic techniques. Data and recursive decomposition, speculative decomposition. | ||
Oct. 11 | 2 | Mechanisms for thread programming: mutex, condition_variable, (async/futures and thread pool (only concepts)). RPC (rpcgen). | ||
Oct. 12 | 2 | Exercises on threads. | Exercise text Blackboard | |
Oct. 17 | 2 | Design patterns: introduction. Finding concurrency: Task and Data decomposition patterns. Group, Ordered tasks patterns. | ||
Oct. 18 | 2 | Design patterns: Finding concurrency: Data sharing and design evaluation patterns. Algorithm structure space: Organize by task, by data decomposition and by flow of data patterns. | ||
Oct. 19 | 2 | Tools and methodology for experiments. Assignment: finish second exercise given last on Oct 12 lesson | PDFsources | |
Oct. 24 | 2 | Design patterns: Supporting structure pattern space | ||
Nov. 7 | 2 | Design patterns: Distributed arrays (+ PGAS). Design patterns general picture and introduction of algorithmic skeletons. Cilk Plus with sample code | ||
Nov. 8 | 2 | Introduction to algorithmic skeletons | ||
Nov. 9 | 2 | Sort (Cilk and C++ Thread versions) | ||
Nov. 14 | 2 | Algorithmic skeletons: RISC and CISC approach, template based implementation techniques, assigment of templates to skeleton trees. Optimization of the parallelism degree. | ||
Nov. 15 | 1 | Optimization of skeleton / template composition as space search problem. Data flow based implementation of skeletons. | ||
Nov. 15 | 1 | Introduction to FastFlow. First example: 3-stage pipeline. |
magistraleinformaticanetworking/spm/spm1617lessons.1479271583.txt.gz · Ultima modifica: 16/11/2016 alle 04:46 (8 anni fa) da Massimo Torquati