Linux 6.9 Sees Invasive & Significant Changes To Workqueues
Workqueues are commonly used within the Linux kernel for asynchronous process execution contexts
Stay updated with breaking news from Tejun Heo. Get real-time updates on events, politics, business, and more. Visit us for reliable news and exclusive interviews.
Workqueues are commonly used within the Linux kernel for asynchronous process execution contexts
In addition to the EEVDF scheduler replacing the CFS code in Linux 6.6, another fundamental and interesting change with Linux 6.6 is on the workqueue (WQ) side with a rework that can benefit systems with multiple L3 caches like modern AMD chiplet-based systems.
A "thread pool" is a common group of processes which can be called on to perform work at some future time. The kernel does not lack for thread pool implementations; indeed, there are more choices than one might like. Options include workqueues, the slow work mechanism, and asynchronous function calls - not to mention various private thread pool implementations found elsewhere in the kernel. It has long been thought that having just one thread pool mechanism would be better, but nobody, so far, has managed to put together a single implementation that everybody likes.
Tejun Heo last week submitted the workqueue changes for the Linux 6.5 kernel and they include an interesting addition.
Unlike Microsoft's Windows 11, next-gen Linux will not only support older AMD Ryzen processors, but they could even get some decent performance boosts too. This is suggested by a recent patch.