CENG 441

Introduction to Parallel Programming

Introduction to the programming techniques to effectively utilize modern multicore computers. Identifying the parallelism, naming shared data, synchronizing threads, the latency and bandwidth associated with communication, analyzing & improving parallel performance, parallel programming tools, miscallenous lab works & exercises.

Topics
Inroduction to Parallel Computing
Paralle Programming Platforms
Princibles of Algorithm Design I
Princibles of Algorithm Design II
Shared Memory and Threads
Implementing Domain Decompositions OpenMP
Confronting Race Conditions OpenMP
Implementing Task Decompositions OpenMP
Programming Shared Address Space Platforms – Thread Based Programming
Analyzing Parallel Performance
Improving Parallel Performance
Programming Using MPI Paradigm Part 1 ms-MPI Install Setup
MPI Exercise ms-MPI
Programming Using MPI Paradigm Part 2 MPI Lab. Experiments