Linux CFS Improvement Forthcoming To Help With Faster Spreading Of CPU Utilization

Written by Michael Larabel in Linux Kernel on 13 March 2020 at 02:29 PM EDT. Add A Comment
A rather simple improvement to the Linux CFS scheduler's load balancing code appears to have measurable benefits with helping to more quickly spread the task utilization across the system.

Linaro's Vincent Guittot spotted a rather simple but impactful optimization in the kernel's scheduler code. When running the CFS load balancing, it until now hasn't been checking that there are pending tasks to pull as otherwise the load balance will just fail and thus further delay the possible spreading of the system load.

With a simple check for verifying there are at least two tasks running on a CPU core when trying to pull utilization from it, Vincent discovered promising results. With the sysbench benchmark, when applying the patch he found the maximum time per request dropped by about half. The average result didn't change much (a fraction of a millisecond) but the average maximum for per-request performance dropped from 21ms to 10ms and worst case timings dropped from 41ms to 21ms.

The patch is on the kernel mailing list for now and hopefully will make it into Linux 5.7.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week