
and Electrical Engineering
Scope of Parallel Computing: Limits to parallelizability, NC-reductions, P-completeness; Parallel programming platforms; Introduction to high performance computing and parallel programming: shared memory parallel programming, distributed parallel programming, data parallel and task parallel models, parallel programming patterns, Amdahl's Law; Parallel algorithm design: decomposition, task and interactions; Communication models: synchronous and asynchronous; analytical modeling of parallel programs; Programming using message passing paradigm and shared address space: Threads, OpenMP, Intel TBB, MPI, CUDA, Hybrid parallel programming by combining pThreads and MPI calls; Case studies: Image processing, analog/digital circuit simulation, smart grid;
Texts:
1. A. Grama, G. Karypis, V. Kumar, A. Gupta, “Introduction to parallel computing”, 2nd Edition, Addison-Wesley, 2004.
2. Joseph Ja'Ja', “An introduction to parallel algorithms”, 1st Edition, Addison-Wesley, 1992
References:
1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, “Introduction to Algorithms”, 3rd Edition, PHI Learning, 2010.
2. Frank Thomson Leighton, “Introduction to Parallel Algorithms and Architectures: Arrays, Trees and Hypercubes”, 1st Edition, Morgan Kaufmann Publishers, 1991.
3. Michael T. Heath, Abhiram Ranade, Robert S. Schreiber, “Algorithms for Parallel Processing”, 1st Edition, Springer, 1998.
4. Karl Heinz Hoffmann, A. Meyer, “Parallel Algorithms and Cluster Computing: Implementations, Algorithms and Applications”, Illustrated Edition, Springer, 2006.
5. Kontoghiorghes E. J., “Parallel Algorithms for Linear Models: Numerical Methods and Estimation Problems”, Springer, 2000.
6. Henri Casanova, Arnaud Legrand, Yves Robert, “Parallel Algorithms”, Taylor & Francis/BSP Books, 2008.
7. Jacques M. Bahi, Sylvain Contassot-vivier, Raphael Couturier, “Parallel Iterative Algorithms: From Sequential to Grid Computing”, Chapman & Hall/crc, 2007