{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,31]],"date-time":"2025-12-31T12:17:16Z","timestamp":1767183436629,"version":"3.41.0"},"reference-count":80,"publisher":"Association for Computing Machinery (ACM)","issue":"3-4","license":[{"start":{"date-parts":[[2024,9,20]],"date-time":"2024-09-20T00:00:00Z","timestamp":1726790400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"National Key Research and Development Program of China","award":["2023YFB4502100, 2021ZD0110700"],"award-info":[{"award-number":["2023YFB4502100, 2021ZD0110700"]}]},{"DOI":"10.13039\/501100001809","name":"National Science Foundation of China","doi-asserted-by":"crossref","award":["62172361"],"award-info":[{"award-number":["62172361"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"crossref"}]},{"name":"Major Projects of Zhejiang Province","award":["LD24F020012"],"award-info":[{"award-number":["LD24F020012"]}]},{"name":"Program of Zhejiang Province Science and Technology","award":["2022C01044"],"award-info":[{"award-number":["2022C01044"]}]},{"DOI":"10.13039\/100000001","name":"US National Science Foundation","doi-asserted-by":"crossref","award":["CNS 1906541 and 2216108"],"award-info":[{"award-number":["CNS 1906541 and 2216108"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Comput. Syst."],"published-print":{"date-parts":[[2024,11,30]]},"abstract":"<jats:p>Persistent memory allocation is a fundamental building block for developing high-performance and in-memory applications. Existing persistent memory allocators suffer from many performance issues. First, they may introduce repeated cache line flushes and small random accesses in persistent memory for their poor heap metadata management. Second, they use static slab segregation resulting in a dramatic increase in memory consumption when allocation request size is changed. Third, they are not aware of NUMA effect, leading to remote persistent memory accesses in memory allocation and deallocation processes. In this article, we design a novel allocator, named PMAlloc, to solve the above issues simultaneously. (1) PMAlloc eliminates cache line reflushes by mapping contiguous data blocks in slabs to interleaved metadata entries stored in different cache lines. (2) It writes small metadata units to a persistent bookkeeping log in a sequential pattern to remove random heap metadata accesses in persistent memory. (3) Instead of using static slab segregation, it supports slab morphing, which allows slabs to be transformed between size classes to significantly improve slab usage. (4) It uses a local-first allocation policy to avoid allocating remote memory blocks. And it supports a two-phase deallocation mechanism including recording and synchronization to minimize the number of remote memory access in the deallocation. PMAlloc is complementary to the existing consistency models. Results on six benchmarks demonstrate that PMAlloc improves the performance of state-of-the-art persistent memory allocators by up to 6.4\u00d7 and 57\u00d7 for small and large allocations, respectively. PMAlloc with NUMA optimizations brings a 2.9\u00d7 speedup in multi-socket evaluation and is up to 36\u00d7 faster than other persistent memory allocators. Using PMAlloc reduces memory usage by up to 57.8%. Besides, we integrate PMAlloc in a persistent FPTree. Compared to the state-of-the-art allocators, PMAlloc improves the performance of this application by up to 3.1\u00d7.<\/jats:p>","DOI":"10.1145\/3643886","type":"journal-article","created":{"date-parts":[[2024,2,3]],"date-time":"2024-02-03T11:45:16Z","timestamp":1706960716000},"page":"1-52","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["PMAlloc: A Holistic Approach to Improving Persistent Memory Allocation"],"prefix":"10.1145","volume":"42","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-3841-7912","authenticated-orcid":false,"given":"Zheng","family":"Dang","sequence":"first","affiliation":[{"name":"Zhejiang University, Hangzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7075-4153","authenticated-orcid":false,"given":"Shuibing","family":"He","sequence":"additional","affiliation":[{"name":"Zhejiang University, Hangzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-3730-8901","authenticated-orcid":false,"given":"Xuechen","family":"Zhang","sequence":"additional","affiliation":[{"name":"Washington State University Vancouver, Vancouver, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0001-6046-4988","authenticated-orcid":false,"given":"Peiyi","family":"Hong","sequence":"additional","affiliation":[{"name":"Zhejiang University, Hangzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7140-5070","authenticated-orcid":false,"given":"Zhenxin","family":"Li","sequence":"additional","affiliation":[{"name":"Zhejiang University, Hangzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0004-8774-1617","authenticated-orcid":false,"given":"Xinyu","family":"Chen","sequence":"additional","affiliation":[{"name":"Zhejiang University, Hangzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0005-1520-4932","authenticated-orcid":false,"given":"Haozhe","family":"Song","sequence":"additional","affiliation":[{"name":"Zhejiang University, Hangzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1093-0792","authenticated-orcid":false,"given":"Xian-He","family":"Sun","sequence":"additional","affiliation":[{"name":"Illinois Institute of Technology, Chicago, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7483-0045","authenticated-orcid":false,"given":"Gang","family":"Chen","sequence":"additional","affiliation":[{"name":"Zhejiang University, Hangzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2024,9,20]]},"reference":[{"doi-asserted-by":"publisher","key":"e_1_3_2_2_2","DOI":"10.1007\/BF01459088"},{"doi-asserted-by":"publisher","key":"e_1_3_2_3_2","DOI":"10.1145\/2858965.2814294"},{"doi-asserted-by":"publisher","key":"e_1_3_2_4_2","DOI":"10.1109\/MICRO56248.2022.00037"},{"key":"e_1_3_2_5_2","doi-asserted-by":"crossref","first-page":"707","DOI":"10.1145\/2723372.2749441","volume-title":"Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD\u201915)","author":"Arulraj Joy","year":"2015","unstructured":"Joy Arulraj, Andrew Pavlo, and Subramanya R. Dulloor. 2015. Let\u2019s talk about storage & recovery methods for non-volatile memory database systems. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD\u201915). Association for Computing Machinery, 707\u2013722."},{"doi-asserted-by":"publisher","key":"e_1_3_2_6_2","DOI":"10.1038\/324446a0"},{"doi-asserted-by":"publisher","key":"e_1_3_2_7_2","DOI":"10.1145\/356989.357000"},{"doi-asserted-by":"publisher","key":"e_1_3_2_8_2","DOI":"10.1145\/122319.122322"},{"doi-asserted-by":"publisher","key":"e_1_3_2_9_2","DOI":"10.1145\/3022671.2984019"},{"doi-asserted-by":"publisher","key":"e_1_3_2_10_2","DOI":"10.1145\/155090.155109"},{"doi-asserted-by":"publisher","key":"e_1_3_2_11_2","DOI":"10.1145\/3381898.3397212"},{"doi-asserted-by":"publisher","key":"e_1_3_2_12_2","DOI":"10.5555\/3386691.3386712"},{"doi-asserted-by":"publisher","key":"e_1_3_2_13_2","DOI":"10.1145\/3123939.3124543"},{"doi-asserted-by":"publisher","key":"e_1_3_2_14_2","DOI":"10.1145\/3373376.3378515"},{"key":"e_1_3_2_15_2","first-page":"799","volume-title":"Proceedings of theUSENIX Annual Technical Conference (ATC\u201920)","author":"Chen Zhangyu","year":"2020","unstructured":"Zhangyu Chen, Yu Huang, Bo Ding, and Pengfei Zuo. 2020. Lock-free concurrent level hashing for persistent memory. In Proceedings of theUSENIX Annual Technical Conference (ATC\u201920). 799\u2013812."},{"doi-asserted-by":"publisher","key":"e_1_3_2_16_2","DOI":"10.1145\/1961295.1950380"},{"unstructured":"Intel Corporation. 2018. Redis. Retrieved from https:\/\/github.com\/pmem\/redis\/tree\/3.2-nvml\/","key":"e_1_3_2_17_2"},{"key":"e_1_3_2_18_2","article-title":"Persistent Memory Development Kit","author":"Corporation Intel","year":"2020","unstructured":"Intel Corporation. 2020. Persistent Memory Development Kit. Retrieved from http:\/\/pmem.io\/","journal-title":"Retrieved from http:\/\/pmem.io\/"},{"unstructured":"Intel Corporation. 2021. eADR: New Opportunities for Persistent Memory Applications. Retrieved from https:\/\/www.intel.com\/content\/www\/us\/en\/developer\/articles\/technical\/eadr-new-opportunities-for-persistent-memory-applications.html","key":"e_1_3_2_19_2"},{"doi-asserted-by":"publisher","key":"e_1_3_2_20_2","DOI":"10.1145\/3210377.3210392"},{"doi-asserted-by":"publisher","key":"e_1_3_2_21_2","DOI":"10.1145\/3503222.3507743"},{"doi-asserted-by":"publisher","key":"e_1_3_2_22_2","DOI":"10.1145\/2451116.2451157"},{"key":"e_1_3_2_23_2","first-page":"1","volume-title":"Slides from Linux Kongress","author":"Melo Arnaldo Carvalho De","year":"2010","unstructured":"Arnaldo Carvalho De Melo. 2010. The new Linux \u201cperf\u201d tools. In Slides from Linux Kongress, Vol. 18. 1\u201342."},{"doi-asserted-by":"publisher","key":"e_1_3_2_24_2","DOI":"10.1145\/3423211.3425671"},{"doi-asserted-by":"publisher","key":"e_1_3_2_25_2","DOI":"10.1109\/TPDS.2015.2504985"},{"doi-asserted-by":"publisher","key":"e_1_3_2_26_2","DOI":"10.1145\/3329785.3329918"},{"unstructured":"Jason Evans. 2021. Jemalloc. Retrieved from https:\/\/github.com\/jemalloc\/jemalloc\/","key":"e_1_3_2_27_2"},{"key":"e_1_3_2_28_2","first-page":"231","volume-title":"Proceedings of the USENIX Annual Technical Conference (USENIX ATC 14)","author":"Gaud Fabien","year":"2014","unstructured":"Fabien Gaud, Baptiste Lepers, Jeremie Decouchant, Justin Funston, Alexandra Fedorova, and Vivien Qu\u00e9ma. 2014. Large pages may be harmful on NUMA systems. In Proceedings of the USENIX Annual Technical Conference (USENIX ATC 14). 231\u2013242."},{"unstructured":"Google Inc. 2021. tcmalloc. Retrieved from https:\/\/github.com\/google\/tcmalloc","key":"e_1_3_2_29_2"},{"key":"e_1_3_2_30_2","first-page":"913","volume-title":"Proceedings of the USENIX Annual Technical Conference (ATC\u201919)","author":"Gu Jinyu","year":"2019","unstructured":"Jinyu Gu, Qianqian Yu, Xiayang Wang, Zhaoguo Wang, Binyu Zang, Haibing Guan, and Haibo Chen. 2019. Pisces: A scalable and efficient persistent transactional memory. In Proceedings of the USENIX Annual Technical Conference (ATC\u201919). USENIX Association, 913\u2013928."},{"unstructured":"Tom\u2019s Hardware. 2022. Samsung\u2019s Memory-Semantic CXL SSD Brings a 20x Performance Uplift. Retrieved from https:\/\/www.tomshardware.com\/news\/samsung-memory-semantic-cxl-ssd-brings-20x-performance-uplift","key":"e_1_3_2_31_2"},{"key":"e_1_3_2_32_2","first-page":"703","volume-title":"Proceedings of the USENIX Annual Technical Conference (ATC\u201917)","author":"Hu Qingda","year":"2017","unstructured":"Qingda Hu, Jinglei Ren, Anirudh Badam, Jiwu Shu, and Thomas Moscibroda. 2017. Log-structured non-volatile main memory. In Proceedings of the USENIX Annual Technical Conference (ATC\u201917). 703\u2013717."},{"key":"e_1_3_2_33_2","first-page":"57","volume-title":"Proceedings of the USENIX Annual Technical Conference (ATC\u201915)","author":"Hu Xiameng","year":"2015","unstructured":"Xiameng Hu, Xiaolin Wang, Yechen Li, Lan Zhou, Yingwei Luo, Chen Ding, Song Jiang, and Zhenlin Wang. 2015. LAMA: Optimized locality-aware memory allocation for key-value cache. In Proceedings of the USENIX Annual Technical Conference (ATC\u201915). USENIX Association, 57\u201369."},{"unstructured":"Intel. 2018. 5-Level Paging and 5-Level EPT White Paper. Retrieved from https:\/\/www.intel.com\/content\/www\/us\/en\/content-details\/671442\/5-level-paging-and-5-level-ept-white-paper.html","key":"e_1_3_2_34_2"},{"unstructured":"Intel Inc. 2022. IPMCTL: A Command Line Interface (CLI) application for configuring and managing PMems. Retrieved from https:\/\/github.com\/intel\/ipmctl\/","key":"e_1_3_2_35_2"},{"unstructured":"Intel Inc. 2022. Processor Counter Monitor (PCM). Retrieved from https:\/\/github.com\/intel\/pcm\/","key":"e_1_3_2_36_2"},{"key":"e_1_3_2_37_2","volume-title":"Intel\u00ae 64 and IA-32 Architectures Optimization Reference Manual","author":"Inc Intel","year":"2023","unstructured":"Intel Inc. 2023. Intel\u00ae 64 and IA-32 Architectures Optimization Reference Manual."},{"doi-asserted-by":"publisher","key":"e_1_3_2_38_2","DOI":"10.1145\/3581784.3607106"},{"doi-asserted-by":"publisher","key":"e_1_3_2_39_2","DOI":"10.1109\/IA349570.2019.00012"},{"unstructured":"Jemalloc. 2023. Jemalloc(3) Manual Page. Retrieved from https:\/\/jemalloc.net\/jemalloc.3.html","key":"e_1_3_2_40_2"},{"doi-asserted-by":"publisher","key":"e_1_3_2_41_2","DOI":"10.1109\/TPDS.2019.2945315"},{"doi-asserted-by":"publisher","key":"e_1_3_2_42_2","DOI":"10.1145\/301589.286864"},{"doi-asserted-by":"publisher","key":"e_1_3_2_43_2","DOI":"10.1145\/3538643.3539745"},{"key":"e_1_3_2_44_2","first-page":"46","article-title":"NUMA aware heap memory manager","author":"Kaminski Patryk","year":"2009","unstructured":"Patryk Kaminski. 2009. NUMA aware heap memory manager. AMD Devel. Centr. (2009), 46.","journal-title":"AMD Devel. Centr."},{"doi-asserted-by":"publisher","key":"e_1_3_2_45_2","DOI":"10.1145\/3190508.3190510"},{"key":"e_1_3_2_46_2","first-page":"161","volume-title":"Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI\u201922)","author":"Kim Wonbae","year":"2022","unstructured":"Wonbae Kim, Chanyeol Park, Dongui Kim, Hyeongjun Park, Young ri Choi, Alan Sussman, and Beomseok Nam. 2022. ListDB: Union of write-ahead logs and persistent skiplists for incremental checkpointing on persistent memory. In Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI\u201922). 161\u2013177."},{"doi-asserted-by":"publisher","key":"e_1_3_2_47_2","DOI":"10.1145\/3477132.3483589"},{"doi-asserted-by":"publisher","key":"e_1_3_2_48_2","DOI":"10.1090\/S0002-9939-1956-0078686-7"},{"doi-asserted-by":"publisher","key":"e_1_3_2_49_2","DOI":"10.1145\/3173162.3173198"},{"doi-asserted-by":"publisher","key":"e_1_3_2_50_2","DOI":"10.1145\/286860.286880"},{"key":"e_1_3_2_51_2","first-page":"257","volume-title":"Proceedings of the 15th USENIX Conference on File and Storage Technologies (FAST\u201917)","author":"Lee Se Kwon","year":"2017","unstructured":"Se Kwon Lee, K. Hyun Lim, Hyunsub Song, Beomseok Nam, and Sam H. Noh. 2017. WORT: Write Optimal Radix Tree for persistent memory storage systems. In Proceedings of the 15th USENIX Conference on File and Storage Technologies (FAST\u201917). 257\u2013270."},{"doi-asserted-by":"publisher","key":"e_1_3_2_52_2","DOI":"10.1145\/3341301.3359635"},{"unstructured":"Daan Leijen. 2019. MiMalloc Benchmarks. Retrieved from https:\/\/github.com\/daanx\/mimalloc-bench","key":"e_1_3_2_53_2"},{"doi-asserted-by":"publisher","key":"e_1_3_2_54_2","DOI":"10.1007\/978-3-030-34175-6_13"},{"unstructured":"Lenovo. 2018. Memcached-PMEM. Retrieved from https:\/\/github.com\/lenovo\/memcached-pmem\/","key":"e_1_3_2_55_2"},{"key":"e_1_3_2_56_2","first-page":"277","volume-title":"Proceedings of the USENIX Annual Technical Conference (USENIX ATC\u201915)","author":"Lepers Baptiste","year":"2015","unstructured":"Baptiste Lepers, Vivien Qu\u00e9ma, and Alexandra Fedorova. 2015. Thread and memory placement on NUMA systems: Asymmetry matters. In Proceedings of the USENIX Annual Technical Conference (USENIX ATC\u201915). 277\u2013289."},{"doi-asserted-by":"publisher","key":"e_1_3_2_57_2","DOI":"10.1109\/TPDS.2022.3173707"},{"doi-asserted-by":"publisher","key":"e_1_3_2_58_2","DOI":"10.14778\/3384345.3384355"},{"doi-asserted-by":"publisher","key":"e_1_3_2_59_2","DOI":"10.14778\/3389133.3389134"},{"key":"e_1_3_2_60_2","first-page":"1","volume-title":"Proceedings of the 19th USENIX Conference on File and Storage Technologies (FAST\u201921)","author":"Ma Shaonan","year":"2021","unstructured":"Shaonan Ma, Kang Chen, Shimin Chen, Mengxing Liu, Jianglang Zhu, Hongbo Kang, and Yongwei Wu. 2021. ROART: Range-query optimized persistent art. In Proceedings of the 19th USENIX Conference on File and Storage Technologies (FAST\u201921). 1\u201316."},{"unstructured":"MicroQuill Inc. 2014. shbench. Retrieved from http:\/\/www.microquill.com\/","key":"e_1_3_2_61_2"},{"key":"e_1_3_2_62_2","first-page":"35","volume-title":"Proceedings of the IEEE International Symposium on Workload Characterization","author":"Minh Chi Cao","year":"2008","unstructured":"Chi Cao Minh, JaeWoong Chung, Christos Kozyrakis, and Kunle Olukotun. 2008. STAMP: Stanford transactional applications for multi-processing. In Proceedings of the IEEE International Symposium on Workload Characterization. IEEE, 35\u201346."},{"doi-asserted-by":"publisher","key":"e_1_3_2_63_2","DOI":"10.1145\/2524211.2524216"},{"doi-asserted-by":"publisher","key":"e_1_3_2_64_2","DOI":"10.14778\/3137628.3137629"},{"doi-asserted-by":"publisher","key":"e_1_3_2_65_2","DOI":"10.1145\/2882903.2915251"},{"doi-asserted-by":"publisher","key":"e_1_3_2_66_2","DOI":"10.1109\/IPDPS.2016.26"},{"doi-asserted-by":"publisher","key":"e_1_3_2_67_2","DOI":"10.1145\/3330345.3330376"},{"doi-asserted-by":"publisher","key":"e_1_3_2_68_2","DOI":"10.1145\/3314221.3314582"},{"unstructured":"Andy Rudoff. 2020. Persistent memory programming without all that cache flushing. Retrieved from https:\/\/www.snia.org\/educational-library\/persistent-memory-programming-without-all-cache-flushing-2020","key":"e_1_3_2_69_2"},{"doi-asserted-by":"publisher","key":"e_1_3_2_70_2","DOI":"10.5555\/2591305.2591307"},{"doi-asserted-by":"publisher","key":"e_1_3_2_71_2","DOI":"10.1145\/1133956.1133968"},{"key":"e_1_3_2_72_2","first-page":"61","article-title":"Nvm malloc: Memory allocation for NVRAM","volume":"15","author":"Schwalb David","year":"2015","unstructured":"David Schwalb, Tim Berning, Martin Faust, Markus Dreseler, and Hasso Plattner. 2015. Nvm malloc: Memory allocation for NVRAM. ADMS@ VLDB 15 (2015), 61\u201372.","journal-title":"ADMS@ VLDB"},{"doi-asserted-by":"publisher","key":"e_1_3_2_73_2","DOI":"10.1145\/1961295.1950379"},{"key":"e_1_3_2_74_2","first-page":"45","volume-title":"Proceedings of the Technology Conference on Performance Evaluation and Benchmarking (TPCTC\u201915)","author":"Wagle Mehul","year":"2015","unstructured":"Mehul Wagle, Daniel Booss, Ivan Schreter, and Daniel Egenolf. 2015. NUMA-aware memory management with in-memory databases. In Proceedings of the Technology Conference on Performance Evaluation and Benchmarking (TPCTC\u201915). Springer, 45\u201360."},{"key":"e_1_3_2_75_2","first-page":"93","volume-title":"Proceedings of the 15th USENIX Symposium on Operating Systems Design and Implementation (OSDI\u201921)","author":"Wang Qing","year":"2021","unstructured":"Qing Wang, Youyou Lu, Junru Li, and Jiwu Shu. 2021. Nap: A black-box approach to NUMA-aware persistent memory indexes. In Proceedings of the 15th USENIX Symposium on Operating Systems Design and Implementation (OSDI\u201921). USENIX Association, 93\u2013111."},{"doi-asserted-by":"publisher","key":"e_1_3_2_76_2","DOI":"10.1109\/MICRO56248.2022.00091"},{"doi-asserted-by":"publisher","key":"e_1_3_2_77_2","DOI":"10.1007\/3-540-60368-9_19"},{"key":"e_1_3_2_78_2","first-page":"141","volume-title":"Proceedings of the 19th USENIX Conference on File and Storage Technologies (FAST\u201921)","author":"Wu Kai","year":"2021","unstructured":"Kai Wu, Jie Ren, Ivy Peng, and Dong Li. 2021. ArchTM: Architecture-aware, high performance transaction for persistent memory. In Proceedings of the 19th USENIX Conference on File and Storage Technologies (FAST\u201921). 141\u2013153."},{"doi-asserted-by":"publisher","key":"e_1_3_2_79_2","DOI":"10.1145\/3492321.3519556"},{"doi-asserted-by":"publisher","key":"e_1_3_2_80_2","DOI":"10.5555\/3386691.3386708"},{"key":"e_1_3_2_81_2","first-page":"179","volume-title":"Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI\u201922)","author":"Zhou Diyu","year":"2022","unstructured":"Diyu Zhou, Yuchen Qian, Vishal Gupta, Zhifei Yang, Changwoo Min, and Sanidhya Kashyap. 2022. ODINFS: Scaling PM performance with opportunistic delegation. In Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI\u201922). USENIX Association, 179\u2013193."}],"container-title":["ACM Transactions on Computer Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3643886","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3643886","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3643886","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T23:57:34Z","timestamp":1750291054000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3643886"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,9,20]]},"references-count":80,"journal-issue":{"issue":"3-4","published-print":{"date-parts":[[2024,11,30]]}},"alternative-id":["10.1145\/3643886"],"URL":"https:\/\/doi.org\/10.1145\/3643886","relation":{},"ISSN":["0734-2071","1557-7333"],"issn-type":[{"type":"print","value":"0734-2071"},{"type":"electronic","value":"1557-7333"}],"subject":[],"published":{"date-parts":[[2024,9,20]]},"assertion":[{"value":"2022-11-26","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2024-01-21","order":2,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2024-09-20","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}