EE282: Computer Systems Architecture

Spring 2026, Mondays and Wednesdays, 3:00 - 4:20 PM, Shriram 104

Instructor: Caroline Trippel, Christos Kozyrakis
Teaching Assistants: Jane Nhi Nguyen, Kira Tran, Noah Anderson
Staff Email: ee282-spr2526-staff@lists.stanford.edu

Canvas: Class Homepage
Ed: Class Homepage
GradeScope: Class Homepage

CGOE students have 1 week to finish the in-class exercises using Gradescope within 1 week after the lecture recording is available.
Syllabus: PDF

  EE282 covers key hardware and software topics that are relevant for architecting advanced computer systems. Examples include: out-of-order processors, multi-level cache hierarchies, main memory systems, multithreading and vector techniques, GPUs and accelerators, virtualization, virtual memory, datacenter architecture, advanced IO systems, and non-volatile storage. Programming assignments include: simulation of multi-core processor designs to characterize performance, design and implementation of advanced processor optimizations, and formal verification of an open-source processor.
  EE282 is appropriate for undergraduate and graduate students specializing in the broad field of computer systems. It is also appropriate for other EE and CS students who want to understand, program, and make efficient use of modern computer systems of any scale in their day-to-day work.

News (top is most recent)

  • (03/31) Problem Set released.
  • Welcome to EE282!

Schedule

Required Textbook:
HP: J. Hennessy & D. Patterson, Computer Architecture: A Quantitative Approach, 7th edition.
MC: Morgan Claypool Synthesis Lectures (available through the library using your SUID).

