CS-580a - Spring 2004
Advanced Topics in
Computer
Architecture
Instructor: Dmitry Ponomarev
Office: ENGB, N-26
Phone: 777-4023
E-mail: dima AT cs DOT binghamton DOT edu
Office Hours: Tuesday and Thursday, 4:00 - 5:00 and by
appointment
Class meets: Tuesday & Thursday, 6:00 - 7:30,
Fine Arts Building, Room 242
FINAL
PROJECT REPORTS ARE DUE ON THURSDAY, MAY 13TH
MUST READ
Advice on How to Give a Good Talk
Advice to Systems Researchers
Course
Syllabus
Background reading:
J.Smith, G.Sohi, "The
Microarchitecture of Superscalar Processors", in Proceedings of
IEEE, 1995.
SIMULATION TOOLS
Update of Feb.11: The support for warming up the cache and
branch predictor before starting the full simulator has been added.
This is done with the "-warmupstart <cycles>" parameter or:
make WARMUPSTART=1000000 FULLSTART=2000000 run
This starts the cache/branch warmup after 1M cycles and does another 1M
cycles of fast simulation until starting the full simulator at 2
million cycles.
The new
version of the simulator (updated on Feb 8) is now availiable. A couple of things were fixed on Feb.8, so
be sure to get the new version.
The easiest way to get started is to copy the simulator files from
Matt's home directory to yours, as follows:
cp -a /home/yourst/simulator /home/youruserid
This will make a copy of the latest code in your home directory, all
ready for use and modification. It has the right paths set up, uses
gcc-3.3, etc.
If you want to use this on your own Linux machine, everything in the
simulator
directory is in /home/yourst/simulator-for-cs580a.tar.gz
Here is the Simplescalar technical report that
describes the instruction set.
Additional resources
University of Wisconsin Computer
Architecture page
Proceedings of ISCA and MICRO are available from the ACM digital
library - the access is free from any campus computer
Part I. Fast, Scalable and
Low-Complexity Dynamic Schedulers
Readings for Thursday, January
22nd. Critiques for both papers due
at the beginning of Thursday's class
S. Palacharla, N. Jouppi, J. Smith, "Complexity-Effective
Superscalar Processors", ISCA, 1997.
J.Stark, M.Brown, Y.Patt, "On
Pipelining Dynamic Instruction Scheduling Logic", MICRO, 2000.
Readings for the week of January 26th
R. Canal, A. Gonzalez, "A
Low-Complexity Issue Logic", ICS, 2000. Critique due: Tuesday,
January 27th. Presenter - James. Talk slides
D. Ernst, T. Austin, "Efficient
Dynamic Scheduling Through Tag Elimination", ISCA, 2002. Critique
due: Tuesday, January 27th. Presenter
- Balaji. Talk slides
E. Brekelbaum et.al., "Hierarchical Scheduling
Windows", MICRO, 2002. Critique due: Thursday, January 29th. Presenter - Matt
I. Kim, M. Lipasti, "Half-Price
Architecture", ISCA, 2003. Critique due: Thursday, January 29th. Presenter - Deniz. Talk
slides
Readings for the week of February
2nd
On February 5th, Matt will be giving a tutorial on the linux
version of the simulator. Talk slides
A, Lebeck, et.al. "A Large,Fast
Instruction Window for Tolerating Cache Misses", ISCA 2002.
Critique due: Thursday, February 5th. Presenter
- Faiz. Talk slides
Readings for the class of February
10th
M.Brown, et.al. "Select-Free Instruction
Scheduling Logic", MICRO, 2001. Critique due: Tuesday, February
10th. Presenter - Gurram. Talk slides
I.Kim, M.Lipasti, "Macro-op
Scheduling: Relaxing Scheduling Loop Constraints", MICRO, 2003.
Critique due: Tuesday, February 10th. Presenter
- Joe. Talk slides
Part II. Power-Aware
Microarchitectures
A. Introduction
Thursday, February 12th.
Introductory lecture on the subject. Read the following
papers for Thursday's class. No critiques are required, just make sure
you read the papers before class. Lecture notes
D.Brooks, et.al., "Power-Aware
Microarchitecture: Design and Modeling Challenges for Next-Generation
Microprocessors," IEEE Micro, Nov./Dec., 2000.
D.Brooks, V. Tiwari, and M. Martonosi. "Wattch: A
Framework for Architectural-Level Power Analysis and Optimizations,"
ISCA 2000.
B. Fast, Low-Complexity, and
Energy-Efficient Register File Designs
Readings for the week of February 16th
R. Balasubramonian, et.al., "Reducing the
Complexity of the RF in Dynamic Superscalar Processors", MICRO
2001. Critique due: Feb 17th. Presenter
- Hui. Talk slides
Il Park, et.al., "Reducing
Register Ports for Higher Speed and Lower Energy", MICRO 2002.
Critique due: Feb 17th. Presenter -
Bharathi
J. Tseng and K. Asanovic, "Banked
Multiported RFs for High-Frequency Superscalar Microprocessors",
ISCA 2003. Critique due: Feb 19th. Presenter
- Yigit
N.Kim, T.Mudge, "Reducing
Register Ports Using Delayed Write-Back Queues and Operand Pre-Fetch",
ICS 2003. Critique due: Feb. 19th. Presenter
- Prateek. Talk slides
C. Energy-Efficient Cache Designs
Readings for Tuesday, February 24th. Critiques for
both papers are due on Feb.24
K.Ghose, M.Kamble, "Reducing
Power in Superscalar Processor Caches Using Subbanking, Multiple Line
Buffers and Bitline Segmentation", ISLPED 1999. Presenter - Balaji. Talk slides
S. Kaxiras, Z. Hu, M.Martonosi, "Cache
Decay: Exploiting Generational Behavior to Reduce Cache Leakage Power",
ISCA 2001. Presenter - James. Talk slides
D. Adaptive Architectures for Low
Power
Readings for Thursday, February 26th.
Critiques for both papers are due on Feb.26
D.Ponomarev, G.Kucuk, K.Ghose, "Reducing
Power Requirements of Instruction Scheduling Through Dynamic Allocation
of Multiple Datapath Resources", MICRO 2001. I will present this
paper. Talk slides
A.Buyuktosunoglu et.al., "Energy
Efficient Co-Adaptive Instruction Fetch and Issue", ISCA 2003. Presenter - Matt. Talk slides
E. Clock-gating, GALS, Voltage Scaling
Readings for Tuesday, March 2nd. Critiques for both papers are
due
on March 2nd.
I. Bahar, S. Manne, "Power and Energy Reduction Via
Pipeline Balancing", ISCA 2001. Presenter
- Hui. Talk slides
H.Li et.al., "Deterministic
Clock Gating for Microprocessor Power Reduction", HPCA 2003. Presenter - Gurram. Talk
slides
Readings for Thursday, March 4th.
Critiques for both papers are due on March 4th
G.Semeraro et.al., "Energy-Efficient Processor
Design Using Multiple Clock Domains with Dynamic Voltage and Frequency
Scaling", HPCA 2002. Presenter -
Oguz
D.Ernst, et.al., "Razor:
A Low-Power Pipeline Based on Circuit-Level Timing Speculation",
MICRO 2003. Presenter - Prateek. Talk slides
ISCA
2000 tutorial on low power design
Part III. Processors with
Large Instruction Windows
Readings for Tuesday, March 9th.
Critiques for both papers are due on March 9th.
H. Akkary et.al., "Checkpoint Processing and
Recovery: Towards Scalable Large Instruction Window Processors",
MICRO 2003. Presenter - Joe. Talk slides
A. Cristal, et.al., "Out-of-Order Commit
Processors", HPCA 2004. Presenter
- Deniz. Talk slides
Readings for Thursday, March 18th. Critiques for both
papers are due on March 18th
O. Mutlu, et.al., "Runahead Execution: an
Alternative to Very Large Instruction Windows for Out-of-Order
Processors", HPCA 2004. Presenter
- Faiz. Talk slides
J. Martinez et.al., "Cherry:
Checkpointed Early Resource Recycling in Out-of-Order Microprocessors",
MICRO 2002. Presenter - James. Talk slides
Readings for Tuesday, March 23rd.
Critiques for both papers are due on March 23rd.
S. Sethumadhavan, et.al., "Scalable
Hardware Memory Disambiguation for High ILP Processors", MICRO
2003. Presenter - Matt. Talk slides
Il Park, et.al., "Reducing
Design Complexity of the Load/Store Queue", MICRO 2003. Presenter - Balaji. Talk slides
Part IV. Predicting and Exploiting Critical Path
Information
Readings for Thursday, March 25th. Critiques for both papers
are due on March 25th
E.Tune, et.al., "Dynamic
Prediction of Critical Path Instructions", HPCA 2001. Presenter
- Hui. Talk slides
S.Srinivasan, et.al., "Locality vs.
Criticality", ISCA 2001. Presenter - Bharathi. Talk slides
Readings for Tuesday, March 30th. Critiques for both papers are
due
on March 30th
Fields, B., et.al., "Slack:
Maximizing Performance Under Technological Constraints", ISCA 2002.
Presenter - Joe. Talk slides
Tune, E., et.al., "Quantifying
Instruction Criticality", PACT 2002. Presenter - Gurram. Talk slides
Part V. Advanced Speculation Techniques
A. Value Prediction
Readings for Thursday, April 1st: Critiques for both papers are
due on April 1st (YOU CAN COMBINE THESE TWO CRITIQUES INTO ONE).
Deniz will give an overview talk on value prediction. Talk slides
Sazeides, Y., Smith, J., "The
Predictability of Data Values", MICRO 1997
Burtscher, M., Zorn, B., "Hybrid Load
Value Predictors", IEEE Transactions on Computers, 2002.
B. Memory Dependence Prediction
Readings for Tuesday, April 13th: Critiques for all
three
papers are due on April 13th.
A. Moshovos, G. Sohi, "Steamlining
Inter-Operation Memory Communication via Data Dependence Prediction",
MICRO 1997. Presenter - James. Talk
slides
G. Chrysos, J.Emer, "Memory Dependence
Prediction using Store Sets", ISCA 1998. Presenter - Faiz. Talk slides
Yoaz, A.,et.al. "Speculation Techniques for
Improving Load-related Instruction Scheduling", ISCA 1999. Presenter
- Joe. Talk slides
C. Latency Prediction and Speculative Scheduling
Readings for Thursday, April 15th: Critiques for both
papers are due on April 15th
Morancho E., et.al., "Recovery Mechanism
for Latency Misprediction", PACT 2001. Presenter -
Balaji. Talk slides
Kim, I., Lipasti, M., "Understanding
Scheduling Replay Schemes", HPCA 2004. Presenter - Matt Talk slides
Part VI. Clustered Microarchitectures
Readings for Tuesday, April 20th Critiques
for both
papers are due on April 20th
Farkas, K., et.al., "The
Multicluster Architecture: Reducing Cycle Time Through Partitioning",
MICRO 1997. Presenter - Hui. Talk slides
Canal, R., et.al., "Dynamic
Cluster Assignment Mechanisms", HPCA 2000. Presenter - Deniz. Talk slides
Part VII. Multithreaded Processors and CMPs
Background readings (no critiques
needed). I will give a short overview of these papers on
Tuesday.
Tullsen, D., et.al., "Exploiting Choice:
Instruction Fetch and Issue on an Implementable Simultaneous
Multithreading Processor", ISCA 1996.
Olukotun, K.,et.al. "The
Case for a Single-Chip Multiprocessor", ASPLOS 1996.
Readings for Thursday, April 22nd (Critiques for both papers
are due on April 22nd)
Wallace, S., et.al., "Threaded
Multiple Path Execution", ISCA 1998. Presenter - Gurram. Slides
Akkary, H., Driscoll, M.,"A Dynamic
Multithreading Processor", MICRO 1998. Presenter - Joe. Slides
Readings for Tuesday, April 27th (Critiques for both papers are
due on April 27th)
Zilles, C., Sohi, G., "Execution-based
Prediction Using Speculative Slices", ISCA 2001. Presenter - James. Slides
Collins, et.al., "Dynamic
Speculative Precomputation", MICRO 2001. Presenter - Matt. Slides
Tutorial
on speculative precomputation (given at PACT'03)
Readings for Thursday, April 29th (Critiques for both papers
are
due
on April 29th)
Rotenberg, E., et.al., "Slipstream
Processors: Improving both Performance and Fault Tolerance", ASPLOS
2000. Presenter - Bharathi. Slides
Zilles, C., Sohi, G., "Master/Slave
Speculative Parallelization", MICRO 2002. Presenter - Deniz. Slides
Tuesday, May 4th: PROJECT PRESENTATIONS. Presenters - James,
Deniz, Hui, Gurram and Faiz
Thursday, May 6th: PROJECT PRESENTATIONS. Presenters - Matt, Joe,
Bharathi, Balaji
THAT'S IT ! FINAL PROJECT REPORTS ARE DUE ON THURSDAY, MAY
13TH.
I will send you an e-mail about the Summer Computer Architecture
Reading Group sometime in the beginning of June.