|
CSE 550: Introduction to Computer Systems Research, Autumn 2017
|
|
Overview
Instructor:
Arvind Krishnamurthy
Office hours: Mon 10-11am in CSE544, or by appointment.
TAs: Yuchen Jin (yuchenj AT cs)
Office hours: by appointment (send email)
Lectures: MW 11:00am-12:20pm
This course will provide the common intellectual foundation for
systems research, suitable as a terminal course for those not
interested in further study in systems, or as a gateway course to the
various specialized systems courses the department offers. The course
will cover the common foundation for research in operating systems,
databases, cluster and wide area distributed systems, networking, and
parallel systems.
The course consists of four major components:
- You will read one or two papers per lecture. For each paper,
you will craft a blog entry contributing an answer to one of the
questions we pose in advance. Or you can email a summary of the
paper (more info below).
- We will hand out two problem sets, which will consist
of a mixture of coding, measurement, or design questions. You can
perform the problem sets in teams of two.
- You will form teams of two or three, and each team will pick a
research project to do for the quarter. There will be intermediate
milestones associated with the project, as well as a final report
and presentation at the end of the quarter.
There is no midterm or final for the course.
Prerequisities: the basic prerequisite is to have taken an
undergraduate operating systems course (CSE
451 or equivalent). If you haven't taken an undergrad OS course, you
might still be able to manage the course but
please come talk to the teaching staff. We will not be covering
undergraduate material in this course.
Papers: you will be responsible for reading one or two
papers before each class, and contributing your thoughts on each
assigned paper to the class discussion board before the class that
covers it.
Mailing list: When you register for the course, you'll
automatically be added to the class mailing list
(cse550a_au17@uw.edu). To manage your subscription, visit
the mailing
list web page. You've been subscribed using your
u.washington.edu email address. But, you can modify your
subscription to use an email address of your choice. Note that you
can only post to the mailing list from your subscribed email address.
Calendar: Calendar that lists all of the schedule including lectures, assignments, and project due dates.
Here's the link to the canvas page for the class discussion board and assignment uploads:
https://canvas.uw.edu/courses/1115924
The discussion board can be used for two purposes:
- Course discussion. This is a great place for you
to post questions about papers, programming assignments or design
exercises, to look for a project partner, or anything else
class-related.
- Paper discussions. For each lecture other than the
first, we will post a small set of discussion questions based on the
assigned papers. We'll create one thread per discussion question
set. You're required to add a comment to the discussion for
each of the threads by 9am on the day of the class. (This is to give
time for everyone to read the blog entries before class.) For each
thread, pick one of the questions in the questionset to answer. Please
keep blog entries short: they can be anything that provides insight
into the question being asked. We will automatically grant two
mulligans during the quarter.
Your blog entries will be graded, but with a very simple 2-bit
scale. If you don't post a blog entry, you get a 0. If you post
something, but if there are significant problems with what you've
posted, e.g., we're not convinced you read and thought about the
paper, you get a 1. If you post something interesting and
thoughtful, you get a 2; we expect most of your postings to get this
grade. Once in a while, if you post something that is surprisingly
insightful or otherwise exceptional, you'll earn a 3; these grades
will be rare.
Here is the schedule of papers that will be fleshed out as the quarter
progresses. Note that you're required to read assigned papers, but
the optional additional papers are just that: purely optional, for your
interest, if you choose to go deeper on your own. Discussion board
entries for the assigned papers are due by 9am on the day of the
associated lecture.
Date |
Reading |
Notes |
Assignments |
Sept 27 |
Introduction
|
slides
|
Assignment #1
|
Oct 2 |
Concurrency
|
slides
|
|
Oct 4 |
Web services
|
slides
|
|
Oct 9 |
Transactions
|
slides
|
|
Oct 11 |
Distributed Transactions
|
slides
|
Assignment #2
|
Oct 16 |
Distributed Computation
|
slides
|
|
Oct 18 |
Consensus
|
slides
|
|
Oct 23 |
Paxos (contd.)
|
|
|
Oct 25 |
Virtualization
|
slides
|
|
Oct 30 |
Software virtual memory
|
slides
|
|
Nov 6 |
File Systems
|
slides
|
|
Nov 8 |
Large scale storage systems
|
slides
|
|
Nov 13 |
Structured Storage
|
slides
|
|
Nov 15 |
Big Data
|
slides
|
|
Nov 20 |
Consistent Storage (Guest lecture: Doug Woos)
|
|
|
Nov 22 |
No class
|
|
|
Nov 27 |
DHTs/P2P
|
slides
|
|
Nov 29 |
Networking: Cong control
|
slides
|
|
Dec 4 |
Networking: Routing
|
slides
|
|
Dec 6 |
Networking: General discussion
|
|
|
Everybody registered for the course should already have had an
instructional UNIX account created for them by the department support
staff, and have been notified of it. Using this account, you can
remotely log into (via ssh) the attu.cs.washington.edu compute
cluster. You can find more information
about instructional resources here.
You should also be able to do the programming assignments on your
own personal machines; none of them require large or exceptionally
powerful machines. You might find it useful to install VMware for
assignments involving Linux development. Both VMware Player and
VMware Server are free, and downloadable from VMware's site.
Late days policy: you can accumulate a total of four late days
for the assignments without any penalties.
- Assignment #1
out: sep 27th
due: oct 12th at 5pm
- Project
pre-proposal: oct 23
proposal: nov 9
checkpoint 1: nov 20
checkpoint 2: dec 1
final poster: Dec 11th, in the Atrium
final report: Dec 13th
- Assignment #2
out: oct 19th
due: nov 3rd at 5pm