|
Concurrent and Distributed Programming and Systems 2, 2022/2023
Thursday 9:50-13:00
The evaluation of work during the semester (homeworks) forms 50% of the
final grade, at least 40% are required.
- Threads. Thread state diagram. Shared variables, atomicity of memory
accesses, critical regions. Decker's and Peterson's algorithms, assumptions
on memory accesses. POSIX threads (pthread), mutexes, condition variables.
- OCCAM
- Channel vs. point-to-point message passing
PVM, Parallel Virtual Machine
MPI, Message Passing Interface
HPC, High-Performance Computing
Thread safety in communication libraries
Homeworks
- HW1: Implement an OCCAM program for one-dimensional simulation of
LIFE.
- HW2: Implement a PVM program for one-dimensional simulation of LIFE.
- HW3: Implement an MPI (MPICH) program for one-dimensional simulation of LIFE.
- HW4: Report programming environments used on Top500 HPC
clusters (not necessarily through all 500 clusters)
- HW5: Implement a pingpong benchmark in MPI (MPICH).
- HW6: Implement a symmetrical threaded pingpong benchmark in MPI (MPICH).
Run experiments to measure min, avg, max roundtrip time for 2 processes.
Updated by
Tomas Plachetka,
May/13/2023
|