Syllabus High Performance Computing - [410250] Credit Examination Scheme : 3 End-Sem (TH) : 70 Unit III Parallel Communication Basic Communication : One-to-All Broadcast, All-to-One Reduction, All-to-All Broadcast and Reduction, All-Reduce and Prefix-Sum Operations, Collective Communication using MPI : Scatter, Gather, Broadcast, Blocking and non blocking MPI, All-to-All Personalized Communication, Circular Shift, Improving the speed of some communication operations. (Chapter - 3) Unit IV Analytical Modeling of Parallel Programs Sources of Overhead in Parallel Programs, Performance Measures and Analysis : Amdahl's and Gustafson's Laws, Speedup Factor and Efficiency, Cost and Utilization, Execution Rate and Redundancy, The Effect of Granularity on Performance, Scalability of Parallel Systems, Minimum Execution Time and Minimum Cost, Optimal Execution Time, Asymptotic Analysis of Parallel Programs. Matrix Computation : Matrix-Vector Multiplication, Matrix-Matrix Multiplication. (Chapter - 4) Unit V CUDA Architecture Introduction to GPU : Introduction to GPU Architecture overview, Introduction to CUDA C- CUDA programming model, write and launch a CUDA kernel, Handling Errors, CUDA memory model, Manage communication and synchronization, Parallel programming in CUDA-C. (Chapter - 5) Unit VI High Performance Computing Applications Scope of Parallel Computing, Parallel Search Algorithms : Depth First Search(DFS), Breadth First Search(BFS), Parallel Sorting : Bubble and Merge, Distributed Computing : Document classification, Frameworks - Kuberbets, GPU Applications, Parallel Computing for AI/ML. (Chapter - 6)