These are my notes from taking HPCA during the Spring 2020 semester. The original notes were provided by the class itself. I used them as a base and took additional notes on top of them while watching the lectures and working through problem sets. The notes are organized as follows:
- Notes 01-10 focuses on how modern processor cores work (superscalar processors & out of order execution, etc) and is covered by the midterm.
- Notes 11-16 covers how the memory hierarchy works and how they're designed to provide good performance in a computer system.
- Notes 17-21 then cover the different aspects of computer architecture that need to be considered in order to facilitate correct and efficient execution in multi-threaded and multi-core processors.
You can download the notes here: https://github.com/andrewnguyen92/OMSCS/tree/master/HPCA
NOTE: All of the solutions or problem sets included here are solely from the class lectures. None of them are for graded assignments or tests/quizzes. I just included them in my notes because sometimes a solution video would skip a step or two while solving a problem and go straight to the answer.