Università degli Studi di Siena
Department of Information Engineering and Mathematics (DIISM)
Course of
High Performance Computer Architecture 2016-2017
 
 
 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="3900" border="0" cellpadding="0" cellspacing="0" valign="top" align="left">
 FIRST PART SLIDES (THEORY) IN A SINGLE FILE

COURSE SCHEDULE (TENTATIVE): THE FOLLOWING DATES ARE INDICATIVE AND RELATED TO THE HYPOTHETIC REGULAR PROGRESS OF THE LESSONS. NOTE (THIS HAS BEEN ASKED TO ME ...) THE NUMBERING OF LESSON REFERS ONLY TO THE TOPIC, IT DOES NOT IMPLY BY ANY MEANS THAT THE LESSONS WILL BE GIVEN IN A CERTAIN ORDER.

NOTE: the actual schedule will be updated weekly.

BIBLIOGRAPHIC REFERENCES:
  • M. Dubois, M. Annavaram, P. Stenstrom, "Parallel Computer Organization and Design", Cambridge University Press, 2012, ISBN: 978-0-521-88675-8

 LESSON #01 of 03-Oct-2016 (9:00-13:00)
Introduction, Evaluating Computers
Dubois Chap. 1,3.3
(Hennessy-Patterson-4 - 2.1,2.2)
(Hennessy-Patterson-5 - 3.1,3.2)
 LESSON #02 of 04-Oct-2016 (16:00-17:00)
