Project Deadlines
Title | Due Date | Material |
---|---|---|
Project 1 | Sep 20, 11:59 PM | Project 1 doc |
Class Project -- Proposal☆ | Oct 8, 11:59 PM | Report Template☆ |
Class Project -- Mid-semester Report☆ | Nov 8, 11:59 PM | |
Class Project -- Preliminary Project Report☆ | Dec 6, 11:59 PM | |
Class Project -- Final Project Report☆ | Dec 10, 11:59 PM |
☆ Report template is the same for all projects
Project 1
A quick development project to sharpen C++/Java skills and to prepare for the upcoming research/dev project.
Class Project
Every student should complete a semester-long class project. The students can decide between a systems project and a research project.
Useful Links:
- C/C++ learning resources: learncpp.com; freeCodeCamp.org
System Projects
A system project sharpens your systems skills and provides background on state-of-the-art systems, data structures and algorithms. For a successful systems project you will design and implement a systems component in C or C++, and you will deal with low-level system implementation details like memory allocation and management, cache-aware processing, parallel and concurrent processing and a deeper understanding of read/write performance trade-offs, and performance scalability. Systems projects can be carried out by one student or a group of two students.
This year we will have two topics for a systems project.
Projects
Research Projects
A research project, on the other hand, aims at challenging the state-of-the-art. The goal is (i) either to better understand an open research problem through analysis and benchmarking, or (ii) to solve open problems through new designs and proof-of-concept implementations. The ultimate goal of a research project is to give a taste of research to students, and ideally lead to publications. When working on a research project, the student will interact with the instructor and the teaching assistants closely. Students will work in groups of two students.
We have a number of possible research topics below. The students can also propose their own project (subject to instructor's approval).