Princeton University
Computer Science Department

Computer Science 597C
Advanced Topics in Computer Science: 
From the Developing World to Data Centers

Vivek Pai

Fall 2012


Course Summary

Examines developments in computer systems, focused on scale, resource efficiency, and the new set of demands being placed on the operating system and networks. Primary interests will be the extreme ends of the resource spectrum, and the technical challenges in addressing them. Students will present papers and contribute to the critical analysis and discussion of existing work.


Administrative Information

Lectures: MW 1:30-2:50, Room: CS 301

Professor: Vivek Pai - 322 CS Building - 258-2086 vivek@cs.princeton.edu

Graduate Coordinator: Melissa Lawson - 310 CS Building - 258-5387 mml@cs.princeton.edu


   September 2012
Su Mo Tu We Th Fr Sa
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

17 - Organizational Meeting
19 - presentation schedule, FPO
24 - Vivek presents advice on giving talks
26 - Vivek presents

    October 2012
Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

1 - Wathsala - SILT: A Memory-Efficient, High-Performance Key-Value Store
3 - Arpan - Live Migration of Virtual Machines
8 - Logan - HashCache
10 - Muneeb - RAMCloud
15 - Dushyant - DCTCP
17 - Sharvanath - Quincy: Fair Scheduling for Distributed Computing Clusters
22 - Kevin - Operating System Support for NVM+DRAM Hybrid Main Memory
24 - Linpeng - The Multikernel: A new OS architecture for scalable multicore systems
29 - Fall break
31 - Fall break

   November 2012
Su Mo Tu We Th Fr Sa
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

5 - Jennifer - Wide-area Network Acceleration for the Developing World
7 - Wathsala - PacketShader: a GPU-accelerated Software Router
12 - Logan - Cells: A Virtual Mobile Smartphone Architecture
14 - Linpeng - EndRE
19 - Sharvanath - Better I/O Through Byte-Addressable, Persistent Memory
21 - Arpan - Resilient Distributed Datasets
26 - Kevin - FlashVM
28 - Jennifer - Energy Management in Mobile Devices with the Cinder Operating System

   December 2012
Su Mo Tu We Th Fr Sa
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

3 - Dushyant - Black-box and Gray-box Strategies
5 - Muneeb - An Operating System for Multicore and Clouds
10 - Jennifer - A Comparison of Software and Hardware Techniques for x86 Virtualization
12 -


Virtualization

A Comparison of Software and Hardware Techniques for x86 Virtualization
Keith Adams and Ole Agesen
ASPLOS'06 October 21-25, 2006, San Jose, California, USA.
http://www.vmware.com/pdf/asplos235_adams.pdf

Xen and the Art of Virtualization -
Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
Puplished at SOSP 2003
http://www.cl.cam.ac.uk/research/srg/netos/papers/2003-xensosp.pdf
from http://xen.org/community/xenpapers.html

Live Migration of Virtual Machines
Christopher Clark, Keir Fraser, Steven Hand, Jacob Gorm Hansen, Eric Jul, Christian Limpach, Ian Pratt, Andrew Warfield.
Published at NSDI 2005
http://www.cl.cam.ac.uk/netos/papers/2005-migration-nsdi-pre.pdf
from http://xen.org/community/xenpapers.html

The Turtles Project: Design and Implementation of Nested Virtualization
Muli Ben-Yehuda et al, IBM Research Haifa; Michael D. Day, IBM Linux Technology Center; Zvi Dubitzky, Michael Factor, Nadav HarEl, and Abel Gordon, IBM Research-Haifa; Anthony Liguori, IBM Linux Technology Center; Orit Wasserman and Ben-Ami Yassour, IBM Research-Haifa
http://static.usenix.org/events/osdi10/tech/full_papers/Ben-Yehuda.pdf


New Storage Horizons

SSDAlloc: Hybrid SSD/RAM Memory Management Made Easy
Anirudh Badam andd Vivek S. Pai
published at NSDI 2011
http://www.cs.princeton.edu/%7Eabadam/papers/ssdalloc.pdf

FlashVM: Virtual Memory Management on Flash
Mohit Saxena and Michael M. Swift
Published at Usenix ATC 2010
http://www.usenix.org/event/atc10/tech/full_papers/Saxena.pdf

