Datacenter Networks & Systems
CS 8803, Georgia Tech, Spring 2025
Class Project
Each student (or group of up to two students) can pick a project related to datacenter networks and systems. As code artifacts for many recent systems papers are available and functional and some or all results of such papers reproduced, students are encouraged to use such artifacts as the starting point of their project. The following types of projects are recommended:
- Research idea: Students are encouraged to propose their original research ideas as a class project. The idea should be related to the topics discussed in class, preferably building in already available codebases. The proposal should include a detailed plan, elaborating on the feasibility of producing a deliverable within the course's timeframe.
- Reproducing results with a twist: Most systems are developed with a specific type of infrastructure and/or workload in mind. Your objective will be to pick an artifact, identify the workload and infrastructure it was developed for, and form a hypothesis about a (reasonable) setting that might be challenging for the studied artifact to handle. The final deliverable should be in the form of experiments that support or disprove your hypothesis. Negative results, that is results that disprove your hypothesis, are acceptable.
- Matchmaking: As we will discuss in class, developing and managing a large-scale infrastructure requires optimizing many parts of it. Optimizing even a small, but critical part, can be the focus of study for many years. Your objective will be to identify two complimentary systems and build a system that combines their strengths, demonstrating the value of the combination through experiments.
A list of suggested projects will be available on Canvas.
Deliverables
Proposal: A short writeup summarizing the motivation, the idea, and a summary of the most related two or three papers. The writeup should also point to the artifacts you intend to use to achieve your goal. This should help make sure that we agree on a promising direction for the project.
Proposal Presentation: Each group will present to the rest of the class the motivation, problem statement, and planned methodology for approaching their project. The presentation should thoroughly cover the background material of the project.
Progress Report: This report is meant as a checkpoint to ensure that you now have a concrete idea of what the project is about and what deliverable you will be working towards. The report should include the following sections:
- Project objective
- Motivation - why is the objective important?
- Challenges - why is achieving it hard?
- Sketch of the approach - what's your plan for tackling the problem?
- Related Work
- Evaluation Plan - measures of success, timeline, and required resources
- Responsibilities of different team members
You should have the environment needed for your project up and running at this stage (i.e., you should have the artifacts that your project relies on running in the environment where you will conducting your planned experiments).
Final Report and Presentation: The final report should have the same sections as the first progress report with all tentative plans replaced with the concrete outcomes of your research through the semester. You should also summarize that report in a presentation which you will give in class during the last week of class. The grade of the final report is almost execlusively based on the emprical results produced by your research. The grade of the presentation is based on your ability to demonstrate your understanding of the problem, methodology, and approach of your project.