Computer Architecture

Title Computer Architecture (52010)
Quarter Winter 2018
Instructor Andrew Siegel (


Textbook: Hennessey and Patterson, "Computer Architecture: A Quantitative Approach", 3rd Edition

This course focuses on the design and performance evaluation of modern computer architectures. The emphasis is on microprocessors, chip-multiprocessors and memory hierarchy design, particularly in the context of parallel (multicore) CPUs.

  • Topics include:

  • Memory cache designs and optimizations

  • DRAM technologies

  • Instruction and data pipelining

  • Branch prediction for instruction- and data-level paralelism

  • Dynamic scheduling for instruction- and data-level parallelism

  • * Mulithreading support in hardware and operating system

  • * Data coherency for efficient multithreading

  • * Non-uniform memory access for efficient multithreading 

Prerequisites (Courses)

Core Programming

Prerequisites (Other)


Core Systems


Friday 5:30-8:30pm


Young 302