Rearchitecting the Thread Model of In-Memory Key-Value Stores with μTPS
Youmin Chen, Jiwu Shu, Yanyan Shen, Linpeng Huang, Hong Mei
Abstract
This paper presents μTPS, a new thread architecture tailored for in-memory key-value stores (KVSs) that operate at tens of millions of operations per second. We show through analysis and demonstration that the widely used run-to-completion thread architecture, which executes monolithic functions from start to finish, often suffers from cache inefficiencies and contention issues. To address this, we revisit the once widely used thread-per-stage (TPS) architecture, but with a fresh perspective – separating cache-resident, contention-free stages and memory-resident, conflict-prone stages into distinct thread pools, and scheduling them with dedicated hardware resources (e.g., CPU cores, cache ways). This novel division enables independent optimization of each stage, significantly improving cache efficiency and mitigating contention. Additionally, μTPS incorporates reconfigurable RPC, resizable caching, and an auto-tuner to enhance its schedulability and performance. We implement two in-memory key-value stores, μTPS-H and μTPS-T, to demonstrate the effectiveness of this approach. Evaluation results show that μTPS achieves higher performance than the run-to-completion counterparts.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext c9ff96d2-5caa-4ee3-a0fe-0f9e1498e5beBuilds on15
- A large scale analysis of hundreds of in-memory cache clusters at TwitterJuncheng Yang, Yao Yue, K. V. RashmiOSDI 2020 · 245 citations
- Caladan: Mitigating Interference at Microsecond TimescalesJoshua Fried, Zhenyuan Ruan, Amy Ousterhout, Adam BelayOSDI 2020 · 213 citations
- One-sided RDMA-Conscious Extendible Hashing for Disaggregated MemoryPengfei Zuo, Jiazhao Sun, Liu Yang, Shuangwu Zhang et al.USENIX ATC 2021 · 113 citations
- Sherman: A Write-Optimized Distributed B+Tree Index on Disaggregated MemoryQing Wang, Youyou Lu, Jiwu ShuSIGMOD 2022 · 99 citations
- Reexamining Direct Cache Access to Optimize I/O Intensive Applications for Multi-hundred-gigabit NetworksAlireza Farshin, Amir Roozbeh, Gerald Q. Maguire Jr., Dejan KosticUSENIX ATC 2020 · 88 citations
Related papers
- The NEBULA RPC-Optimized ArchitectureMark Sutherland, Siddharth Gupta, Babak Falsafi, Virendra J. Marathe et al.ISCA 2020 · 29 citations
- Enabling Low Tail Latency on Multicore Key-Value StoresLucas Lersch, Ivan Schreter, Ismail Oukid, Wolfgang LehnerVLDB 2020 · 30 citations
- Cooperative Concurrency Control for Write-Intensive Key-Value WorkloadsMark Sutherland, Babak Falsafi, Alexandros DaglisASPLOS 2023 · 6 citations
- DINOMO: An Elastic, Scalable, High-Performance Key-Value Store for Disaggregated Persistent MemorySe Kwon Lee, Soujanya Ponnapalli, Sharad Singhal, Marcos K. Aguilera et al.VLDB 2022 · 49 citations
- FluidKV: Seamlessly Bridging the Gap between Indexing Performance and Memory-Footprint on Ultra-Fast StorageZiyi Lu, Qiang Cao, Hong Jiang, Yuxing Chen et al.VLDB 2024 · 8 citations
