Sorry, you need to enable JavaScript to visit this website.

Linux Kernel Performance

Linux development evolves rapidly. The performance and scalability of the OS kernel has been a key part of its success. However, discussions have appeared on LKML (Linux Kernel Mailing List) regarding large performance regression between kernel versions. These discussions underscore the need for a systematic and disciplined way to characterize, improve, and test Linux kernel performance. Our goal is to work with the Linux community to further enhance the Linux kernel with consistent performance increases (avoiding degradations) across releases. The information available on this site gives community members better information about what 0-Day and LKP (Linux Kernel Performance) are doing to preserve performance integrity of the kernel.

0-Day is a validation infrastructure to automate Linux kernel performance regression testing that immediately detects, isolates, and reports issues to help improve Linux on IA quality.

Here’s how it works: 0-Day monitors the mainline kernel and hundreds of Linux developer trees around the clock. As soon as a change is made, 0-Day pulls the patch set and immediately tests several builds, progressing through boot, functional, and finally power and performance tests.

When a test fails or shows performance regression, 0-Day automatically pinpoints the specific patch that caused the regression. The key is Code Bisection, a method to identify changes that cause specific behavior. 0-Day bisects patch sets and retests the code sections until it pinpoints the exact problem patch, and then sends a defect report to the developer who wrote the code, often in less than a day. 0-Day is unique in that it not only reports the failure, but also the specific patch that caused the failure, and the information to reproduce the problem.

0-Day (and its predecessor, the Linux Kernel Performance Project) essentially shifts left formal regression testing to the developers, where it’s faster, easier, and less costly to fix problems.