The schedule will be filled as the class progresses. And the schedule
is subject to changes. Please check back frequently.
Lecture notes will be posted right after each class.
| Date |
Lecture notes |
Readings |
| Jan 12, Wednesday |
Introduction |
| Jan 17, Monday |
Martin Luther King Day |
| Jan 19, Wednesday |
Parallel application cases |
Sections 2.1/2.2 of Culler and Singh Google PageRank |
| Jan 24, Monday |
Parallel programming |
Section 2.3 of Culler and Singh |
| Jan 26, Wednesday |
Parallel programming |
Chapter 3 of Culler and Singh |
| Jan 31, Monday |
Superscalar processors (instruction-level parallelism) |
The microarchitecture of Superscalar processors |
| Feb 2, Wednesday |
Shared memory multiprocessors and cache coherence |
Section 5.1/5.3 of Culler and Singh |
| Feb 7, Monday |
Multiprocessor memory consistency models |
Section 5.2/5.3 of Culler and Singh
Shared memory consistency models: A tutorial
|
| Feb 9, Wednesday |
Synchronization |
Section 5.5 of Culler and Singh
Algorithms for scalable synchronization on shared memory multiprocessor
|
| Feb 14, Monday |
Power efficient data center for a key-value store by Aaron Gorenstein |
FAWN: a fast array of wimpy nodes |
| Feb 16, Wednesday |
Distributed memory parallel computing and MPI |
MPI Forum |
| Feb 21, Monday |
Implementation of MPI systems |
| Feb 23, Wednesday |
Additional parallel programming models |
OpenMP, Cilk |
| Feb 28, Monday |
Parallelism/concurrency in servers |
| Mar 2, Wednesday |
Tracing in parallel systems and servers |
Resource Containers: A new facility for resource management in server systems
Using Magpie for request extraction and workload modeling
Hardware counter driven on-the-fly request signatures |
| Mar 7, Monday |
Spring break |
| Mar 9, Wednesday |
Spring break |
| Mar 14, Monday |
Guest lecture by Prof. Chen Ding |
| Mar 16, Wednesday |
General Purpose GPU Computing by Xiaoqing Tang |
| Mar 21, Monday |
Multicore resource management |
Towards practical page coloring-based multi-core cache management
Hardware execution throttling for multi-core resource management |
| Mar 23, Wednesday |
Parallel I/O |
Multi-layer event trace analysis for parallel I/O performance tuning |
| Mar 28, Monday |
Distributed systems |
Distributed snapshots: determining global states of distributed systems |
| Mar 30, Wednesday |
Distributed consensus |
The part-time parliament |
| Apr 4, Monday |
Rollback-recovery protocols in message-passing systems by Meilin Zhang |
| Apr 6, Wednesday |
Replication |
| Apr 11, Monday |
Deterministic parallel programming by Li Lu |
| Apr 13, Wednesday |
Internet data centers |
| Apr 18, Monday |
MapReduce: A Programming Model for Large-Scale Distributed Computation by Shantonu Hossain Instructor's notes |
MapReduce: simplified data processing on large clusters |
| Apr 20, Wednesday |
Cloud computing |
Above the clouds: a Berkeley view of cloud computing |
| Apr 25, Monday |
Course review |
| Apr 27, Wednesday |
Project demo |