April 3 Introduction
April 5

History

(1)Architecture of the IBM System/360

(2) Parallel Operation in the Control Data 6600

(3) Cramming More Components onto Integrated Circuits

also read pages 1-16 of the text (pages 1-55 in total)

April 10

History 2

(1) The CRAY-1 Computer System

(2) CRAY-1 Computer Technology

(3) The History of the Microcomputer -- Invention and Evolution

 

April 12

Branch Prediction

(1) Two-Level Adaptive Training Branch Prediction

(2) The YAGS branch prediction scheme

April 17

Branch Prediction

(1) Design Tradeoffs for the Alpha EV8 Conditional Branch Predictor

(2) Neural Methods for Dynamic Branch Prediction

April 19

Speculation and Prediction

(1) A Comparison of Full and Partial Predicated Execution Support for ILP Processors
(2) Instruction Issue Logic for High-Performance, Interruptable Pipelined Processors

April 24

Speculation and Prediction

(1) Highly accurate data value prediction using hybrid predictors

(2) Focusing Procesor Policies via Critical-Path Prediction

April 26

Thread Level Speculation

(1) Multiscalar Processors

(2) A Scalable Approach to Thread-Level Speculation

 

May 1

Thread Level Speculation

(1) A Quantitative Assessment of Thread-Level Speculation Techniques

(2) Mitosis Compiler: An Infrastructure for Speculative Threading Based on Pre-Computation Slices

May 3

Midterm

May 8

Real Processors

(1) The Alpha 21264 Microprocessor

(2) The Microarchitecture of the Pentium 4 Processor

May 10

Helper Threads

(1) Execution-based Prediction Using Speculative Slices

(2) Dynamic Speculative Precomputation

May 15

Helper Threads

(1) An Event-Driven Multithreaded Dynamic Optimization Framework

(2) Design and Evaluation of Compiler Algorithms for Pre-Execution

May 17

Cache and Memory

(1) Improving Direct-Mapped Cache ... (Jouppi)
(2) Organization and Performance of a Two-Level ... (Wang, Baer, Levy)

May 22

Cache and Memory

(1) Trace Cache: A Low Latency Approach to High Bandwidth Instruction Fetching

(2) Putting the fill unit to work: dynamic optimizations for trace cache microprocessors

May 24

Fault-Tolerance

(1) DIVA: A Reliable Substrate for Deep Submicron Microarchitecture Design

(2) Transient Fault Detection via Simultaneous Multithreading

May 29

Fault-Tolerance

(1) Techniques to Reduce the Soft Error Rate of a High-Performance Microprocessor

(2) SafetyNet: Improving the Availability of Shared Memory Multiprocessors with Global Checkpoint/Recovery

May 31

Power and Energy

(1) Selective CacheWays: On-Demand Cache Resource Allocation

(2) Energy-Efficient Processor Design Using Multiple Clock Domains with Dynamic Voltage and Frequency Scaling

June 5

Power and Energy

(1) Reducing Power with Dynamic Critical Path Information

(2) Temperature-Aware Microarchitecture

June 7

Final Exam

 

June 14

Project Reports Due