Colloquium Details

Demystifying System Performance

Speaker: Xiang (Jenny) Ren, University of Toronto

Location: 60 Fifth Avenue Room 150

Date: March 22, 2024, 2 p.m.

Host: Anirudh Sivaraman & Jinyang Li


Performance makes or breaks a software system. Severe performance issues can cause failures and outages; even small performance degradation can be costly. Google finds that a 0.5-second delay in page load time has caused a 20% drop in repeat traffic. Despite its importance, there are many obstacles to building performant systems. Modern software systems have complex performance characteristics and are evolving rapidly, and users and developers still invest significant time manually diagnosing critical performance issues.

In this talk, I will talk about my work on improving systems performance. The first piece of work is a study on the performance evolution of Linux, one of the most popular OS kernels. The study finds that many of Linux's core kernel operations have experienced significant slowdowns over time or have experienced very unstable performance. The study performs a detailed root cause analysis and identifies many opportunities to improve performance. Inspired by the insights from the Linux performance study, the second piece of work creates a novel algorithm called Relational Debugging that automatically pinpoints the root causes of performance issues to specific instructions in the software code. The main insight of Relational Debugging is that performance issues have very different characteristics from functional failures. Relational Debugging caters to the characteristics of performance issues by breaking down executions into many "reference point" events and identifying the appropriate "reference point" events that can capture the root cause of the performance change. Unlike existing techniques, Relational Debugging can be generalized to diagnose complex real-world performance issues. We demonstrate Relational Debugging's effectiveness by using it to diagnose performance issues that are very challenging for humans to diagnose, including two open MongoDB bugs.

Speaker Bio:

Xiang (Jenny) Ren is a seventh-year PhD student at the University of Toronto, working with Ding Yuan. She is generally interested in computer systems software. She has taken a multi-thronged approach to improving system performance, by building automated tools that help developers debug performance issues, and by carrying out comprehensive performance studies and designing performance systems. Her research has appeared at OSDI and SOSP and has been runner-up to the best paper award at FAST. Her research artifacts have been adopted or requested by industry and the academic community.


In-person attendance only available to those with active NYU ID cards.

How to Subscribe