15-829: Performance Modeling Tools for Computer Systems Researchers

Meets: FRIDAYS 10:10 a.m. - 1:10 p.m., Room: GHC 4301

12 Units



INSTRUCTOR: Prof. Mor Harchol-Balter

TA: Shashank Obla (volunteer)


Office Hours:


This class is aimed at computer systems PhD students who are already involved in doing systems research, where the goal is to improve the performance of the system. Improving performance could involve reducing response times, providing class-based response time differentiation, improving tail behavior, scheduling to favor certain jobs, reducing loss/drop rate, increasing throughput, increasing revenue, reducing power or other costs, load balancing, etc.

Improving systems performance involves queue management and resource allocation, both major topics in queueing theory. While queueing theory classes traditionally involve heavy mathematics, the goal of this class is to teach systems students the performance modeling/queueing theory in a super intuitive manner, without covering proofs, and without requiring a probability background. The focus of the class will be on learning how to translate computer systems performance problems into the appropriate queueing network framework. Each class is divided into two parts. The first half presents a lesson in queueing theory, modeling, simulation, or workload characterization. The second half is devoted to having a student in the class present their own computer systems performance research problem. Together, we will figure out in real time how to model this research problem as a queueing network and solve the problem. In between the two halves, we will share pizza!


No prerequisites, other than the fact that you should be a Phd student , and you should be already be working on computer systems research, where you're looking at improving performance of your system.

Textbook: Performance Modeling and Design of Computer Systems .

Class meets these Fridays:

Tentative Syllabus of Queueing Topics: (in progress)

Some Application Areas we will cover: