High Performance Computing L T P J C Pre-Requisite Nil Syllabus Version Course Objectives

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

CSE4014 HIGH PERFORMANCE COMPUTING L T P J C

3 0 0 4 4
Pre-requisite Nil Syllabus version
v1.0
Course Objectives:
1. To provide knowledge on high performance computing concepts to the students.
2. To comprehend the students how to analyze the parallel programming through OpenMP,
MPI, CUDA.
3. To teach the student how to apply job management techniques and evaluate the
performance.
Expected Course Outcome:
1. To knowledge the overview and analyze the performance metrics of high performance
computing.
2. To comprehend the various High Performance Computing Paradigms and Job
Management Systems.
3. To design and develop various applications with OpenMP, MPI and CUDA.
4. To analyze the benchmarks of high performance computing.
5. To demonstrate the various emerging trends of high performance computing.
6. To apply high performance computing concepts in problem solving.
Student Learning Outcomes (SLO): 2, 11, 17
Module:1 Introduction to High Performance Computing (HPC) 4 hours
Overview of Parallel Computers and high performance computing (HPC), History of HPC,
Numerical and HPC libraries, Performance metrics.

Module:2 HPC Paradigms 6 hours


Supercomputing, Cluster Computing, Grid Computing, Cloud Computing, Many core Computing,
Petascale Systems

Module:3 Parallel Programming - I 7 hours


Introduction to OpenMP, Parallel constructs, Runtime Library routines, Work-sharing constructs,
Scheduling clauses, Data environment clauses, atomic, master Nowait Clause, Barrier Construct,
overview of MPI, MPI Constructs, OpenMP vs MPI.

Module:4 8 hours
Job Management Systems
Batch scheduling: Condor, Slurm, SGE, PBS, Light weight Task Scheduling: Falkon, Sparrow

Module:5 Parallel Programming - II 7 hours


Introduction to GPU Computing, CUDA Programming Model, CUDA API, Simple Matrix, Multiplication
in CUDA , CUDA Memory Model, Shared Memory Matrix Multiplication, Additional CUDA API
Features

Module:6 Achieving Performance 6 hours


Measuring performance, Identifying performance bottlenecks, Partitioning applications for
heterogeneous resources, Using existing libraries and frameworks

Module:7 HPC Benchmarks 5 hours


HTC, MTC (Many Task Computing), Top 500 Super computers in the world, Top 10 Super
Computer architectural details, Exploring HPC Bechmarks: HPL, Stream.
Module:8 Recent Trends 2 hours

Total Lecture hours: 45 hours

Text Book(s)
1. Victor Eijkhout, Edmond Chow, Robert van de Geijn, Introduction to High Performance
Scientific Computing, 2nd edition, revision 2016
2. Rob Farber, CUDA Application Design and Development, Morgan Kaufmann Publishers,
2013
Reference Books
1. Zbigniew J. Czech, Introduction to parallel computing, 2nd edition, Cambridge University
Press,2016
Mode of Evaluation: CAT / Assignment / Quiz / FAT / Project / Seminar
Recommended by Board of Studies 04-04-2014
Approved by Academic Council No. 37 Date 16-06-2015

You might also like