Skip to content
This repository has been archived by the owner on Mar 17, 2021. It is now read-only.

Latest commit

 

History

History
112 lines (62 loc) · 7.13 KB

reading-list.md

File metadata and controls

112 lines (62 loc) · 7.13 KB
title
Reading list for 201C Spring 2019

Reading list

The following lists the papers to read for each lecture. Usually, there will be one paper to read and review, and there may be other papers to read or to use as reference.

You can access these papers either when you are on campus or by setting up a proxy to use the campus network. The library has directions on setting up a proxy. If this doesn't work for you post on the online forum and someone can upload a pdf.

Writing reviews

You only need to turn in a review for the paper marked Review below. You can find details on how to write a review on the syllabus.

Lecture 1: 4/2

No reading for the first lecture

4/4 Lecture 2: Performance

Review: Gables: A Roofline Model for Mobile SoCs. Mark D. Hill and Vijay Reddi. HPCA. 2019. Webpage with interactive plots: http://research.cs.wisc.edu/multifacet/gables/

Reference: SPLASH-2: The SPLASH-2 programs: characterization and methodological considerations. Steven Cameron Woo, Moriyoshi Ohara, Evan Torrie, Jaswinder Pal Singh, and Anoop Gupta. 1995.

Reference: PARSEC benchmarks: Benchmarking Modern Multiprocessors. Christian Bienia. Ph.D. Thesis. Princeton University, January 2011.

4/9 Lecture 3: Parallelism introduction

Review: Software and the Concurrency Revolution. Herb Sutter and James Larus. ACM Queue. 2005.

4/11 Lecture 4: Single core review

Review: Can traditional programming bridge the Ninja performance gap for parallel computing applications?. Nadathur Satish, Changkyu Kim, Jatin Chhugani, Hideki Saito, Rakesh Krishnaiyer, Mikhail Smelyanskiy, Milind Girkar, and Pradeep Dubey. ISCA. 2012.

Reference: Haswell: The Fourth-Generation Intel Core Processor. Per Hammarlund, Alberto J. Martinez, Atiq A. Bajwa, David L. Hill, Erik Hallnor, Hong Jiang, Martin Dixon, Michael Derr, Mikal Hunsaker, Rajesh Kumar, Randy B. Osborne, Ravi Rajwar, Ronak Singhal, Reynold D’Sa, Robert Chappell, Shiv Kaushik, Srinivas Chennupaty, Stephan Jourdan, Steve Gunther, Tom Piazza, Ted Burton. IEEE Micro. 2014.

4/16 Lecture 5: Parallel architecture intro

Review: Data parallel algorithms W. Daniel Hillis and Guy L. Steele, Jr.. 1986. Data parallel algorithms. Commun. ACM 29, 12 (December 1986)

4/18 Lecture 6: Memory consistency 1

Sections numbers are inclusive. Your review of the synthesis lecture may be structured a little differently than a normal research paper.

Review: Sections 1.0-1.4, 4.0-4.3.3, 5.0-5.2.5. Shared-Memory Synchronization. Michael L. Scott. Synthesis Lectures on Computer Architecture.

Errata: http://www.cs.rochester.edu/u/scott/SMS/errata.shtml

Read: How to make a multiprocessor computer that correctly executes multiprocess programs. Leslie Lamport. IEEE Transaction on Computing. 1979. (It's only 2 pages)

4/23 Lecture 7: Consistency 2 / Cache Coherence 1

Sections numbers are inclusive. Your review of the synthesis lecture may be structured a little differently than a normal research paper.

Read: Chapters 1 and 2. A Primer on Memory Consistency and Cache Coherence

Review: Chapter 3. A Primer on Memory Consistency and Cache Coherence

4/30 Lecture 8: Cache Coherence 2

Sections numbers are inclusive. Your review of the synthesis lecture may be structured a little differently than a normal research paper.

Review: Chapter 6. A Primer on Memory Consistency and Cache Coherence

Read: Sections 7.0-7.2 and 8.0-8.3,8.6. A Primer on Memory Consistency and Cache Coherence

5/2 Lecture 9: Distributed systems

Review: Attack of the Killer Microsecond. LUIZ BARROSO, MIKE MARTY, DAVID PATTERSON, AND ARTHASARATHY RANGANATHAN. CACM 2017.

Read: Chapter 1 of The Datacenter as a Computer: Designing Warehouse-Scale Machines, Third Edition. Luiz André Barroso, Urs Hölzle, Parthasarathy Ranganathan.

Reference: The Datacenter as a Computer: Designing Warehouse-Scale Machines, Third Edition. Luiz André Barroso, Urs Hölzle, Parthasarathy Ranganathan.

5/9 Lecture 10: Programming distributed systems

Review: MapReduce: simplified data processing on large clusters. CACM 2008.

5/14 Lecture 11: GPUs 1

Note: Read the Synthesis lecture before doing the review. It will help :).

Read: Chapters 1 and 2 of General-Purpose Graphics Processor Architectures. Tor M. Aamodt, Wilson Wai Lun Fung, Timothy G. Rogers. 2018.

Review: GPUs and the Future of Parallel Computing. Stephen W. Keckler, William J. Dally, Brucek Khailany, Michael Garland, David Glasco. IEEE MICRO 2011.

5/16 Lecture 12: GPUs 2

Review: Cache-Conscious Wavefront Scheduling. Timothy G. Rogers, Mike O'Connor, Tor M. Aamodt. MICRO 2012.

5/21 Lecture 13: Accelerators 1

Review: Dark silicon and the end of multicore scaling. Hadi Esmaeilzadeh, Emily Blem, Renée St. Amant, Karthikeyan Sankaralingam, Doug Burger. ISCA 2011.

5/23 Lecture 14: More Accelerators

Review: In-Datacenter Performance Analysis of a Tensor Processing Unit. Norman P. Jouppi, Cliff Young, Nishant Patil, David Patterson, et al. ISCA 2017.

5/30 Lecture 15: Quantum computing

Review: Full-Stack, Real-System Quantum Computer Studies: Architectural Comparisons and Design Insights. Prakash Murali, Norbert Matthias Linke, Margaret Martonosi, Ali Javadi Abhari, Nhung Hong Nguyen, Cinthia Huerta Alderete

(Note: This paper will be published soon in ISCA 2019.)

6/4 Lecture 16: Persistent memory

Review: Memory Persistency. Steven Pelley, Peter M. Chen, Thomas F. Wenisch.

6/6: Lecture 17: In-memory computing

Review: A case for intelligent RAM. David Patterson, Thomas Anderson, Neal Cardwell, Richard Fromm, Kimberly Keeton, Christoforos Kozyrakis, Randi Thomas, and Katherine Yelick.