At the end of this course, the students; 1) Learn fundamental concepts of parallel programming. 2) Learn parallelism, their principles and structures. 3) Understand the basics of parallel machine structure. 4) Learn parallel algorithm design, analyze and implementation. 5) Understand the possible limitations of parallel processing.
MODE OF DELIVERY
Face to face
PRE-REQUISITES OF THE COURSE
No
RECOMMENDED OPTIONAL PROGRAMME COMPONENT
None
COURSE DEFINITION
Parallel programming techniques. Classification of parallel processing systems. Parallel computer architectures. A comprehensive study of basic techniques: Parallel Computer Models; Message-Passing Computing; Pipelined Computations; Programming with Shared Memory; Algorithms and Applications connected with Parallel Processing.
COURSE CONTENTS
WEEK
TOPICS
1st Week
Parallel programming techniques.
2nd Week
Parallel programming techniques.
3rd Week
Parallel programming techniques.
4th Week
Parallel programming techniques.
5th Week
Classification of parallel processing systems.
6th Week
Classification of parallel processing systems.
7th Week
Classification of parallel processing systems.
8th Week
Mid-term
9th Week
Parallel computer architectures.
10th Week
Parallel computer architectures.
11th Week
Parallel computer architectures.
12th Week
Parallel computer architectures.
13th Week
A comprehensive study of basic techniques: Parallel Computer Models; Message-Passing Computing; Pipelined Computations; Programming with Shared Memory; Algorithms and Applications connected with Parallel Processing.
14th Week
A comprehensive study of basic techniques: Parallel Computer Models; Message-Passing Computing; Pipelined Computations; Programming with Shared Memory; Algorithms and Applications connected with Parallel Processing.
RECOMENDED OR REQUIRED READING
1. Introduction to Parallel Computing, V. Kumar, A. Grama, A. Gupta and G. Karypis, V. Kumar (second edition), 2003 2. Addison Wesley Parallel Programming with MPI, P. Pacheco, Morgan Kaufmann Publishers, Inc., 1997. 3. MPI Related Materials Scalable Parallel Computing, Kai Hwang and Zhiwei Xu, 2000