Rosebush Proposed As A New Data Structure For The Linux Kernel

Written by Michael Larabel in Linux Kernel on 22 February 2024 at 04:10 PM EST. 9 Comments
LINUX KERNEL
Matthew Wilcox with Oracle who previously worked on the Maple Tree data structure for the Linux kernel along with memory folios has now proposed "Rosebush" as a new hash table data structure for the Linux kernel.

Rosebush is described as a resizing, scalable, cache-aware RCU-optimized hash table for the kernel. Rosebush is suitable to replace a hash table while having lower overhead than the maple tree or rhashtable. But it's not a replacement to the maple tree as it doesn't support ranges. Another described benefit of Rosebush is having per-bucket locks so it's more scalable for write-heavy workloads.

Rosebush for Linux


While Rosebush sounds nice as a new hash table for the Linux kernel, Wilcox hasn't converted any existing kernel code yet to using it. So ultimately the real-world performance benefits are yet to be proven.

In any event those interested in learning more about Rosebush data structure for the Linux kernel can do so via the RFC mailing list message.
Related News
About The Author
Michael Larabel

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