Università degli Studi di Siena
Facoltà di Ingegneria
Course of
High Performance Computer Architecture
 
 
 Latest News (home)
 Registration
 Lessons
(restricted access)
 Errata slides
 Tools for lab
 Syllabus
 Office Hours
 Mid-terms
 Projects
 Group registration
(restricted access)
 Exam Rules
 Feedback
 RELATED LINKS
 BEST PROJECTS
bgcolor="#FFFFFF" width="840" height="2080" border="0" cellpadding="0" cellspacing="0" valign="top" align="left">
 OBJECTIVES
Knowledge of the techniques for supporting the parallelism in computer systems. Ability to implement parallel applications.
 PREREQUISITES
Computer Architecture 1
 SYLLABUS
* Introduction, Pipeline review. * Dynamic Instruction Scheduling * Tomasulo: An Efficient Algorithm for Exploiting Multiple Arithmetic Units * Branch Prediction: speculation of branch condition and branch target. * Predictor types, Bimodal, BHSR, BHT, PHT, 2-level adaptive, GAg, PAg, PAs. Other predictors (gshare, gselect, tournament). * Introduction to Superscalar Processor: general scheme and Renaming. * Full-System Simulator for single-core and multi-core systems. * Superscalar execution example: Re-Order Buffer and Instruction Window. Case studies: MIPS, Alpha, AMD, Pentium. * Software methods to extract Instruction Level Parallelism. * Introduction to multiprocessor systems, Flynn's taxonomy, UMA, NUMA, COMA systems, programming models * Coherence Protocols: Write Update, Write Invalidate, Hybrid. Snoopy based protocols: the MESI and DRAGON protocols * Memory Consistency Models: Sequential Consistency and Relaxed Consistency * Introduction to parallel programming. * Parallelsim and Performance * CUDA Architecture and Programming Elements * Introduction to OpenMP, Cilk, OpenMPI, Dataflow programming models. * Advanced topics: reconfigurable computing; datacenters.
 TEXTBOOKS
ADOPTED TEXTBOOKS
  • M. Dubois, M. Annavaram, P. Stenstrom, "Parallel Computer Organization and Design", Cambridge University Press, 2012, ISBN: 978-0-521-88675-8

REFERENCE TEXTBOOKS
  • J.L. Hennessy, D.A. Patterson, "Computer Architecture: A Quantitative Approach" 5th Edition, Morgan Kaufman/Elsevier, 2012, ISBN: 978-0-12-383872-8.
  • D. Culler, J.P. Singh, A. Gupta, "Parallel Computer Architecture: A Hardware/Software Approach", Morgan Kaufman/Elsevier, 1998, ISBN-10 1558603433.
  • M.J. Flynn, "Computer Architecture: Pipelined and Parallel Processor Design", Jones and Bartlett Publishers, Inc., 1995, ISBN 0867202041
  • David B. Kirk and Wen-mei W. Hwu, "Programming Massively Parallel Processors: A Hands-on Approach", Morgan Kaufmann (February 5, 2010) ISBN 0123814723.

 OFFICIAL SYLLABUS
 WEB PAGE ON FACULTY/DEPARTMENT WEBSITE