CSE 291: Topics on High Performance 
Processor Architectures

Spring Quarter, 2003 (1 to 4 credits)

Time: TuTh 5:00-6:20, Place: AP&M 4882

Instructor: Dean Tullsen

Office Hours: by appt.


Announcements:

Use this for your paper reports for each class.

Reading list:

April 1:  Intro (Dean)

April 3:  Helper Threads (Dean)

Background (for those who haven't read it already)

Exploiting Choice: Instruction Fetch and Issue on an Implementable Simultaneous Multithreading Processor, D.M. Tullsen, S.J. Eggers, J.S. Emer, H.M. Levy, J.L. Lo, and R.L. Stamm,In 23rd Annual International Symposium on Computer Architecture, May, 1996

Actual papers to be discussed:

Execution-based Prediction Using Speculative Slices
Craig B. Zilles and Gurindar S. Sohi
28th International Symposium on Computer Architecture (ISCA-28), 2000.

Speculative Precomputation: Long-range Prefetching of Delinquent Loads, Jamison D. Collins, Hong Wang, Dean M. Tullsen, Christopher Hughes, Yong-Fong Lee, Dan Lavery, John P. Shen, In 28th International Symposium on Computer Architecture, July, 2001

April 8:  Hardware Support for SP (Jeff Brown)

Dynamic Speculative Precomputation, Jamison D. Collins,  Dean M. Tullsen, Hong Wang, John P. Shen, In 34th Annual International Symposium on Microarchitecture, December, 2001

Speculative Data-Driven Multithreading, Amir Roth and G. S. Sohi, Seventh International Symposium on High-Performance Computer Architecture (HPCA-7), Jan. 2001.

April 10:  SP-based architectures (Rakesh Kumar)

(optional background paper)

Multiscalar Processors, G. S. Sohi, S. Breach, and T. N. Vijaykumar, 22th International Symposium on Computer Architecture, 1995.

(actual papers)

Master/Slave Speculative Parallelization, Craig Zilles (University of Illinois) and Guri Sohi (University of Wisconsin) ISCA 2002

Z. Purser, K. Sundaramoorthy, and E. Rotenberg. "A Study of Slipstream Processors". 33rd International Symposium on Microarchitecture, December 2000

April 15:  Speculative Multithreading (Weifeng Zhang)

Speculative Multithreaded Processors, G. S. Sohi and Amir Roth, IEEE Computer, vol. 34, no. 4, April 2001

J.G. Steffan and T.C. Mowry.  "The Potential for Using Thread-Level Data Speculation to Facilitate Automatic Parallelization."  In Proc. HPCA-4, pp. 2–13, 1998

April 17:  Speculative Multithreading II (Satish Narayanasamy)

"A Quantitative Assessment of Thread-Level Speculation Techniques"
Pedro Marcuello and Antonio González, Proc. of the 1st. Int. Parallel and Distributed Processing Symposium (IPDPS'00), Cancún (Mexico), May 1-4 2000

A Dynamic Multithreading Processor, H. Akkary and M. Driscoll, 31st International Symposium on Microarchitecture, Nov 1998

April 22:  SMT Compilation (Yuanfang Hu)

Design and Evaluation of Compiler Algorithms for Pre-Execution
Dongkeun Kim, Donald Yeung, ASPLOS 2002

Compiling for Instruction Cache Performance on a Multithreaded Architecture
Rakesh Kumar and Dean M. Tullsen (University of California, San Diego)

April 24:  Custom hardware ISAs (Wei Chuang)

The MAJC Architecture: A Synthesis of Parallelism and Scalability
 Marc  Tremblay, Jeffrey  Chan, Shailender  Chaudhry, Andrew W.  Conigliaro, Shing Sheung  Tse,IEEE Micro, vol.20, no.6, Nov.-Dec. 2000, pp.12-25.

The Microarchitecture of the Pentium® 4 Processor
Glenn Hinton, Dave Sager, Mike Upton, Darrell Boggs, Doug Carmean, Alan Kyker, Patrice Roussel,
 

April 29:  custom ISAs (Michael Van Biesbrouck)

The Technology Behind Crusoe Processors
By:   Alexander Klaiber

D. H. Friendly, S. J. Patel, and Y. N. Patt, "Putting the Fill Unit to Work: Dynamic Optimizations for Trace Cache Microprocessors", Proceedings of MICRO-31, 1998, pp. 173-181

May 1:  custom ISAs (Nathan Tuck)

Yuan Chou, Pazhani Pillai, Herman Schmit, and John Paul Shen "PipeRench Implementation of the Instruction Path Coprocessor" presented at MICRO '00.

Kemal Ebcioglu and Erik R. Altman, DAISY: Dynamic Compilation for 100% Architectural Compatibility, ISCA 24

Achieving High Performance via Co-Designed Virtual Machines, J. E. Smith, S. Sastry, T. Heil, T. Bezenek, International Workshop on Innovative Architecture, Maui High Performance Computer Center, Oct. 26-28, 1998.

May 6:  New Architectures (Erez Perlman)

The Raw Microprocessor: A Computational Fabric for Software Circuits and General Purpose Programs,
by Michael Bedford Taylor, Jason Kim, Jason Miller, David Wentzlaff,
Fae Ghodrat, Ben Greenwald, Henry Hoffmann, Jae-Wook Lee, Paul Johnson, Walter Lee,
Albert Ma, Arvind Saraf, Mark Seneski, Nathan Shnidman, Volker Strumpen
Matt Frank, Saman Amarasinghe and Anant Agarwal.
IEEE Micro, Mar/Apr 2002

Exploiting ILP, TLP, and DLP with the Polymorphous TRIPS Architecture
Karthikeyan Sankaralingam, Ramadass Nagarajan, Haiming Liu, Changkyu Kim, Jaehyuk Huh, Doug Burger, Stephen W. Keckler, Charles R. Moore, University of Texas at Austin
 

May 8:  New Architectures (Rakesh Kumar)

Instruction Level Distributed Processing, J. E. Smith, 7th International Conference on High Performance Computing (HiPC2000), Bangalore, India, Dec. 2000 .

Dynamic Frequency and Voltage Control for a Multiple Clock Domain Microarchitecture
Greg Semeraro, David H. Albonesi, Steven G. Dropsho, Grigorios Magklis, Sandhya Dwarkadas, and Michael L. Scott (University of Rochester)

May 13: Media Processor (Weifeng Zhang)

A Bandwidth-Efficient Architecture for Media Processing, Scott Rixner, William J. Dally, Ujval J. Kapasi, Brucek Khailany, Abelardo Lopez-Lagunas, Peter Mattson, and John D. Owens, Proceedings of the 31st Annual International Symposium on Microarchitecture, Nov. 30 - Dec. 2, 1998, Dallas, Texas, pp. 3-13

Seshan N. High VelociTI processing Texas Instruments VLIW DSP architecture.  IEEE Signal Processing Magazine, vol.15, no.2, March 1998, pp.86-101.  (one commercial architecture.  Figures aren't all readable -- do the best you can.)

May 15:  Network Processor Architecture (Nathan Tuck)

Timothy Sherwood, George Varghese, and Brad Calder, A Pipelined Memory Architecture for High Throughput Network Processors, 30th International Symposium on Computer Architecture, June 2003

Efficient use of memory bandwidth to improve network processor throughput
Jahangir Hasan, Satish Chandra, and T. N. Vijaykumar
To appear in Proceedings of the 30th Annual International Symposium on Computer Architecture (ISCA), June 2003

May 20: more multithreading (Satish)

Microarchitectural Support for Precomputation Microthreads
Robert S. Chappell (University of Michigan), Francis Tseng (University of Texas, Austin), Adi Yoaz (Intel Corporation), and Yale N. Patt (University of Texas, Austin)
 
Implicitly-Multithreaded Processors

Il Park, Purdue University; Babak Falsafi, Carnegie Mellon University; T. N. Vijaykumar,

May 22: PIM architectures

A Case for Intelligent DRAM: IRAM, IEEE Micro , April 1997

Mark Oskin, Justin Hensley, Diana Keen, Matthew Farrens, Frederic T. Chong, Aneet Chopra. Exploiting ILP in Page-Based Intelligent Memory. 1999 International Symposium on Microarchitecture (MICRO32)

May 27: reliable processors (Erez)

Todd Austin, “DIVA: A Dynamic Approach to Microprocessor Verification,” Journal of Instruction Level Parallelism, May 2000.

Detailed Design and Evaluation of Redundant Multithreading Alternatives. S. S. Mukherjee, M. Kontz, and S. K. Reinhardt. Proc. 29th Annual Int'l Symp. on Computer Architecture (ISCA), pp. 99-110, May 2002
 

May 29: weird architectures (Michael)

Logical devices implemented using quantum cellular automataP. Douglas Tougaw and Craig S. Lent,  Department  of  Electrical Engineering, University of Notre Dame

Martyn  Amos,  Paul E. Dunne, and Alan Gibbons. Efficient time and volume DNA  simulation  of CREW PRAM algorithms. Technical Report CTAG-98006,   Department   of   Computer  Science,  University of Liverpool, UK,
  May 1998

June 3: Projects

June 5:  Projects

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Unscheduled Papers
 

General ILP

Dynamic Dead-Instruction Detection and Elimination
J. Adam Butts, Gurindar S. Sohi

Characterizing and Predicting Value Degree of Use
J. Adam Butts and Gurindar S. Sohi (University of Wisconsin)

Cyclone: A Broadcast-Free Dynamic Instruction Scheduler with Selective Replay
Dan Ernst, Andrew Hamel, and Todd Austin, University of Michigan
 

General Multithreading

Variability in Architectural Simulations of Multi-threaded Workloads
Alaa Alameldeen and David Wood
 

Interesting Architectures/Projects

R. Nagarajan, K. Sankaralingam, D.C. Burger, and S.W. Keckler. "A Design Space Evaluation of Grid Processor Architectures", Proceedings of the 34th Annual International Symposium on Microarchitecture, pp.40-51, December, 2001
 
 
 
 
 
 
 
 
 
 

Half-price Architecture
Ilhyun Kim, and Mikko H. Lipasti, UW-Madison
 
 

Speculative Multithreading

 

 
 
 
 
 
 
 
 
 
 
 

Runahead Execution: An Alternative to Very Large Instruction Windows for Out-of-order Processors
        Onur Mutlu, Jared Stark, Chris Wilkerson, and Yale Patt

Tradeoffs in Buffering Memory State for Thread-Level Speculation in Multiprocessors
        Maria Garzaran, Milos Prvulovic, Victor Vinals, Jose Llaberia,
        Lawrence Rauchwerger, and Josep Torrellas

Enhancing Software Reliability with Speculative Threads
Jeffrey Oplinger, Monica S. Lam

Pointer-Cache Assisted Prefetching, Jamison Collins, Suleyman Sair, Brad Calder, and Dean Tullsen, In 35th Annual International Symposium on Microarchitecture, November 2002.
 
 
 

Multithreading Compilation

 

Memory and Prefetching

A Stateless, Content-Directed Data Prefetching Mechanism
Robert Cooksey, Stephan Jourdan, Dirk Grunwald

Special Purpose Processors

A Pipelined Memory Architecture for High Throughput Network Processors
Timothy Sherwood, George Varghese, and  Brad Calder, University of California, San Diego

Efficient Use of Memory Bandwidth to Improve Network Processor Throughput
Jahangir Hasan, Purdue University; Satish Chandra, IBM India Research Lab; T. N. Vijaykumar, Purdue University

Imagine: Media Processing with Streams
Brucek Khailany, William J. Dally, Scott Rixner, Ujval J. Kapasi, Peter Mattson, Jinyung Namkoong, John D. Owens, Brian Towles, and Andrew Chang
IEEE Micro, March/April 2001, pp. 35-46.
 
 
 

The Rebirth of ISA Design

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Saving and Restoring Implementation Contexts with co-Designed Virtual Machines, A. Dhodapkar, J. E. Smith, Workshop on Complexity Effective Design, Gothenburg, Sweden, June 30, 2001.
 
 

The Jrpm System for Dynamically Parallelizing Java Programs
Michael Chen, and Kunle Olukotun, Stanford University