Back close

Course Detail

Course Name High Performance Computing
Course Code 26CSC346
Program 5 Year Integrated M.Sc in Data Science
Credits 3
Campus Coimbatore

Syllabus

Unit 1

Introduction to HPC architectures: Shared and Distributed memory architectures, Multiprocessor Architecture. Parallel Processing Concepts, Levels and model of parallelism: instruction, transaction, task, thread, memory, function, data flow models, demand-driven computation.

Unit 2

Parallel architectures: superscalar architectures, multi-core, multi-threaded, server and cloud; Fundamental design issues in HPC: Load balancing, scheduling, synchronization and resource management.

Unit 3

Operating systems for scalable HPC, Parallel languages and programming environments, Open MP, Pthread, MPI, java, Cilk, Performance analysis of parallel algorithms, Fundamental limitations in HPC: bandwidth, latency, and latency hiding techniques

Unit 4

Scalable storage systems: RAID, SSD cache, SAS, SAN; HPC based on cluster, cloud, and grid computing: economic model, infrastructure, platform, computation as service; Accelerated HPC: architecture, programming and typical accelerated system with GPU, FPGA

Unit 5

Power-aware HPC Design: computing and communication, processing, memory design, interconnect design, power management; Advanced topics: peta scale computing; big data processing, optics in HPC, quantum computers.

Text Books / References

Text Books:

  1. George Hager, Gerhard Wellein – Introduction to High-Performance Computing for Scientists and Engineers, CRC Press, Taylor & Francis Group, 2019. Revised edition
  2. Vipin Kumar, Ananth Grama, Anshul Gupta, George Karypis. Introduction to Parallel Computing (2nd ed.). Pearson India. 2003.
  3. John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach (5th ed.). Elsevier India Pvt. Ltd. 2011.

References:

  1. David B. Kirk and Wen-mei W. Hwu. Programming Massively Parallel Processors: A Hands-On Approach (1st ed.). Elsevier India Pvt. Ltd. 2010.
  2. Michael T. Heath. Scientific Computing: An Introductory Survey (2nd ed.). McGraw Hill Education (India) Private Limited, 2011

Introduction

The HPC course objectives focus on enabling participants to understand parallel computing fundamentals, utilize high-performance cluster architectures, and develop proficiency in parallel programming (MPI, OpenMP) for scientific simulations. Courses aim to teach performance optimization, job scheduling, and efficient resource management for large-scale data processing

Objectives and Outcomes

Course Outcomes: After successful completion of the course, students will be able to

  • CO1: Understand and apply various levels of parallelism including instruction, transaction, task,thread,  memory, function, and data flow models.
  • CO2: Develop skills in parallel algorithm design and programming models to effectively utilize multi-core and cluster systems.
  • CO3: Learn techniques to measure and analyse performance of parallel algorithms
  • CO4: Analyse and compare scalable storage systems including RAID, SSD cache, SAS, and SAN.
  • CO5: Design and implement high-performance solutions for complex and large-scale computing

CO-PO Mapping:

  PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1 3 2 3 2 3 3         3  
CO2 3 2 3 2 3 3         3  
CO3 3 2 3 2 3 3         3  
CO4 3 2 3 2 3 3         3  
CO5 3 2 3 2 3 3         3  

DISCLAIMER: The appearance of external links on this web site does not constitute endorsement by the School of Biotechnology/Amrita Vishwa Vidyapeetham or the information, products or services contained therein. For other than authorized activities, the Amrita Vishwa Vidyapeetham does not exercise any editorial control over the information you may find at these locations. These links are provided consistent with the stated purpose of this web site.

Admissions Apply Now