Dynamic Instruction Scheduling
Dubois Chap. 3.4,3.4.1
(Hennessy-Patterson-4 - 2.4,2.5)
(Hennessy-Patterson-5 - 3.4,3.5)
  • An Efficient Algorithm for Exploiting Multiple Arithmetic Units
  • tomasulo.c
  •  PRACTICING/LAB #01 of 04-Oct-2016 (01:00-02:00)
    Dynamic Scheduling exercize.
  • Exercize from a previous test (23/6/2005).
  •  LESSON #03 of 10-Oct-2016 (9:00-11:00)
    Branch Prediction: speculation of branch condition and branch target, BPRED, BTB.
    Dubois - 3.3.4,3.4.3
    (Hennessy-Patterson-4 - 2.3)
    (Hennessy-Patterson-5 - 3.3)
  • Paper [Yeh, Patt - 1992]
  • Paper [Nair - 1995]
  • Paper [Young - 1995]
  •  LESSON #04 of 10-Oct-2016 (02:00-04:00)
    Predictor types, Bimodal, BHSR, BHT, PHT, 2-level adaptive, GAg, PAg, PAs. Other predictors (gshare, gselect, tournament).
  • Paper [McFarling - 1993]
  •  PRACTICING/LAB #90 of 12-Oct-2016 (9:00-11:00)
    Introduction to Linux (first part)
     LESSON #05 of 17-Oct-2016 (9:00-11:00)
    Introduction to Superscalar Processors: general scheme and Renaming.
    Dubois 3.3.3,3.4.6(Hennessy-Patterson-4 - 2.6-2.9)
    (Hennessy-Patterson-5 - 3.6-3.10)
     LESSON #06 of 17-Oct-2016 (02:00-04:00)
    Superscalar execution example: Re-Order Buffer and Instruction Window. Case studies: MIPS, Alpha, AMD, Intel, ARM.
    Dubois 3.4.4,3.4.5,3.4.7,3.4.8,3.4.9
     PRACTICING/LAB #90 of 19-Oct-2016 (9:00-11:00)
    Introduction to Linux (second part)
     LESSON #08 of 24-Oct-2016 (9:00-10:00)
    Software methods to extract Instruction Level Parallelsim.
  • Dubois 3.3.5,3.5,3.5.1-5 (see also Hennessy-Patterson-4 2.7-2.8)
  •  PRACTICING/LAB #04 of 24-Oct-2016 (01:00-04:00)
    Exercizes on SUPERSCALAR AND VLIW processors (PART A)
  • Exam of 30/06/2008 and solution
  • Exam of 22/06/2015 and solution
  •  PRACTICING/LAB #02 of 26-Oct-2016 (9:00-11:00)
    Using the Superscalar simulator FREESS
  • Educational Simulator FreeSs
  • Exam of 22/06/2015 (exercize No.1) and solution
  • Exam of 06/11/2015 (exercize No.1) and solution
  •  PRACTICING/LAB #05 of 28-Oct-2016 (14:00-19:00)
    Exercizes on branch prediction and verious excercizes
  • Exam of 16/01/2012
  • Exam of 07/11/2014 and solution
  • Exam of 28/06/2007 and solution
  • Exam of 07/07/2009 and solution
  • SS-EX1.pdf
  •  31-Oct-2016: No Lesson
    HOLIDAY/BRIDGE
     02-Nov-2016 - MIDTERM TEST (09:00-11:00)

     LESSON #11 of 07-Nov-2016 (9:00-10:00)
    Introduction to multiprocessor systems, Flynn's taxonomy, UMA, NUMA, COMA systems, programming models
    Dubois 5.1,5.4 (see also Culler-Singh, Cap.1).
     LESSON #12 of 07-Nov-2016 (01:00-04:00)
    Coherence Protocols: Write Update, Write Invalidate, Hybrid. Snoopy based protocols: the MESI and DRAGON protocols
    Dubois 5.4,5.5,7.3 (see also Culler-Singh, Cap.5).
     PRACTICING/LAB #06 of 09-Nov-2016 (9:00-11:00)
    Introducing the framework for performance estimation through COTSon; examples.
  • Paper on Dynamic sampling in COTSon.
  • COTSON USER GUIDE
  •  LESSON #14 of 14-Nov-2016 (9:00-11:00)
    Memory Consistency Models: Sequential Consistency and Relaxed Consistency
    Dubois 7.4,7.5,7.6,7.7 (v. Culler-Singh, cap. 5.2, 5.5)
  • Litmus Tests for checking Memory Models
  •  LESSON #60 of 14-Nov-2016 (02:00-04:00)
    Introduction to FPGAs
     LESSON #61 of 16-Nov-2016 (9:00-11:00)
    Introduction to a dataflow parallel programming model
    Support material.
     PRACTICING/LAB #10 of 21-Nov-2016 (9:00-11:00)
    COTSon metrics, tests, timers
    2
     LESSON #15 of 21-Nov-2016 (11:00-13:00)
    Introduction to Parallel Programming
     PRACTICING/LAB #08 of 23-Nov-2016 (9:00-11:00)
    Programming examples of dataflow programming on MAXELER platform
  • MAXELER website
  •  LESSON #16 of 28-Nov-2016 (9:00-11:00)
    Parallelsim and Performance
     PRACTICING/LAB #09 of 28-Nov-2016 (11:00-13:00)
    Exercizes on Coherency from past exams.
  • Exercize on cache coherence 20/01/2010;
  •  PRACTICING/LAB #07 of 30-Nov-2016 (9:00-11:00)
    Experimenting several programming models: Pthreads, OpenMP, TBB, Cilk
  • Source code of the examples in Pthreads, OpenMP, TBB, Cilk
  • Using CILKTOOLS (cilkview,cilkscreen)
  •  LESSON #21 of 02-Dec-2016 (14:00-15:00)
    Introduction to CUDA parallel programming model
  • Bill Dally @ SC-2010
  •  LESSON #22 of 02-Dec-2016 (01:00-02:00)
    CUDA Programming Elements
     LESSON #23 of 02-Dec-2016 (02:00-03:00)
    Atomic Constructs and Threads in CUDA
     LESSON #24 of 02-Dec-2016 (03:00-04:00)
    CUDA Memory Model
     05-Dec-2016: No Lesson
    ELECTION_PAUSE
     PRACTICING/LAB #08 of 07-Dec-2016 (9:00-11:00)
     LESSON #30 of 12-Dec-2016 (9:00-10:00)
    Clusters
     LESSON #40 of 12-Dec-2016 (01:00-02:00)
    Introduction to MPI
    Dubois 5.2.2, 5.3
     LESSON #50 of 12-Dec-2016 (02:00-03:00)
    Xeon Phi
     PRACTICING/LAB #17 of 12-Dec-2016 (03:00-04:00)
     PRACTICING/LAB #18 of 14-Dec-2016 (9:00-10:00)
    Programming examples of Intel Xeon Phi platform
     PRACTICING/LAB #12 of 14-Dec-2016 (01:00-02:00)
    Various exercizes from previous exams.
     PRACTICING/LAB #19 of 19-Dec-2016 (9:00-13:00)
    Various exercizes from previous exams.
     21-Dec-2016 - FINAL TEST (09:00-11:00)

     from 26-Dec-2016 to 04-Jan-2017: No Lesson
    HOLIDAY/BRIDGE





    To visualize the content of the above presentations in Acrobat format (.pdf) you can use Acrobat Reader, freely realesed by Adobe (Download Acrobat Reader)