Courses

Our teaching portfolio includes Bachelor’s-level (500+-student) “Digital Design & Computer Architecture”, Master’s-level (30–50-student) “Computer Architecture”, as well as seminar (20+-student) and hands-on project (3–10-student) courses in computer architecture, genome analysis, processing in memory, heterogeneous systems, DRAM, and solid-state drives, some of which are co-led by our senior scientists. We are a strong advocate for free and open sharing of teaching and research artifacts to democratize education worldwide. Our course videos/materials are freely available online, and used by many educators, researchers and practitioners, including leading companies. Many students and universities without access to state-of-the-art computer architecture classes benefit from our online classes (see our YouTube channels here).

Fall 2024:
Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Spring 2024:
Digital Design and Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Fall 2023:
Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Spring 2023:
Digital Design and Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Fall 2022:
Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Spring 2022: 
Digital Design and Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Fall 2021:
Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Spring 2021:
Digital Design and Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Fall 2020:
Computer Architecture
Seminar in Computer Architecture
SAFARI Project & Seminars courses

Spring 2020:
Seminar in Computer Architecture
Digital Design and Computer Architecture

February 2020: Memory Systems and Memory-Centric Computing Systems: Challenges and Opportunities, (at Champéry Winter School 2020)

Fall 2019:
Seminar in Computer Architecture
Computer Architecture

Summer 2019:
Memory Systems and Memory-Centric Computing Systems: Challenges and Opportunities (at NiPS Summer School, Perugia, Italy)
Memory Systems and Memory-Centric Computing Systems: Challenges and Opportunities, Tutorial (Samos, Greece)
Memory Systems and Memory-Centric Computing Systems: Fundamentals and Recent Research (at TU Wien)

Spring 2019:
Design of Digital Circuits
Seminar in Computer Architecture

Fall 2018:
Computer Architecture
Bachelor’s Seminar on Computer Architecture

Oct 2018: Memory Systems: Fundamentals, Recent Research, Challenges, Opportunities (at Technion)

July 2018: Memory Systems and Memory-Centric Computing Systems (at HiPEAC ACACES Summer School)

Spring 2018: Design of Digital Circuits

Fall 2017:
Computer Architecture
Seminar on Hardware Acceleration for Data Processing

Spring 2017:
Digital Circuits and Computer Architecture
Seminar on Hardware Architectures for Machine Learning

Fall 2016: Seminar on Hardware Acceleration for Data Processing

Fall 2015: 18-740 Computer Architecture

Spring 2015: 18-447 Introduction to Computer Architecture

Fall 2014: 18-742 (Research in) Parallel Computer Architecture

Spring 2014: 18-447 Introduction to Computer Architecture

Fall 2013: 18-740 Computer Architecture

Summer 2013: Scalable Memory Systems (at HiPEAC ACACES Summer School)

Spring 2013: 18-447 Introduction to Computer Architecture

Fall 2012: 18-742 Parallel Computer Architecture

Spring 2012: 18-447 Introduction to Computer Architecture

Fall 2011: 15-740/18-740 Computer Architecture

Spring 2011: 18-742 Parallel Computer Architecture

Fall 2010: 15-740/18-740 Computer Architecture

Spring 2010: 18-742 Parallel Computer Architecture

Spring 2009: 18-741 Advanced Computer Architecture