Date[Lecture #] TopicReading AssignmentReference Problems
[Due date]
Slides/
Notes
3/30 [1] Introduction, Review of Prerequisites
Lecturer: Christos Kozyrakis
[Prerequisite material] HP: Appendices A.{1-8}, B.{1-3}, C.{1-2, 4, 6}, Sections 1.{1-13}
Slides
Recording
4/1 [2] Advanced Caches I: Multi-level caches, Optimizations
Lecturer: Caroline Trippel
HP: Sections 2.{1, 3, 6, 7}, Appendix B.{3, 6} Slides
Recording
4/6 [3] Advanced Caches II: Optimizations (continued), Prefetching
Lecturer: Caroline Trippel
HP: Sections 2.5, 5.{1, 2} Problems 1 & 2 [4/16] Slides
Recording
4/8 [4] Coherence problem, Cache coherence
Lecturer: Caroline Trippel
MC: A Primer on Memory Consistency and Cache Coherence, Second Edition: Chapters 2, 6
HP: Section 5.{3,4}
Problem 3 [4/23] Prog. Assign 1 [5/7] Slides
Recording
4/13 [5] Synchronization
Lecturer: Caroline Trippel
HP: Section 5.5
4/15 [6] Memory Consistency
Lecturer: Caroline Trippel
MC: A Primer on Memory Consistency and Cache
Coherence, Second Edition
: Chapters 3, 4, 5.{1-2}
HP: Section 5.{6-7}
Problem 4 [4/23]
4/20 [7] Main Memory
Lecturer: Caroline Trippel
HP: Section 2.2 Problem 5 [4/30]
4/22 [8] Out-of-Order Processors I: Dynamic Scheduling and Branch Prediction
Lecturer: Christos Kozyrakis
HP: Section 3.{1-5} Problem 6 [4/30]
4/27 [9] Out-of-Order Processors II: Speculation and Superscalar
Lecturer: Christos Kozyrakis
HP: Section 3.{6-10} Problem 7 [4/30]
Prog. Assign. 2 [5/16]
4/29 [10] Multithreading
Lecturer: Christos Kozyrakis
HP: Section 3.{11} Problem 8 [5/3]
5/4 [11] Vectors and SIMD
Lecturer: Christos Kozyrakis
HP: Sections 4.{1-3, 5}, Appendix G Problem 9 [5/14]
5/5 Midterm Exam
Time: 90-180 min, 12:00AM-11:59PM
Lectures 1-10
5/6 [12] GPUs
Guest Lecturer:
Michael Pellauer
HP: Sections 4.{4, 6-8} Problem 10 [5/21]
5/11 [13] AI Processors
Guest Lecturer:
Thierry Tambe
Understanding Matrix Multiplication on a Weight-Stationary Systolic Architecture
Roofline: an insightful visual performance model for multicore architectures
Problem 11 [5/21]
5/13 [14] Virtualization
Lecturer: Christos Kozyrakis
HP: Section 6.{1-3}
MC: Hardware and Software Support for Virtualization: Chapters 1-4 (Optional)
Problem 12 [5/23]
5/18 [15] Advanced I/O & Networking
Lecturer: Christos Kozyrakis
HP: HP Section 6.5 Appendix F.{1-2}MC: Hardware and Software Support for Virtualization: Chapter 6 (optional)
Problem 13 [5/28]
Prog. Assign. 3 [6/3]
5/20 [16] Advanced Memory Management
Lecturer: Caroline Trippel
MC: Hardware and Software Support for Virtualization: Chapter 1,2,4,5
HP: Appendix L
Problem 14 [5/28]
5/25 Memorial Day (No Classes)
5/27 [17] Non-volatile memory
Lecturer: Christos Kozyrakis
HP: Section 6.5, Appendix D.2
Flash storage memory by Adam Leventhal
Problem 15 [6/4]
6/1 [18] Datacenter Hardware/Management
Lecturer: Christos Kozyrakis
HP: Chapter 6 HP Sections 6.{4, 6-9}
6/3 [19] Microarchitectural Attacks and Defenses
Lecturer: Caroline Trippel
Opening Pandora’s Box: A Systematic Study of New Ways Microarchitecture Can Leak Private Data Spectre Attacks: Exploiting Speculative Execution
6/6 Final Exam
(8:30 AM - 11:30 AM PDT)
Shriram 104
Lectures 1-19

Review Session Schedule

Review Session # Date Topics
Review Session 1 4/3 Cache Optimizations
Review Session 2 4/10 Cache Coherence, Programming Assignment 1
Review Session 3 4/17 Memory Consistency Models, Synchronization, and Main Memory
Review Session 4 4/24 Branch Prediction, Instruction Scheduling, Multithreading
Review Session 5 5/1 Midterm Review
Review Session 6 5/8 Vectors, Programming Assignment 2
Review Session 7 5/15 Virtualization, Accelerators
Review Session 8 5/22 Advanced Memory Management, I/O, and Networking
Review Session 9 5/29 Non‑volatile Memory
Review Session 10 6/5 Final Exam Review

Homework and Projects

Assignments include a Problem Set and 3 Programming Assignments. The Problem Set consists of 15 questions. Each problem within the set has a reference lecture and the corresponding due date is put up on the lecture schedule. You will work on all assignments in groups of 2 students. All assignments are due by 11:59 PM PT on the dates indicated on the assignment in the schedule. Solutions to problem sets will be available online shortly thereafter. All assignments should be submitted through GradeScope.

There will be no late days.

Logistics

Announcements: Visit this web page regularly to access all the handouts, solutions, and announcements. Please check your email regularly as well for announcements from Ed!

Office Hours:

  • Caroline Trippel: Wednesdays 4:20 PM - 5:20 PM, Gates 470
  • Christos Kozyrakis: Mondays 4:20 PM - 5:20 PM, Gates 444
  • Noah Anderson:
  • Kira Tran:
  • Jane Nguyen:
  • Review Sessions:

  • Fridays, 2:30PM - 3:20PM, in-person at Skilling Auditorium and over zoom and it is recorded.
  • Exams: There will be one online midterm and one in-person final exam.

    Tentative Grading:

    CategoryGrade %Notes
    Attendance and Participation 5% 3 conditional absence “passes” (see Course Policies in syllabus);
    Arrival/departure > 10 min late/early counts as an absence
    Problem Set 5%
    3 Programming Assignments 15%
    Midterm 15%
    Final 60%

    Attendance:
    You are expected to attend the lectures in person. This is your opportunity to ask questions, contribute answers and insights, and affect the nature of the class. Also note that the lecture notes and the textbook are not guaranteed to capture 100% of every topic discussed aloud during lecture.

    The lecture notes will be made available before class. During the lectures, there will also be in-class exercises which you will be given time to work on and discuss with your neighbors. You will submit answers via Google Forms + tinyurl. CGOE students are expected to complete the in-class exercises within 1 week after the lecture recording is available.

    Collaboration: See: honor code and collaboration for some general guidelines, which apply to both project assignments and problem sets. In general, collaboration is encouraged subject to the following guidelines:

    CGOE Video Recording Disclaimer: Video cameras located in the back of the room will capture the instructor presentations in this course. For your convenience, you can access these recordings by logging into the course Canvas site. These recordings might be reused in other Stanford courses, viewed by other Stanford students, faculty, or staff, or used for other education and research purposes. Note that while the cameras are positioned with the intention of recording only the instructor, occasionally a part of your image or voice might be incidentally captured. If you have questions, please contact a member of the teaching team.

    Adapted from a template by Andreas Viklund.