Introduction to computer architecture for HPC

In this course, two key aspects of High Performance Computing are addressed.
First, the main elements of modern computer and CPU architecture are reviewed, and the most important techniques for
single-core code optimization are examined. Second, the fundamental principles of parallel computation are introduced and defined.