1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Autonomously Finding Performance Regressions In The Linux Kernel

Michael Larabel

Published on 22 October 2009
Written by Michael Larabel
Page 1 of 2 - 44 Comments

Last weekend a few Phoronix benchmarks were underway of the Linux 2.6.32-rc5 kernel when a very significant performance regression was spotted. This regression caused the PostgreSQL server to run at about 18% of the performance found in earlier kernel releases. Long story short, in tracking down this performance regression we have finally devised a way to autonomously locate performance regressions within the Linux kernel and potentially any Git-based project for that matter. Here are a few details.

For some background information on the test that led to this work, the PostgreSQL performance under the Linux 2.6.32-rc1 through the Linux 2.6.32-rc5 (and still in Git master) is in shambles when compared to earlier kernels (tested Linux 2.6.30 and 2.6.31 for comparison). This regression was found using the same kernel configuration with the default options on a clean Ubuntu 9.10 installation. To ensure this wasn't an isolated incident, first this regression was confirmed on an entirely different system -- a dual AMD Opteron system compared to an Intel Atom "nettop" system.

Normally these benchmarks would end up being published on Phoronix as-is and left up to other interested users or developers to track down the problem due to our limited resources and most of this work being done by a lone individual. With the Phoronix Test Suite maturing though, a realization was made. For months it has been a goal to essentially build a Phoronix Test Suite module that would layer our performance profiling / benchmarking software directly atop Git and its git-bisect command. With the Phoronix Test Suite 2.2 "Bardu" work -- and the motivation to track down this significant drop in disk performance -- this was now quite possible with just a few hundred lines of code to create the module that ties the components together.

To cut to the chase, to be introduced with Phoronix Test Suite 2.2 Beta 1 next week will be this module that leverages the Phoronix Test Suite and Git together to create one powerful testing pair. The bisect module in the Phoronix Test Suite makes it possible to track down the triggering chance for any type of regression that can be tested by the Phoronix Test Suite. With the extensible Phoronix Test Suite architecture, you can write a test profile for just about any part of the system, if the included 110+ tests and 40+ test suites do not cover a problem that's encountered.

All that this PTS module needs to know is the starting and end points that return a different state, an accessible repository (Git, currently) to be tested, a Phoronix Test Suit result file that illustrates a performance regression, and an external build script to be written that automatically builds and installs the said code. With that information, the Phoronix Test Suite and the bisect module are able to autonomously locate the performance regression. Right now only Git is supported, but we are working on support for other source code management systems as well. There's even an experimental version of our bisect module that even automates the reboot process and recovery of the Phoronix Test Suite upon reboot.

<< Previous Page
1
Latest Linux Hardware Reviews
  1. Scythe Mugen MAX
  2. Intel Core i7 5960X Haswell-E On Linux
  3. Intel 80GB 530 Series M.2 SSD On Linux
  4. With A New Motherboard, The Core i7 5960X Haswell-E Lights Up
Latest Linux Articles
  1. RadeonSI GLAMOR Benchmarks With X.Org Server 1.16
  2. RadeonSI Gallium3D vs. Catalyst At 4K UHD On Linux
  3. MSAA RadeonSI Gallium3D Performance Preview
  4. Intel Core i7 5960X CPU Core Scaling Under Linux
Latest Linux News
  1. SNA & UXA Intel Benchmarks With X.Org Server 1.16
  2. Graphics Driver Changes Coming In The Linux 3.18 Kernel
  3. Tropico 5 Being Released For Linux Gamers This Week
  4. Eclipse IDE Starts Firing Up On Wayland's Weston
  5. OpenSUSE Announcement On SUSE's Recent Merger
  6. Valve Begins Publicly Tracking AMD Catalyst Linux Issues
  7. Digia Qt Spinoff Is Called "The Qt Company"
  8. GNOME 3.14 Makes More Progress In Running Natively On Wayland
  9. Minix 3.3 Released With Cortex-A8 ARM Support, NetBSD Userland Compatibility
  10. More Intel DRM Changes Queued For Linux 3.18, Including Old i830M Fixes
Latest Forum Discussions
  1. Stop grabbing my keyboard :(
  2. New Group Calls For Boycotting Systemd
  3. Best Radeon for a Power Mac G5?
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. New stress testing utility for GPU's
  6. Hd 6850
  7. support for first generation UVD blocks (RV6xx, RS780, RS880 and RV790)
  8. Nvidia joins the ranks of Apple and Microsoft