This course introduces students to the world of High-Performance Computing (HPC), where complex computations are executed at extremely high speeds by utilizing parallel processing techniques across multiple processors. The course aims to equip students with the necessary skills to design and analyze parallel algorithms, understand the architecture of modern computing systems, and optimize programs to run efficiently on such systems.