Syllabus, reading assignments and due dates

All readings and assignments are due before class on the day indicated on the syllabus, unless explicitely stated otherwise, as in "Read (after class)".

Paper summaries must posted on the course Wiki at latest 30 minutes before the class on the date for which they are assigned. You will not receive credit for the summary if you do not post your summary 30 minutes before the class time. 

Introduction and Review
WEEK 1:
January 5, 10
Lecture 1: Course Introduction (pptx)(ppt)

Lecture 2: Computer Architecture Primer (pptx)(ppt) (pdf)
Read (after class): Tanenbaum, Structured Computer Organization (Fifth Edition), pp. 292-310

Lecture 3: Operating Systems Primer (lecture notes)
Read (after class): Tanenbaum, Process Scheduling.

Topic I: Hardware Counters as a Tool in Systems Research
WEEK 2.5:
January 12, 17, 19
Read: Symbiotic Jobscheduling for a Simultaneous Multithreading Processor (Skip Sections 2 and 6-12)
Presenter: Sasha (slides)
Due: Summary of the assigned paper
Lab day! The class will meet in a CSIL Lab (room ASB 9700)

Lecture 4: Multicore and Multithreaded Processors. Case study: Niagara, AMD Opteron
Read (after class):
  • Tanenbaum, Structured Computer Organization (Fifth Edition), pp. 548-567
  • Hennessy, Patterson, Computer Architecture: Quantitative Approach (Fifth Edition), pp. 172-181
  • Hennessy, Patterson, Computer Architecture: Quantitative Approach (Fifth Edition), pp. 249-257
  • Tanenbaum, Structured Computer Organization pp. 311-323
Read: Addressing Shared Resource Contention in Multicore Processors via Scheduling
Presenter: Craig
Due: Summaries of the assigned paper
Topic II: Contention for Resources in Hardware and Software 
WEEK 3:
January 24, 26
Read: A Case for NUMA-Aware Contention Management on Multicore Systems
Presenter: Jessica
Due: Summaries of the assigned paper
Lecture 5: The Art of Scalable Synchronization (pptx)
Read after class: Herlihy, Shavit, The Art of Multiprocessor Programming, Spinlocks
Topic III: Dealing with Lock Contention
WEEK 4:
January 31 and February 2
Read: Decoupling Contention Management from Scheduling
Presenter: Karol, Evgeny
Due: Summary of the assigned paper

Due in class: Assignment 1
Read: Database Engines on Multicores: Why Parallelize When You Can Distribute?
Presenter: Sania, Amir
Due: Summary of the assigned paper
Topic IV: Data Locality I
WEEK 5:
February 7, 9
Lecture 5: Presentation and explanation of final project proposals.
Read: All final project proposals.
Read: Tiled-MapReduce: Optimizing Resource Usages of Data-parallel Applications on Multicore with Tiling
Presenter: Jacky Li
Due: Summary of the assigned paper

Due in class: Assignment 2
READING BREAK: Pick your project!!!
WEEK 6:
February 14, 16
Your goal during this week is to decide what project you are going to work on and, if you'd like to work in a group, pick your partners.

Due Monday (2/20) 11:59pm: Project topic, project group sent to Sasha by e-mail
Topic V: Data Locality II
WEEK 7:
February 21, 23
Read: A Software Approach to Unifying Multicore Caches
Presenter: Yongmin, Masum
Due: Summary of the assigned paper

Due in class: Assignment 3
Read: MemProf: a Memory Profiler for NUMA Multicore Systems
Presenter: Ibrahim
Due: Summary of the assigned paper

Due Monday (2/27) 11:59pm by e-mail: Project workplan and milestones, assignment of responsibilities
Topic VI: Building systems that address data sharing
WEEK 8:
February 28 and March 1
Read: Tornado: Maximizing Locality and Concurrency in a Shared Memory Multiprocessor Operating System
Presenter: Hussein
Due: Summary of the assigned paper

Read: A Case for Scaling Applications to Many-core Platforms with OS Clustering
Presenter: Lei, Jiahua
Due: Summary of the assigned paper
Read: Data-Oriented Transaction Execution
Presenter: Somsubhra, Ankit Gupta
Due: Summary of the assigned paper
Topic VII: Simplifying Parallel Programming
WEEK 9:
March 6, 8
Read: Optimistic Parallelism Requires Abstractions
Presenter: Yuan Zhao, Jian Peng
Due: Summary of the assigned paper

Read: The TAO of Parallelism in Algorithms
Presenter: Mohsen, Erfan
Due: Summary of the assigned paper
Read: Synchronization via Scheduling: Techniques For Efficiently Managing Shared State
Presenter: Mohammad, Alex
Due: Summary of the assigned paper
Topic VIII: To Share or not to Share?
WEEK 10:
March 13, 15
Read: Corey: An Operating System for Many Cores
Presenter:  Arun, Tianhan
Due: Summary of the assigned paper

Read: FlexSC: Flexible System Call Scheduling with Exception-Less System Calls
Presenter: Shaya, Xiaonan
Due: Summary of the assigned paper
Read: The Multikernel: A new OS architecture for scalable multicore systems
Presenter: Abdullah, Holly
Due: Summary of the assigned paper
Topic IX: Tools for your final project
WEEK 11:
March 20, 22
Guest lecture: How to Make Beautiful Graphs with R, a tutorial by Mark Roth
Virtual Guest Lecture: Bill Dally: Power, Programmability, and Granularity: The Challenges of ExaScale Computing
Due: Summary of the talk posted to the wiki
Topic X: Green Computing
WEEK 12:
March 27
Read:PocketWeb: Instant Web Browsing for Mobile Devices
Presenter: Mani, Shokoofeh
Due: Summary of the assigned paper

Read: Totally Green: Evaluating and Designing Servers for Lifecycle Environmental Impact
Presenter: Arash
Due: Summary of the assigned paper
Final Project Presentations and Mock-up Program Committee
WEEKS 12.5-13.5:
March 29 and April 3, 5, 10
March 29 (15 minutes each):
Craig (P2012)
Jessica (Cluster scheduling)
Arun (Energy tracking)
April 3 (30 minutes each):
P2012 Map/Reduce Group
P2012 Data structure Group
Mobile apps Group
April 5 (15 minutes each):
Alex (NUMA replication)
Jian, Yuan (NUMA replication)
Som (Visualization)
April 10 (20 minutes each):
Karol (ABACUS)
Sania, Amir (Cluster scheduling)
Ankit, Andullah (Cluster scheduling)
Shokofeh, Arash, Mani (Cluster scheduling) Shaya (Cluster scheduling)
Final project due date: April 17, 2012. 11:59pm. PDF by email. No extensions given.

© Copyright 2007-2012 Simon Fraser University www.sfu.ca