18-640 Foundations of Computer Architecture, Spring 2014

18-640 is a sister course to 18-740. Both offer graduate-level presentation of computer architecture; both can be used interchangeablly in subsequent prerequisite. 18-740 is more appropriate for graduate students interested in doing PhD research in computer architecture. 18-640 focuses on preparation for product innovation in the industry, with emphasis on superscalar and multi-core processor designs, and performance, power, energy optimizations. Students meeting the prerequisite can choose to take either 18-640 or 18-740.

Quick Links

Course Description

Computer Architecture deals with the art and science of designing modern computer systems, defines the HW/SW interface (Instruction Set Architecture), and codifies a large body of implementation techniques for achieving performance improvement and power efficiency. This graduate level course covers the three main subsystems of Processor, Memory, and I/O, and addresses performance and Power optimizations. Processor design is the primary focus covering: pipelined and superscalar processor design; multi-core and multi-processor systems; special-purpose processors. Memory and I/O topics include: memory hierarchy and virtual memory; shared-memory model and cache coherence; I/O devices and storage systems. Performance and Power topics include: instruction-level, memory-level and thread-level parallelisms; instruction flow and data flow optimizations; performance vs. power tradeoffs; iron laws governing performance, power, and energy efficiency.

Prerequisite: 18-447 or equivalent undergraduate course on Computer Organization, a la Computer Organization and Design: The Hardware/Software Interface textbook by Patterson and Hennessy.


Office Hours


  • Lecture:
    • TR, 04:30PM to 06:20PM (PST), B23 109 (@CMU-SV)
    • TR, 07:30PM to 09:20PM, WEH 4623 (@Pittsburgh, taught by broadcast from SV)
  • Recitations
    • W, 04:30PM to 05:50PM, BH A53 (@Pittsburgh)
    • W, 01:30PM to 02:50PM (PST), B23 109 (@CMU-SV, taught by broadcast from Pittsburgh)
  • No scheduled lab sections


  • Modern Processor Design: Fundamentals of Superscalar Processors by John Paul Shen and Mikko H. Lipasti. Waveland Press
  • Also useful
    • Computer Architecture: A Quantitative Approach, Fifth Edition by John L. Hennessy and David A. Patterson.
    • Computer Organization and Design: The Hardware/Software Interface, Fifth Edition by Patterson and Hennessy.

Miscellaneous Links