Great Ideas in Computer Architecture¶
By Lisa Yan and countless semesters of CS 61C instructors. Developed in Spring 2026.
This are the course notes for the Great Ideas in Computer Architecture class at UC Berkeley.
To Spring 2026 Students: How to Use These Notes¶
These course notes cover the content you need to know from lecture. You can use them as reference as you go through the course assignments.
Come to lecture and get the high-level idea. Then, read these course notes. Alternatively, skim course notes first, then come to lecture and ask questions. Because these course notes are still in development, the latter might not always be possible.
Before attending discussion section, try the precheck exercises. Solutions are provided.
As of Spring 2026, these course notes are in active development. Due to course staff capacity, we may occasionally be unable to write course notes and will refer you to the lecture slides instead.
If you find an error in our first draft, please email cs61c@ or submit a pull request on GitHub.
Textbooks¶
Course notes are based on the following textbook references:
P&H: Computer Organization and Design RISC-V Edition: The Hardware Software Interface, Second Edition. David A. Patterson and John L. Hennessy. ISBN 0128203315.
K&R: The C Programming Language, Second Edition by Kernighan and Ritchie.
WSC: The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines. Luiz André Barroso, Jimmy Clidaras, Urs Hölzle. Morgan & Claypool Publishers. 2013
License¶
The contents of this book are licensed for free consumption under the following license: Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International (CC BY-NC-ND 4.0)
Acknowledgments¶
Our deepest gratitude goes to the many, many faculty instructors and teaching assistants who have contributed to CS 61C course materials over the years. Special thanks to CS 61C Fall 2020 instructors Dan Garcia and Bora Nikolic for recording the high-quality set of videos used to build these notes. The videos are linked where possible.