CSE1002 - Problem Solving using Python_1.0 (1)
CSE1002 - Problem Solving using Python_1.0 (1)
CO-PO Mapping
Course
Course Outcome Statement
Outcomes PO's / PEO's
Understanding of fundamental concepts in parallel PO1, PO2, PO3,
CO1
computing. PO4, PO5
Identify and leverage common parallel computing PO1, PO2, PO3,
CO2
patterns. PO5
Assess efficiency and scalability of a parallel PO1, PO2, PO3,
CO3
algorithm/application PO4, PO5, PO6
Analyse the concepts of parallel programming PO1, PO2, PO3,
CO4
technique and familiar with several others PO4, PO5, PO6
TOTAL HOURS OF INSTRUCTIONS: 45
a
Module No. 1 Introduction to Parallel Processing 8 Hours
Overview of parallel processing landscape: why and how, types of parallelism, Flynn’s
taxonomy and brief overview of parallel architectures, practical demonstration of CCR as
an example HPC center. Basic concepts in parallel processing: formal definition of
parallelism, concepts of work, speedup, efficiency, overhead, strong and weak scaling
(Amdahl’s law, Gustafson’s law), practical considerations using parallel reduction and
parallel prefix.
Module No. 2 6 Hours
Multi-Core Programming
Multi-core programming: shared memory and shared address space, data and task
parallelism, summary of available APIs (OpenMP, TBB). Practical examples using
OpenMP and parallel merge sort, pointer jumping, parallel BFS and basic linear algebra.
Module No. 3 7 Hours
Distributed Memory Programming
Text Books
1. M. McCool, J. Reinders, A. Robison, “Structured Parallel Programming: Patterns for
Efficient Computation,” Morgan Kaufmann, 2012, ISBN-13: 9780124159938.
2. A. Grama, G. Karypis, V. Kumar, A. Gupta, “Introduction to Parallel Computing (2nd
Ed.),” Pearson, 2003, ISBN-13: 9780201648652.
References
1. H. Karau, A. Konwinski, P. Wendell, M. Zaharia, “Learning Spark: Lightning-Fast Big
Data Analysis (2nd Ed.),” O’Reilly Media, 2020, ISBN-13: 9781492050049.
2. D.B. Kirk, W.W. Hwu, “Programming Massively Parallel Processors: A Hands-on
Approach (3rd Ed.),” Morgan Kaufmann, 2010, ISBN-13: 978-0128119860..
List of Laboratory Experiments