National Institute of Technology Rourkela

राष्ट्रीय प्रौद्योगिकी संस्थान राउरकेला

ଜାତୀୟ ପ୍ରଯୁକ୍ତି ପ୍ରତିଷ୍ଠାନ ରାଉରକେଲା

An Institute of National Importance

Syllabus

Course Details

Subject {L-T-P / C} : CS6129 : Introduction To High Performance Computing { 3-0-0 / 3}

Subject Nature : Theory

Coordinator : Ashok Kumar Turuk

Syllabus

Module 1 :

Introduction to parallel computing: Motivating parallelism, scope of parallel computing
Parallel Programming platforms: Implicit Parallelism: Trends in Microprocessor Architectures, Limitations of memory system performance, Dichotomy of parallel computing platforms, Physical organization of parallel platform
Principles of parallel algorithm design: Decomposition techniques, characteristics of tasks and interactions, mapping techniques for load balancing, parallel algorithm models
Basic Comunication operations: one-to-all broadcast and all-to-one reduction, All-to-all broadcast and reduction, all-reduce and refix-sum operations, scatter and gather, all-to-all personalized communications, circular shift
Analytical modeling of parallel programs: Performance metrics for parallel system, The effect of granularity on performance, Scalability of parallel systems
Programming using the message-passing paradigm, programing shared address platforms

Course Objective

1 .

Learn parallelisation of serial program

Course Outcome

1 .

Learn techniques for parallelization, programming in OpenMP/MPI

Essential Reading

1 .

Ananth Grams, Anshul Gupta, George Karypis, Vipin Kumar, Introduction to Parallel Computing, Pearson

2 .

Peter S. Pacheco, An Introduction to Parallel Programming, Morgan Kaufman

Supplementary Reading

1 .

Ian Foster, The Sourcebook of Parallel Computing, Morgan Kaufman

2 .

Michael McCool, James Reinders , Arch Robison, Structured Parallel Programming: Patterns for Efficient Computation, Morgan Kaufman