Wk |
Date |
Lecture Topic |
Reading |
Notes |
Lab |
Assignment Due |
1 |
06/23 M |
Course Introduction, Number Representation |
Course Syllabus P&H (4th): 1.1-1.3, 1.6, 1.8, 2.4 P&H (5th): 1.1-1.5, 1.8, 1.10, 2.4 |
Section 1
J: Number Rep
|
Lab 1: Git |
|
06/24 Tu
|
Introduction to C, Pointers |
K&R: Ch 1-4
Brian Harvey Notes on C (pdf)
|
HW0: Introduce Yourself
Due week 2 in lab
|
06/25 W |
C Arrays, Strings, More Pointers |
K&R: Ch 5-6
Binky Pointer Fun Video |
Section 2
J: Basic C J: Arrays, Pointers
|
Lab 2: C Intro and Number Rep |
|
06/26 Th
|
C Memory Management and Usage |
K&R: 7.8.5, 8.7 |
HW1: Number Rep, Basic C (Solutions)
Due 6/29 @ 23:59:59
|
2
|
06/30 M
|
Intro to Assembly Language |
P&H (4th): 2.1-2.3, 2.6, 2.9, 3.2 P&H (5th): 2.1-2.3, 2.6, 2.9, 3.2 |
Section 3
J: Memory J: Basic MIPS |
Lab 3: Pointers and Debugging |
|
07/01 Tu
|
More MIPS, MIPS Functions |
P&H (4th): 2.7-2.8, B.6 P&H (5th): 2.7-2.8, A.6 |
|
07/02 W
|
MIPS Instruction Formats |
P&H (4th): 2.5, 2.10 P&H (5th): 2.5, 2.10 |
Section 4
| [No Labs] |
HW2: C Programming (Solutions) Due 07/04 @ 23:59:59 |
07/03 Th
|
Holiday |
HW3: MIPS (Solutions) Due 07/06 @ 23:59:59 |
3
|
07/07 M
|
Running a Program |
P&H (4th): 2.12, B.1-B.4 P&H (5th): 2.12, A.1-A.4 |
Section 5
|
Lab 4: Malloc and Assembly |
|
07/08 Tu
|
Floating Point, Performance |
P&H (4th): 1.4 P&H (5th): 1.6 |
|
07/09 W
| The Memory Hierarchy, Fully Associative Caches |
P&H (4th): 5.1, 5.2 (just to p.470) P&H (5th): 5.1-5.3 |
Section 6
J: Floating Point |
Lab 5: Functions and Pointers in Assembly |
|
07/10 Th
|
Direct-Mapped Caches, Set Associative Caches, Cache Performance |
P&H (4th): 5.3 P&H (4th): 5.4 |
Project 1: C and MIPS
Due 07/18 @ 23:59:59 |
4
|
07/14 M
|
Multilevel Caches, Cache Questions |
P&H (4th): 5.5 P&H (5th): 5.8 |
Section 7
J: Perf and Caches |
Lab 6: Cache Blocking |
|
07/15 Tu
|
Performance Programming, Technology Trends |
|
|
07/16 W
|
The Flynn Taxonomy, Data Level Parallelism |
P&H (4th): 1.5, 1.6 P&H (5th): 1.7, 1.8 |
Section 8 |
Lab 7: Data Level Parallelism |
Midterm Review -- 12-3pm, 120 Latimer |
07/17 Th
|
Amdahl's Law, Thread Level Parallelism |
P&H (4th): 7.1, 7.6 P&H (5th): 6.1, 6.3 |
HW4: FP and Caches (Solutions) Due 07/22 @ 23:59:59 |
5
|
07/21 M
|
Review Lecture; Old Midterm Problems |
P&H (4th): 7.2, 7.3, 5.8, 2.11 P&H (5th): 6.2, 6.5, 5.10, 2.11 |
Section 9
A: Parallel, SIMD
J: TLP |
Lab 8: Thread Level Parallelism |
MIDTERM -- 5-8pm 07/21, 2050 VLSB |
07/22 Tu
|
OpenMP, Transistors |
OpenMP Summary Card (pdf) |
|
07/23 W
|
Synchronous Digital Systems, Boolean Algebra |
More details on lecture material: SDS Handout, Logic Handout |
Section 10 |
Lab 9: Logisim Intro |
|
07/24 Th
|
Functional Units, Finite State Machines |
More details on lecture material: State Handout, Blocks Handout |
Project 2-1: Performance Optimization Due 07/27 @ 23:59:59 |
6
|
07/28 M
|
MIPS CPU Datapath, Control Intro |
P&H (4th): 4.1-4.3 P&H (5th): 4.1-4.3 |
Section 11 |
Lab 10: Logisim and Pipelining |
|
07/29 Tu
|
MIPS CPU Control, Pipelining Intro |
P&H (4th): 4.4, 4.5, 4.6 P&H (5th): 4.4, 4.5, 4.6 |
|
07/30 W
|
Pipelining Hazards |
P&H (4th): 4.7, 4.8 P&H (5th): 4.7, 4.8 |
Section 12 |
Make-up Labs; Work on Project 2 |
HW5: Digital Logic (Solutions) Due 07/31 @ 23:59:59 |
07/31 Th
|
Multiple Instruction Issue, Virtual Memory Intro |
P&H (4th): 4.10, 4.11 P&H (5th): 4.10, 4.11 |
Project 2: Performance Optimization Part 2 Due 08/03 @ 23:59:59
|
7
|
08/04 M
|
Virtual Memory |
P&H (4th): 5.4, 5.11 P&H (5th): 5.7, 5.15 |
Section 13 |
Lab 11: Virtual Memory |
|
08/05 Tu
|
More Virtual Memory, Warehouse-Scale Computers |
WSC: Ch 1, 2.4, 5.1-5.3 |
|
08/06 W
|
MapReduce |
[Optional] MapReduce paper (pdf) |
Section 14 |
Lab 12: MapReduce |
|
08/07 Th
|
Dependability: Parity, ECC, RAID |
P&H (4th): 6.2, 6.9 P&H (5th): 5.5, 5.11 [Optional] Berkeley RAID Paper (pdf) |
Project 3: CPU Design (logisim) Due 08/10 @ 23:59:59 Project 2 Contest Due 08/10 @ 23:59:59 |
8
|
08/11 M
|
I/O: Disks, Polling, Exceptions & Interrupts |
P&H (4th): 6.1, 6.3, 6.4, 6.6, 4.9 P&H (5th): 6.9, 5.2, 4.9 |
Section 15 |
Lab 13: GPU Programming |
|
08/12 Tu
|
Course Summary and Review |
|
Final Review -- 2-5pm 8/09, 2060 VLSB |
08/13 W
|
Special Topics: GP-GPU |
|
|
|
|
08/14 Th
|
[Study For Final] |
|
|
|
|
08/15 F
|
FINAL -- 9am-12pm, 155 Dwinelle |