Course11110161177 lectures
High Performance Scientific Computing
Prof. Shivasubramanian Gopalakrishnan Prof. Om Jadhav Prof. S Vamshi Krishna Prof. Ashish Kuvelkar · IIT Bombay
Lectures
week-00
week-01
- Week 1: Lecture 1: Introduction to Operating System.
- Week 1: Lecture 2: Linux Kernel Explained
- Week 1: Lecture 3: Mastering Linux Directory and File Management
- Week 1: Lecture 4: Understanding File Permissions and Ownership in Linux
- Week 1: Lecture 5: Mastering Linux Text Processing and File Management
- Week 1: Lecture 6: Linux Memory and Networking Commands
week-02
- Week 2: Lecture 1: Understanding Shell Scripting: Parent-Child Processes and User Input Handling
- Week 2: Lecture 2: Shell Scripting Tutorial for Beginners
- Week 2: Lecture 3: Introduction to High-Performance Computing (HPC) and Its Key Components
- Week 2: Lecture 4: Exploring Computing Platform Architecture and CPU Optimization Techniques
- Week 2: Lecture 5: Hierarchical Memory Systems and Scalable Architectures in Large-Scale Computing
- Week 2: Lecture 6: Concurrency and Synchronization in Parallel Programming:Techniques and Frameworks
week-03
- Week 3: Lecture 1: Need for Parallel Computing
- Week 3: Lecture 2: Role of Numerical Models in Solving complex problems on Computers
- Week 3: Lecture 3: Common Challenges with Memory in Computer Architecture
- Week 3: Lecture 4: Organization of hardware in Large HPC systems
- Week 3: Lecture 5: Architecture of Nvidias Grace Hopper Superchip
- Week 3: Lecture 6: Introduction to Shared Memory Programming using OpenMP
week-04
- Week 4: Lecture 1: Distribution of work using multiple OpenMP Threads
- Week 4: Lecture 2: Synchronization and Parallel Loops in OpenMP
- Week 4: Lecture 3: Storage attributes of different variables in OpenMP
- Week 4: Lecture 4: OpenMP Memory Model, Irregular Parallelism, and Tasks
- Week 4: Lecture 5: Parallelization of example codes using OpenMP - Part 1
- Week 4: Lecture 6: Parallelization of example codes using OpenMP - Part 2
week-05
- Week 5: Lecture 1: Introduction to Message Passing Interface (MPI)
- Week 5: Lecture 2: Sending and Receiving the messages using MPI
- Week 5: Lecture 3: Collective Communication in MPI
- Week 5: Lecture 4: Domain Decomposition
- Week 5: Lecture 5: Parallelization of example code using MPI
- Week 5: Lecture 6: Performance Analysis Frameworks for Parallel Programming
week-06
- Week 6: Lecture 1: Examples of Collective Communication in MPI: Part 1
- Week 6: Lecture 2: Examples of Collective Communication in MPI: Part 2
- Week 6: Lecture 3: Introduction to GPU Computing
- Week 6: Lecture 4: A Dive into Software Stack and Nvidia Architecture
- Week 6: Lecture 5: Comparative Analysis of NVIDIA and Intel GPU Architectures
- Week 6: Lecture 6: Understanding FLOPS and Memory Bandwidth Calculations for NVIDIA GPUs
week-07
- Week 7: Lecture 1: SIMD vs. SIMT: Thread Mapping, Scheduling, and Pipelining in NVIDIA GPUs
- Week 7: Lecture 2: Understanding 1D, 2D, and 3D Grid Arrangements Part 1
- Week 7: Lecture 3: Understanding 1D, 2D, and 3D Grid Arrangements Part 2
- Week 7: Lecture 4: Thread Block Mapping and Warp Scheduling in GPU
- Week 7: Lecture 5: Exploring Warp Scheduling and Latency Management in NVIDIA GPUs
week-08
- Week 8: Lecture 1: An Introduction to GPU Programming: Tools, Techniques, and CUDA Part - 1
- Week 8: Lecture 2: An Introduction to GPU Programming: Tools, Techniques, and CUDA Part - 2
- Week 8: Lecture 3: Understanding NVIDIA GPU Memory Types and Efficient Memory Management Part 1
- Week 8: Lecture 4: Understanding NVIDIA GPU Memory Types and Efficient Memory Management Part 2
- Week 8: Lecture 5: Understanding Third Divergence in Parallel Computing and Its Impact on GPU Perf..
- Week 8: Lecture 6: Memory Layouts and Their Role in Optimizing Computing Performance
week-09
- Week 9: Lecture 1: CUDA Program Compilation and Execution: A Step-by-Step Guide Part 1
- Week 9: Lecture 2: CUDA Program Compilation and Execution: A Step-by-Step Guide Part 2
- Week 9: Lecture 3: Introduction to OpenACC
- Week 9: Lecture 4: Parallelization of loops using OpenACC
- Week 9: Lecture 5: OpenACC Data Management
- Week 9: Lecture 6: OpenACC Loop Optimizations
- Week 9: Lecture 7: Implementing Asynchronous behavior in OpenACC
- Week 9: Lecture 8: Programming for multiple-device architecture using OpenACC
week-10
- Week 10: Lecture 1: Profiling and Parallelizing the serial code using OpenACC
- Week 10: Lecture 2: Programming for multiple-device architecture using MPI and CUDA
- Week 10: Lecture 3: Programming for multiple-device architecture using MPI and OpenACC
- Week 10: Lecture 4: Profiling Serial codes using GNU gprof
- Week 10: Lecture 5: Profiling and Debugging of the codes using Valgrind
- Week 10: Lecture 6: Code Debugging using GDB
week-11
- Week 11: Lecture 1: Performance Analysis of MPI codes
- Week 11: Lecture 2: Parallel Debugging of MPI Programs using Open Source Tools
- Week 11: Lecture 3: Role of Numerical Methods in High Performance Scientific Computing
- Week 11: Lecture 4: Libraries used in High Performance Scientific Computing
- Week 11: Lecture 5: Introduction to HPC Schedulers using SLURM and PBS
- Week 11: Lecture 6: Scientific Visualization
week-12
- Week 12: Lecture 1: Revision and challenges in the future
- Week 12: Lecture 2: OpenMP Revision
- Week 12: Lecture 3: CUDA Revision
- Week 12: Lecture 4: MPI Revision
- Week 12: Lecture 5: OpenACC Revision
- Week 12: Lecture 6: Heterogeneous Computing
- Week 12: Lecture 7: Trends in Microprocessor Architectures
Live Session
Syllabus and materials
At NPTEL, as the course publishes them.
Credits and licence
- Institution
- IIT Bombay
- Department
- Mathematics
- Teacher
- Prof. Shivasubramanian Gopalakrishnan Prof. Om Jadhav Prof. S Vamshi Krishna Prof. Ashish Kuvelkar
- Level
- Undergraduate
- Language
- English
- Subjects
- Mathematics
- Source
- NPTEL
- Licence
- CC BY-NC-SA, as NPTEL states it. Non-commercial use only. NPTEL's terms
- Attribution
- NPTEL states: "Distributed under Creative Commons Attribution-ShareAlike / CC BY - NC - SA", beside a BY-NC-SA badge.
- Who can watch
- NPTEL gives no rating. Invisible Network shows it to Tweens profiles and older, judged from what the source says about it. How courses are placed
More like this
NPTEL111101100
Course
Measure Theory
62 lectures · Source's player
NPTEL111101109
Course
Calculus for Economics, Commerce and Management
41 lectures · Source's player
NPTEL111101117
Course
Galois Theory
62 lectures · Source's player
NPTEL111101137
Course
A Basic Course in Number Theory
63 lectures · Source's player
NPTEL111101153
Course
Partial Differential Equations - IITB
60 lectures · Source's player
NPTEL111101160
Course
An introduction to Point-Set-Topology Part - II
60 lectures · Source's player
NPTEL111101168
Course
Point Set Topology
42 lectures · Source's player
NPTEL111101003
Course
Elementary Numerical Analysis
40 lectures · Video
NPTEL111101005
Course
Measure and Integration
40 lectures · Video
NPTEL111101080
Course
Mathematics in India - From Vedic Period to Modern Times
40 lectures · Video
NPTEL111101115
Course
Basic Linear Algebra
42 lectures · Video
NPTEL111101116
Course
Commutative Algebra
60 lectures · Video