NUMA Interface For FUTEX2 Still Being Tackled For Linux
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.