Schedule (Tentative)

The following is my best guess as to the schedule for this term. Slide decks will be available shortly after each lecture.

Date Topics Reading Assignments
Overview
     Thur. Jan. 18 Introduction Chapter 1 Get an account and set it up;
Data Representation
     Tues. Jan. 23 Overview Chapter 2 A1: datalab (bit twiddling) out;
Main assignment due in 10 days;
     Thur. Jan. 25 Integers A1 trivia due, noon;
     Tues. Jan. 30 Floating Point
Assembly-level Programs
     Thur. Feb. 1 Overview Chapter 3 A1 due midnight tomorrow;
A2: the binary bomb out;
Main assignment due in 15 days;
     Tues. Feb. 6 Control Flow A2 trivia due, noon;
     Thur. Feb. 8 Subroutines
     Tues. Feb. 13 Structured Data
Processor Architecture
     Thur. Feb. 15 Circuits and History Chapter 4 intro; “asides” on RISC/CISC; Section 4.2.5 A2 due midnight tomorrow;
A3: the buffer bomb out;
Main assignment due in 15 days;
     Tues. Feb. 20 Sequential Implementation Figures 4.22 and 4.23;
Section 4.5.1
A3 trivia due, noon;
     Thur. Feb. 22 Pipelining Figures 4.40, 4.41, 4.52;
Sections 4.4, 4.5.4–4.5.9
     Tues. Feb. 27 Modern Processors Sections 4.5.13, 4.6, 5.7
Optimizing Performance
     Thurs. Mar. 1 Performance Metric
Compiler Optimizations (1)
(Rest of) Chapter 5 A3 due midnight tomorrow;
     Tues. Mar. 6 Compiler Optimizations (2)
     Thur. Mar. 8 Midterm Exam
      Mar. 13 & 15 UR Spring Break
The Storage Hierarchy
     Tues. Mar. 20 Storage Technology Chapter 6 A4: tuning performance out;
Main assignment due in 15 days;
     Thur. Mar. 22 Caching A4 trivia due, noon;
     Tues. Mar. 27 Memory-oriented Performance Tuning
Exceptional Control Flow
     Thur. Mar. 29 Interrupts and Exceptions Chapter 8
     Tues. Apr. 3 Processes and Signals A4 due midnight yesterday;
A5: Unix shell out;
Main assignment due in 13 days;
     Thur. Apr. 5 Non-local Jumps, Linking
Skim Chapter 7 A5 trivia due, noon;
Virtual Memory
     Tues. Apr. 10 Address Translation Chapter 9
     Thur. Apr. 12 Pentium/Linux Case Study
     Tues. Apr. 17 Storage Management A5 due midnight yesterday;
A6: memory allocation out;
Main assignment due in 14 days;
I/O and Networks
     Thur. Apr. 19 Introduction to I/O and Network Programming Chapters 10 and 11 (skim all; read 10.1–10.3, 10.8–10.9, and 11.3–11.4 carefully) A6 trivia due, noon;
Concurrency
     Tues. Apr. 24 Threads, Semaphores, and Cache Coherence Chapter 12 (skim all;  read 12.3–12.6 carefully)
     Thur. Apr. 26 The Future of Computing A6 due midnight Apr. 30;
     Tue. May 8 Final Exam 19:15, WH 1400