CS 431 : Programming Parallel and Distributed Systems
|
|
John L. Hennessy and David A. Patterson,
Computer Architecture: A Quantitative Approach,
Morgan Kaufmann Publishers, Fourth Edition, 2008.
- Synchronization (Week 2: 4.5)
- Multithreading: Exploiting ILP to support TLP (Week 2)
- Introduction to Multiprocessors (Week 1: 4.1 )
- Symmetric Shared-Memory Architectures (Week 5: 4.2)
- Distributed Shared-Memory Architectures (optional)
- Models of Memory Consistency: An Introduction (week 5: 4.6)
- Putting It All Together: Sun T1 (optional)
Related sections from Chapter
3, Chapter
4, Chapter
5 (Online pdf for SFU CS 431 students only)
Introduction (Week 1)
Herb Sutter,
The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software,
Dr. Dobb's Journal, 30(3), March 2005.
Html.
Introduction to Parallel Computing
LLNL Web Site
(html). Reference.
David A. Wood and Mark D. Hill,
Cost-Effective Parallel Computing,
IEEE Computer,
February 1995.
PDF
Herb Sutter and James Larus,
Software and the Concurrency Problem,
ACM Queue,
September 2005,
PDF
Queue - Multiprocessors,
ACM Queue,
September 2005
PDF Reference.
Multicore Processors (Week 1)
Poonacha Kongetira, Kathirgamar Aingaran,
Kunle Olukotun,
SUN Niagara : A 32-Way Multithreaded Sparc Processor,
IEEE Micro pdf
Kunle Olukotun, Basem Nayfeh, Lance Hammond, Ken Wilson, and
Kunyung Chang, The Case for a Single-Chip Multiprocessor
Proceedings of the Seventh ACM Conference on Architectural Support
for Programming Languages and Operating Systems., ASPLOS 2006.
PDF.
Luiz Andre Barroso, et al.,
DEC's Multicore in 2000 (Piranha),
Proc. International Symposium on Computer Architecture, June 2000.
PDF Reference.
Programming (Week 2 -- 4)
POSIX Threads Programming,
Web Site
(html). Reference.
Steven Cameron Woo, Moriyoshi Ohara, Evan Torrie, Jaswinder Pal Singh,
and Anoop Gupta,
The SPLASH-2 Programs: Characterization and Methodological Considerations,
Proc. International Symposium on Computer Architecture,
June 1995.
PDF
John M. Mellor-Crummey and Michael L. Scott,
Algorithms for Scalable Synchronization on Shared-Memory Multiprocessors
ACM Trans. on Computer Systems.
February 1991, pp. 21-65.
PDF
Rob Von Behren , Jeremy Condit , Feng Zhou , George C. Necula , Eric Brewer,
Capriccio: Scalable Threads for Internet Services
Proc. Symposium on Operating System Principles,
October 2003.
PDF.
Programming (Week 6 )
LLNL OpenMP Tutorial,
Web Site
(html).
OpenMP: Simple, Portable, Scalable SMP Programming,
Web Site
(html). Reference.
CILK Programming,
Web Site
(html). Reference.
Bonus Suggested readings (Optional)
Multicore Processors (Week 1)
How much Parallelism is available ?
Emily Fortuna, Owen Anderson, Luis Ceze, Susan Eggers,
A Limit Study of JavaScript Parallelism
Proc Intl. Symposium on Workload Characterization , Dec 2010
PDF
Geoffrey Blake, Ronald G. Dreslinski, Trevor Mudge and Krisztian
Flautner, Evolution of Thread-Level Parallelism in Desktop
Applications. The 37th ISCA, June 2010
PDF
Milind Kulkarni, Martin Burtscher, Rajasekhar Inkulu, Keshav Pingali
and Calin Cascaval,How Much Parallelism is There in Irregular
Applications?, In PPOPP 2009,
PDF
Hardware Coherence (Week 5 )
Alan Charlseworth
The Sun Fireplane System Interconnect
PDF
Virtual Hierarchies to Support Server Consolidation,
Michael R. Marty and Mark D. Hill
International Symposium on Computer Architecture (ISCA), June 2007
PDF
Arun Raghavan, Colin Blundell, and Milo M. K. Martin
Token Tenure: PATCHing Token Counting Using Directory-Based Cache
Coherence. In MICRO 2008
PDF
Software-based Multiprocessors (Week 6)
Robert Stets, Sandhya Dwarkadas, Nikolaos Hardavellas et al.,
CASHMERE-2L: Software Coherent Shared Memory on a Clustered
Remote-Write Network. In SOSP'97
PS
Amza, C.; Cox, A.L.; Dwarkadas, S.; Keleher, P.; Honghui Lu;
Rajamony, R.; Weimin Yu; Zwaenepoel, W. TreadMarks: shared memory
computing on networks of workstations. In IEEE Computer
PDF
Steven K. Reinhardt, Robert W. Pfile, David A. Wood.
Decoupled Hardware Support for Distributed Shared Memory. In ISCA 1996
PDF
Deterministic Computing
Joseph Devietti, Brandon Lucia, Luis Ceze and Mark Oskin.
DMP: Deterministic Shared Memory Multiprocessing
In ASPLOS 2009
PDF
Marek Olszewski, Jason Ansel, Saman Amarasinghe.
Kendo: Efficient Deterministic Multithreading in Software.
In ASPLOS 2009
PDF
Derek R. Hower, Pablo Montesinos, Luis Ceze, Mark D. Hill, and Josep Torrellas
Two Hardware-based Approaches for Deterministic Multiprocessor Replay
PDF
Overview paper
Tom Bergan, Joseph Devietti, Nicholas Hunt and Luis Ceze.
The Deterministic Execution Hammer: How Well Does it Actually Pound Nails?
In Workshop on Determinism (WoDET w/ ASPLOS) 2016.
PDF
GPU/Accelerator Architectures
GPU Tutorial
Webpage
Larrabee: A Many-Core x86 Architecture for Visual Computing
Intel
PDF
Carbon: architectural support for fine-grained parallelism on chip
multiprocessors. In ISCA 2007
PDF
|