NUMA Interface For FUTEX2 Still Being Tackled For Linux

Written by Michael Larabel in Linux Kernel on 16 September 2022 at 01:00 AM EDT. 1 Comment
LINUX KERNEL --
Merged last year for the Linux 5.16 cycle was FUTEX2's futex_waitv() system call for waiting on multiple futexes in order to better match the behavior of Microsoft Windows. This FUTEX2 initiative was driven as an effort to further enhance Linux gaming performance/efficiency particularly for Valve's Steam Play. Originally there were other goals with FUTEX2 and now we are seeing another one of those being worked on: NUMA awareness.

In order to get mainlined sooner, FUTEX2 went for a simple initial push with futex_waitv and dropping some of the extras like NUMA awareness and variable sized futexes from the initial merge plans. But in the months since futex_waitv() was merged and a few kernel cycles since, there hasn't been a rush to finish the remaining FUTEX2 features.

Back in July André Almeida of Igalia began looking at the NUMA awareness handling for FUTEX2 and then this week presented on it at the Linux Plumbers Conference. This NUMA awareness is to overcome the current FUTEX defect that all the kernel space memory hash table is within a single memory node and leading to extra latency for every FUTEX operation that happens outside of the node where there is the hash table.


The proposed addition is being able to add a NUMA hint if it should reside in the current node otherwise it can specify a particular node.

Those wishing to learn more about the NUMA awareness effort for FUTEX2 can see André Almeida's slide deck from LPC 2022 and/or the LKML from July outlining the same proposed interface.
Related News
About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com 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 OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week