Julia Lawall of Inria, France’s National Institute for Digital Science and Technology, introduced the new Linux kernel scheduling method “Nest” at this week’s Linux Plumbers Conference (LPC 2022), the Nest scheduler developed by the Inria Institute, oracle Labs, University of Sydney Cooperative development. According to Julia, the Nest scheduler takes advantage of modern hardware to “improve performance by 10%-2x and reduce energy usage”.
While the existing Linux CFS scheduler behavior is to spread out tasks across the machine’s available CPU cores, Nest takes a different approach. Considering the latency that can result from launching CPU cores that are idle for a long time, it takes a while for these cores to run to a higher performance state (higher frequency), which can negatively impact the current frequency/power budget. The way Nest works is by trying to keep tasks in a set of “warm cores” that are already running at their peak performance state before launching idle cores.
Nest also considers parent/previous cores in its scheduling decisions to try to improve local performance in the case of multi-socket CPUs.
The Nest development team used the Phoronix test suite, which is open sourced by foreign media phoronix, to benchmark various workloads and evaluate the impact of their scheduling decisions.
Test results show that on 1/2/4 socket Intel servers, as well as AMD servers and desktops, the Nest Task Schedulerlight or mediumWorkloads yield 10% to 2x performance gains. For multithreaded workloads that already fully utilize the CPU, the Nest Task Scheduler doesn’t offer much of a boost, it’s more suitable for light-to-moderate workloads.
To learn more about the Nest Task Scheduler, check out the Nest Scheduler introductory video and slides (PDF) at LPC 2022.
#Nest #Linux #kernel #scheduling #method #improves #CPU #performance #lighttomoderate #loads