Better I/O Through Byte-Addressable, Persistent Memory
Jeremy Condit, Edmund B. Nightingale, Christopher Frost, Engin Ipek, Doug Burger, Benjamin Lee, and Derrick Coetzee
in Symposium on Operating Systems Principles (SOSP '09), Association for Computing Machinery, Inc., October 2009
ftp://ftp.cs.utexas.edu/pub/dburger/papers/SOSP09.pdf

Operating System Support for NVM+DRAM Hybrid Main Memory
Jeffrey C. Mogul, HP Labs, Palo Alto; Eduardo Argollo, HP Labs, Barcelona, Spain; Mehul Shah, HP Labs, Palo Alto; Paolo Faraboschi, HP Labs, Barcelona, Spain
http://static.usenix.org/event/hotos09/tech/full_papers/mogul/mogul.pdf


OS Scaling & Performance

Design and Implementation of a Consolidated Middlebox Architecture
Vyas Sekar, Intel Labs; Norbert Egi, Huawei; Sylvia Ratnasamy, UC Berkeley; Michael K. Reiter, UNC Chapel Hill; Guangyu Shi, Huawei
https://www.usenix.org/system/files/conference/nsdi12/nsdi12-final96.pdf

Difference Engine:Harnessing Memory Redundancy in Virtual Machines -
Diwaker Gupta, Sangmin Lee, Michael Vrable, Stefan Savage, Alex C. Snoeren, George Varghese, Geoffrey M. Voelker, and Amin Vahdat.
Proceedings of the 8th USENIX Symposium on Operating System Design and Implementation. San Diego, CA, Dec 2008
http://www.sysnet.ucsd.edu/~dgupta/papers/osdi08-de.pdf

An Analysis of Linux Scalability to Many Cores
Silas Boyd-Wickizer, Austin T. Clements, Yandong Mao, Aleksey Pesterev, M. Frans Kaashoek, Robert Morris, and Nickolai Zeldovich, MIT CSAIL
http://static.usenix.org/events/osdi10/tech/


Network Optimization & Developing World

PacketShader: a GPU-accelerated Software Router
Sangjin Han, Keon Jang, KyoungSoo Park and Sue Moon.
In proceedings of ACM SIGCOMM 2010, Delhi, India. September 2010.
http://www.ndsl.kaist.edu/~kyoungsoo/papers/packetshader.pdf

ServerSwitch: A Programmable and High Performance Platform for Data Center Networks
Guohan Lu, Chuanxiong Guo, Yulong Li, Zhiqiang Zhou, Tong Yuan, Haitao Wu, Yongqiang Xiong, Rui Gao, and Yongguang Zhang, Microsoft Research Asia
http://static.usenix.org/event/nsdi11/tech/full_papers/Lu_Guohan.pdf

HashCache: Cache Storage for the Next Billion
Anirudh Badam, Princeton University; KyoungSoo Park, Princeton University and University of Pittsburgh; Vivek S. Pai and Larry L. Peterson, Princeton University
http://static.usenix.org/event/nsdi09/tech/full_papers/badam/badam.pdf

EndRE: An End-System Redundancy Elimination Service for Enterprises
Bhavish Aggarwal, Microsoft Research India; Aditya Akella and Ashok Anand, University of Wisconsin-Madison; Athula Balachandran, Carnegie Mellon University; Pushkar Chitnis, Microsoft Research India; Chitra Muthukrishnan, University of Wisconsin-Madison; Ramachandran Ramjee, Microsoft Research India; George Varghese, University of California, San Diego
http://static.usenix.org/event/nsdi10/tech/full_papers/aggarwal.pdf

Wide-area Network Acceleration for the Developing World
Sunghwan Ihm, KyoungSoo Park, and Vivek S. Pai
In Proceedings of the USENIX Annual Technical Conference (USENIX'10)
Boston, MA, June 2010
http://www.cs.princeton.edu/~sihm/papers/wanax-usenix10.pdf

SILT: A Memory-Efficient, High-Performance Key-Value Store
Hyeontaek Lim and Bin Fan and David G. Andersen and Michael Kaminsky
In Proc. 23rd ACM Symposium on Operating Systems Principles (SOSP) , Oct 2011
http://www.cs.cmu.edu/~dga/papers/silt-sosp2011.pdf


Student-suggested papers

Fast Crash Recovery in RAMCloud
Diego Ongaro, Stephen M. Rumble, Ryan Stutsman, John Ousterhout, and Mendel Rosenblum
http://www.stanford.edu/~ouster/cgi-bin/papers/ramcloud-recovery.pdf

The Multikernel: A new OS architecture for scalable multicore systems
Andrew Baumann, Paul Barham, Pierre-Evariste Dagand, Tim Harris, Rebecca Isaacs, Simon Peter, Timothy Roscoe, Adrian Schupbach, and Akhilesh Singhania
http://research.microsoft.com/pubs/101903/paper.pdf

Energy Management in Mobile Devices with the Cinder Operating System
Arjun Roy, Stephen M. Rumble, Ryan Stutsman, Philip Levis, David Mazieres, Nickolai Zeldovich
http://people.csail.mit.edu/nickolai/papers/roy-cinder-eurosys.pdf

Factored operating system (fos)
http://groups.csail.mit.edu/carbon/?page_id=39

An Operating System for Multicore and Clouds: Mechanisms and Implementation
David Wentzlaff, Charles Gruenwald III, Nathan Beckmann, Kevin Modzelewski, Adam Belay, Lamia Youseff, Jason Miller, and Anant Agarwal
ACM Symposium on Cloud Computing (SOCC), June 2010
http://www.princeton.edu/~wentzlaf/documents/Wentzlaff.2010.SoCC.fos.pdf

Data Center TCP (DCTCP)
Mohammad Alizadeh (Stanford University), Albert Greenberg (Microsoft Research), David Maltz (Microsoft Research), Jitu Padhye (Microsoft Research), Parveen Patel (Microsoft Research), Balaji Prabhakar (Stanford University), Sudipta Sengupta (Microsoft Research), Murari Sridharan (Microsoft Research)
presented at SigCOMM 2010
http://www.stanford.edu/~alizade/Site/DCTCP_files/dctcp-final.pdf

FAWN: A Fast Array of Wimpy Nodes
David G. Andersen and Jason Franklin and Michael Kaminsky and Amar Phanishayee and Lawrence Tan and Vijay Vasudevan
SOSP 2009
http://www.cs.cmu.edu/~dga/papers/fawn-sosp2009.pdf

Black-box and Gray-box Strategies for Virtual Machine Migration
Tim Wood, Prashant Shenoy, Arun Venkataramani, Mazin Yousif
USENIX NSDI, April 2007.
http://www.cs.umass.edu/~arun/papers/sandpiper.pdf

PTask: Operating System Abstractions To Manage GPUs as Compute Devices
Christopher J. Rossbach, Jon Currey (MSR), Mark Silberstein (Technion), Baishakhi Ray, Emmett Witchel (UT Austin)
http://www.sigops.org/sosp/sosp11/current/

De-indirection for Flash-based SSDs with Nameless Writes
Yiying Zhang, Leo Prasath Arulraj, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau,University of Wisconsin-Madison
http://static.usenix.org/events/fast12/tech/full_papers/Zhang.pdf

Cells: A Virtual Mobile Smartphone Architecture
Jeremy Andrus, Christoffer Dall, Alex Vant Hof, Oren Laadan, Jason Nieh (Columbia)
http://www.sigops.org/sosp/sosp11/current/2011-Cascais/printable/13-andrus.pdf

Quincy: Fair Scheduling for Distributed Computing Clusters
Michael Isard, Vijayan Prabhakaran, Jon Currey, Udi Wieder, Kunal Talwar, and Andrew Goldberg
In Proc. 23rd ACM Symposium on Operating Systems Principles (SOSP) , Oct 2009
http://dl.acm.org/citation.cfm?id=1629601

Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing
Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Justin Ma, Murphy McCauley, Michael J. Franklin, Scott Shenker, Ion Stoica
https://www.usenix.org/system/files/conference/nsdi12/nsdi12-final138.pdf