Official course description:
AbstractIn this course, you will learn how to evaluate the performance of a computer system.
The course combines a focus on low-level system components (hardware, operating system, etc.) with the analysis of complex data systems.
In a world that requires near-instant response times and increasingly faster access to very large volumes of business-critical data, delays cost money.
Data scientists expect high-performance from their data systems in order to reduce time to insight.
Software and DevOps engineers are expected to continuously improve the performance of IT systems.
Oftentimes, performance profiles can uncover the effects of design or implementation bugs.
In this class, students will learn how to design and conduct performance experiments and how to troubleshoot existing complex data systems.
Formal prerequisitesStudents should have taken introductory courses on database systems and operating systems, or something similar. They should have some familiarity with command line interface and C/CPP.
Intended learning outcomes
After the course, the student should be able to:
- Design and conduct performance evaluation experiments
- Formulate hypothesis about the causes of poor performance across different layers of a data system’s stack (i.e., data management components, operating system, file system, network, hardware).
- Select appropriate set of tools for troubleshooting performance problems.
- Analyze the performance of a complex real-world data system.
The course is composed of lectures and exercise sessions.
The lectures will cover fundamental aspects of various systems components such as operating systems, storage systems, processors, data systems, etc.
The exercises will introduce tools and methodology for troubleshooting and performance analysis.
Students will also work on two project assignments during the semester in 2-3 person groups. They will be doing in-class presentations on these assignments as well.
The relevant literature will be provided on LearnIT every week.
Student Activity BudgetEstimated distribution of learning activities for the typical student
- Preparation for lectures and exercises: 10%
- Lectures: 25%
- Exercises: 25%
- Project work, supervision included: 30%
- Exam with preparation: 10%
Ordinary examExam type:
D: Submission of written work with following oral, External (7-point scale)
D22: Submission with following oral exam supplemented by the submission.
Students submit a report based on the two project assignments. This report is submitted for the exam.