Intel’s Cache Aware Scheduling Inches Closer To Being Merged For Linux

Intel’s Cache Aware Scheduling Inches Closer To Being Merged For Linux

Intel’s Cache Aware Scheduling Inches Closer To Being Merged For Linux

https://www.phoronix.com/news/Linux-Cache-Aware-Sched-Nears

Publish Date: 2026-05-14 08:23:00

Source Domain: www.phoronix.com

I have been writing about the Cache Aware Scheduling work led by Intel engineers on the Linux kernel for more than a year. I’ve also tested out Cache Aware Scheduling on both Intel and AMD CPUs with the patched Linux kernel to great success. And thus very happy to see the Cache Aware Scheduling patches inching closer to the mainline Linux kernel.

The Cache Aware Scheduling patches as of a few days ago were queued into Peter Zijlstra’s sched/cache Git branch. Hopefully soon Peter will push them into a tip/tip.git branch that would then put it in direct trajectory for merging into the next Linux kernel merge window.

Cache Aware Scheduling can help enhance Linux performance on modern CPUs with multiple cache domains. The scheduler tries to help ensure that tasks sharing data are colocated to the same last level cache (LLC) domain for ensuring better cache locality and reducing cache misses/bouncing. I’ve benchmarked nice performance gains on AMD EPYC and better Xeon 6 performance too. Once Cache Aware Scheduling is merged or about to hit the finish line, I’ll be through with some fresh benchmarks.

CPUs

Beyond those patches now hitting Peter’s development Git branch, a new patch series from Intel engineer Tim Chen were sent out on Wednesday that now consist of just enhancements atop those patches staged in that Git branch.

The new enhancement patch series resolves an over-aggregation issue that could occur with the Cache Aware Scheduling behavior. Plus there are also various bug fixes thanks to the AI-based reporting by Sashiko.

Tim Chen noted on the patch cover letter:

“Compared with cache-aware v4, the major change in the first part is storing the LLC effective size in the per-CPU bottom sched_domain. This allows checking whether a task’s memory footprint exceeds the threshold by fetching the value directly from the corresponding sched_domain, instead of recalculating it every time. Besides, the NUMA balance page-fault statistics is used instead of RSS to…

Source