![]() Class meets Monday, Wednesday, 13.15–15.00
in room Rho Alpha 203 (Knossos campus). Friday classes
will be held as needed at the same time in Rho Alpha 203, to make up in case of instructor's
absence during regular class meeting times. | Midterm scheduled during the week between November 14 and November 18. The midterm will be organized as a take-home exam.
| |
Class | Topic | Slides | Reading list | Assignments |
5/10 | Welcome and introduction | Slides,handout 2up, handout 4up, updated on Oct 13, 17:24 | Chapter 1 from course textbook | |
7/10 | Pipelining review | Slides,handout 2up, handout 4up, updated on Oct. 13, 17:24 | Appendix A, A.1–A.3 from course textbook | |
10/10 | Hazards, Introduction to ILP techniques | Handout on 7/10 | Appendix A, A.4 from course textbook | |
12/10 | ILP and instruction scheduling. Scoreboard | Slides, handout 2up, handout 4up, updated on Oct. 08, 11:28 | Chapter 3, section 3.1 from course textbook | Homework 1, updated Oct. 13, 17:28 |
14/10 | Dynamic scheduling with scoreboard | Handout of 6/10 | Chapter 3, section 3.2–3.3 from course textbook, CDC 6600 original scoreboard design paper | |
17/10 | Dynamic scheduling with Tomasulo's algorithm | Slides, handout 2up, handout 4up, updated on Oct. 11, 11:55 | Tomasulo's original paper | |
19/10 | Branch prediction | Slides, handout 2up, handout 4up, updated on Oct. 21, 12:02 | Chapter 3, Section 3.4 from course textbook | |
21/10 | Branch prediction (correlation, jumps). Multiple-Issue | Handout on 19/10 | Chapter 3, Sections 3.4–3.5 from course textbook, Alternative implementations of two-level adaptive branch predictors | Homework 2, updated Oct 21, 12:03 |
24/10 | Multiple issue processors (statically and dynamically scheduled) | Slides, handout 2up, handout 4up, updated on Oct. 31, 08:18 | Chapter 3, Section 3.6 from course textbook, Chapter 5, Section 5.1 from book “Modern Processor Design: Fundamentals of Superscalar Processors”, by Lipasti and Shen | |
26/10 | Speculation | Slides, handout 2up, handout 4up, updated on Oct. 31, 08:19 | Chapter 3, Section 3.7 from course textbook, Chapter 5, Sections 5.2–5.3 from book “Modern Processor Design: Fundamentals of Superscalar Processors”, by Lipasti and Shen | |
31/10 | Limits of ILP | Slides, handout 2up, handout 4up, updated on Oct. 31, 19:44 | Chapter 3, Sections 3.8–3.10 from course textbook, Limits of Instruction-Level Parallelism, by David Wall, WRL Research Report 93/6 | Programming Assignment 1, updated Oct. 31 19:45 |
2/11 | Software techniques for ILP: Static scheduling and VLIW | Slides, handout 2up, handout 4up, updated on Nov. 4, 21:36 | Chapter 4, Sections 4.1–4.3 from course textbook | |
7/11 | Software pipelining. Introduction to vector processors | Slides, handout 2up, handout 4up, updated on Nov. 23, 21:22 | reading material from previous lecture, Appendix F from book Computer Architecture: A Quantitative Approach, Fourth Edition, by Hennessy and Patterson | Homework 3, updated Nov. 7, 20:43 |
21/11 | Simultaneous Multithreading. | Slides, handout 2up, handout 4up, updated on Nov. 21, 14:20 | reading material from previous lecture, Chapter 3, Section 3.5, from textbook Computer Architecture: A Quantitative Approach, Fourth Edition, by Hennessy and Patterson, Simultaneous Multithreading: Maximizing On-Chip Parallelism, Tullsen, Eggers and Levy, ISCA'95, Power5 System Microarchitecture, Sinharoy et. al, IBM Journal of Research and Development, 49(4–5), September 2005. | |
23/11 | Cache memories: Design and performance analysis | Slides, handout 2up, handout 4up, updated on November 28, 11:27 | Chapter 5, Sections 5.1–5.3, from textbook Computer Architecture: A Quantitative Approach, Third Edition, by Hennessy and Patterson | |
25/11 | Cache design optimizations | Slides, handout 2up, handout 4up, updated on Nov. 25, 22:49 | Chapter 5, Sections 5.4–5.7, from textbook Computer Architecture: A Quantitative Approach, Third Edition, by Hennessy and Patterson | |
28/11 | Software transformations for locality | lecture notes from 25/11 | Chapter 5, Section 5.3, from textbook Computer Architecture: A Quantitative Approach, Second Edition, by Hennessy and Patterson | Homework 4, updated 28/11, 11:33 |
30/11 | Hardware prefetching | Slides, handout 2up, handout 4up, updated on Nov. 26, 15:11 | Chapter 3, Section 3.1, from textbook Memory Systems: Cache, DRAM, Disk, by Jacob, Ng, and Wang | |
2/12 | Software prefetching. DRAM Technologies | Lecture slides from 30/11 | ||
5/12 | DRAM Technologies | Slides, handout 2up, handout 4up, updated on Dec. 1, 12:00 | Chapter 7, Sections 7.1–7.5, from textbook Memory Systems: Cache, DRAM, Disk, by Bruce Jacob, Spencer W. Ng, and David T. Wang | |
7/12 | Multiprocessor Architectures | Slides, handout 2up, handout 4up, updated on Jan. 12 2011, 01:03 | Chapter 6, Sections 6.1–6.2, from textbook Computer Architecture: A Quantitative Approach, Third Edition | Programming Assignment 2, updated Dec. 14, 12:40 |
© copyright Dimitrios S. Nikolopoulos. Last modification: , by dsn. |