UW Logo
University of Waterloo

Term and Year of Offering: Fall 2013

Course Number and Title: CS 854 - Advanced Topics in Computer Systems: Operating Systems Techniques for Many-Core CPUs and Deep Caching Hierarchies

Comp Sec Camp Loc Time Days/Date Bldg Room Instructor
SEM 001UW U01:30-04:20ThDC 3313Martin Karsten

Instructor's Name Office Location Contact Office Hours
Martin Karsten DC 3506 mkarstenuwaterloo.ca by email

NOTE: If you have missed the organizational meeting and would like to take the course for credit, please send an email to the instructor.

Course Description

Current trends in hardware design lead to changes in processor architecture: increasing transistor density is used for building parallel execution paths; increasing memory latency (relative to processing speed) is masked by deep caching hierarchies; hardware performance counters give increasingly detailed insights into execution performance at runtime. Furthermore, virtualization and cloud computing introduce novel computing scenarios, such as server consolidation and big data analysis. In this course, we will study the recent research literature addressing those challenges and opportunities. We will investigate and attempt to categorize/generalize solution approaches.

Course Overview

The course is comprised of several elements as outlined below.

Tentative Schedule

All papers linked below are directly accessible from computers on the UW network. To access ACM and IEEE papers outside the UW network, use the library proxy. For firefox, the URL Swap add-on is quite useful.

Sep 12Organizational Meeting
Sep 19Fundamentals and Hardware Trends (lecture)
Sep 26Synchronization (lecture)
Oct 3Memory and Caches
Oct 10Scalable Data Structures
Oct 17Control Flow and Scheduling
Oct 24System Architecture
Oct 31Dynamic System Optimization (guest lecture)
Nov 7Alternative Hardware and Software Design
Nov 14Virtualization, Cloud, and Power
Nov 21Project Presentations
Nov 28Project Presentations


The primary means for announcements are this web page and Piazza. Please direct course-related questions to Piazza, if possible. If necessary, contact the instructor directly (preferably by email).


From the School's web page:

Graduate courses assume a background of at least third-year Honours Computer Science at the University of Waterloo and a similar level of mathematical maturity. Students lacking this background will be asked to acquire this material in addition to the other requirements of the program.

Students considering the course should have taken and enjoyed an operating systems course, such as CS 350.

Evaluation (tentative)

IMPORTANT: Class attendance is required throughout the term!

Paper Summaries15
Class Participation15
Paper Presentation20
Course Project50

For an audit credit, you need to satisfy passing requirements for 'Class Participation' and 'Paper Reviews'.

Academic Integrity: In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. Check www.uwaterloo.ca/academicintegrity/ for more information.

Grievance: A student who believes that a decision affecting some aspect of his/her university life has been unfair or unreasonable may have grounds for initiating a grievance. Read Policy 70, Student Petitions and Grievances, Section 4, www.adm.uwaterloo.ca/infosec/Policies/policy70.htm. When in doubt please be certain to contact the department's administrative assistant who will provide further assistance.

Discipline: A student is expected to know what constitutes academic integrity (check www.uwaterloo.ca/academicintegrity/) to avoid committing an academic offence, and to take responsibility for his/her actions. A student who is unsure whether an action constitutes an offence, or who needs help in learning how to avoid offences (e.g., plagiarism, cheating) or about 'rules' for group work/collaboration should seek guidance from the course instructor, academic advisor, or the undergraduate Associate Dean. For information on categories of offences and types of penalties, students should refer to Policy 71, Student Discipline, www.adm.uwaterloo.ca/infosec/Policies/policy71.htm. For typical penalties check Guidelines for the Assessment of Penalties, www.adm.uwaterloo.ca/infosec/guidelines/penaltyguidelines.htm.

Appeals: A decision made or penalty imposed under Policy 70 (Student Petitions and Grievances) (other than a petition) or Policy 71 (Student Discipline) may be appealed if there is a ground. A student who believes he/she has a ground for an appeal should refer to Policy 72 (Student Appeals) www.adm.uwaterloo.ca/infosec/Policies/policy72.htm.

Note for Students with Disabilities: AccessAbility Services, located in Needles Hall, Room 1132, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with AccessAbility Services at the beginning of each academic term.