Schedule

The following is an ever-evolving schedule for the class.

Week Content Readings Due (Friday, unless otherwise specified) Notes
January 11 Logistics and Introduction Sections 1.1-1.5   No class Monday 1/11
January 18 Performance Metrics     No Class 1/18 (MLK Day)
January 25 Finish Performance Metrics; Amdahl’s Law Section 1.9, Appendix A Worksheet 02 Census Day (1/27)
February 1 Finish Amdahl’s Law; Review of CPUs, MIPS, and Compilation; Cache Basics Section 2.1, Appendix B.1-B.2 Worksheet 03, Worksheet 05  
February 8 Cache Optimizations Section 2.2, Appendix B.3 Homework 1  
February 15 Finish Cache Optimizations   Worksheet 06 No class Monday 2/15 (President’s Day)
February 22 Virtual Memory Appendix B.4, Section 2.4 Project 1 (2/22)  
March 1 Pipelining Hazards Sections 3.4, 3.5, Appendix C.1-3 Homework 2, Worksheet 08  
March 8 Branch Prediction Sections 3.3, 3.9, Appendix C.2    
March 15 Midterm Review on Wednesday     Snow day Monday
March 22 Midterm on Monday (3/22), Finish Branch Prediction   Project 2 (3/28), Worksheet 09  
March 29       No Class (Spring Break)
April 5 Out-of-order Execution, Main Memory Sections 3.4, 2.3 Homework 3 (3/31), Worksheet 10  
April 12 Finish Main Memory, SIMD Pages 9-10, Sections 4.1-4.2*    
April 19 Multiprocessor   Worksheet 11 (4/19), Rowhammer Paper Review (4/19)  
April 26 Cache Coherence   Homework 4  
May 3 Interconnect, Review on Wednesday, FINAL ON FRIDAY!      
May 10     Project 3  

* if you are interested in learning more about SIMD, reading the entirety of Chapter 4 is a good place to start.