15-712 Semester Project

Projects should be done in groups of three. If you're looking for partners or ideas, also try out the 712 Project Wiki Page.

Project Presentation Schedule

Project groups will get 10 minutes to present their projects, followed by 3 minutes of questions. We mentioned a few general presentations suggestions in class:

Take a look at Dave Patterson's entertaining talk on "How to Have a Bad Career In Research/Academia" for a few pointers. James also recomends Jonathan Shewchuk's notes on "Giving an Academic Talk."

A Case for a Flash based Metadata Server Solution in Cluster File SystemsWednesday Dec 5
Using Multi-hop Opportunistic Broadcast to Aggregate Upload BandwidthWednesday Dec 5
Data-intensive computing with HadoopWednesday Dec 5
Opportunistic Use Of Available Resources By Mobile ClientsWednesday Dec 5
Small file packing in distributed parallel file systemsWednesday Dec 5
Data sharing for improved IO performanceFriday Dec 7
Managing Chunk Sizes for Exploiting File Similarities in Distributed SystemsFriday Dec 7
Netezza meets MapReduce: Abstractions for data intensive computing Friday Dec 7
Flash cloning for realtime malware screeningFriday Dec 7
Optimal Data Migration in Self-managing Storage SystemsFriday Dec 7

Project Management

You should strongly consider using either Subversion or CVS to perform source code control for your project and the paper you write describing it. I suggest Subversion.

I also strongly suggest writing your course project report using LaTeX. It is the de-facto tool in which most CS research papers are written. While it has a bit of start up cost, it's much easier to collaboratively write complex research papers using LaTeX than Word.

Writing Papers


The most popular network simulators are ns-2 and Opnet. ns-2 is free, and CSD has some licenses for Opnet.

Testbeds and Emulation


Emulab is a network emulation environment at the University of Utah. It provides racks of machines and programmable switches that can be configured to form mostly-arbitrary network topologies, with controllable delay and loss between nodes. It's a great way to test real programs in repeatable conditions or at scales that you can't get on your own.

Emulab also provides a set of wireless nodes that you can control, located around their building. They also have an experimental mobile robot testbed that could make for fun projects (the robots are designed to move computers and radios around so that you can do repeatable experiments involving mobility).

The RON Testbed

The RON testbed is a 37-node distributed Internet testbed. The nodes are mostly US centric, but some are located around the globe. The machines can be used for network measurements or for evaluating your projects. They're managed through Emulab. The RON testbed is similar to, but smaller than...


PlanetLab is a large-scale, distributed collection of machines that can be used for experiments and measurements. It has about 594 nodes scattered over 282 sites. The machines run something linux-ish that you can login to and run programs, and there exist a variety of utilities for automatically distributing software to the nodes, running programs, and so on.

You must sign up to use a PlanetLab account. Please only sign up if you're going to use the account, since it imposes some management overhead on people not involved with the course.

Wireless Nodes

Dave and some of the other faculty have a handful of various wireless nodes, cards, old laptops, etc., available that you may be able to use for your projects.


moteLab is a wireless sensor network deployed in the CS building at Harvard. It has 30 sensor motes that users can upload system images to, collect data from, etc. To use moteLab, you'll need to send them an email (listed on their web page). Please CC: dga on the mail.


Mistlab is a wireless testbed with 60 Mica2/Cricket nodes (sensor boards, much like the motes in moteLab) distributed over the 9th floor in the Stata center at MIT's Computer Science and AI Lab. For access, see their web page and send them an email, and please CC: dga on the mail.




Last updated: Tue Dec 11 22:21:04 -0500 2007 [validate xhtml]