CENG 444

Parallel Programming Patterns

Paralel programming, concurrency, task parallelism, synchronization patterns.

Topics
Introduction to parallel programming and design patterns
Background on parallel computing
Finding concurrency design space
Task and data decomposition patterns
Algorithm structure design space
Task parallelism pattern
Midterm
Supporting structures design space
Fork/join pattern
Implementation mechanisms design space
Synchronization/communication
Dataflow parallelism
Parallel programming examples
Parallel programming examples