{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:20:27Z","timestamp":1750220427441,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":62,"publisher":"ACM","license":[{"start":{"date-parts":[[2021,6,14]],"date-time":"2021-06-14T00:00:00Z","timestamp":1623628800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000001","name":"NSF (National Science Foundation)","doi-asserted-by":"publisher","award":["CNS 1850317,CCF 1919044, CNS 1763658"],"award-info":[{"award-number":["CNS 1850317,CCF 1919044, CNS 1763658"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2021,6,14]]},"DOI":"10.1145\/3456727.3463775","type":"proceedings-article","created":{"date-parts":[[2021,6,6]],"date-time":"2021-06-06T12:34:14Z","timestamp":1622982854000},"page":"1-12","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":5,"title":["UniHeap"],"prefix":"10.1145","author":[{"given":"Daixuan","family":"Li","sequence":"first","affiliation":[{"name":"UIUC"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Benjamin","family":"Reidys","sequence":"additional","affiliation":[{"name":"UIUC"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jinghan","family":"Sun","sequence":"additional","affiliation":[{"name":"UIUC"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Thomas","family":"Shull","sequence":"additional","affiliation":[{"name":"UIUC"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Josep","family":"Torrellas","sequence":"additional","affiliation":[{"name":"UIUC"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jian","family":"Huang","sequence":"additional","affiliation":[{"name":"UIUC"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2021,6,14]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"2015. Intel 64 and IA-32 Architectures Software Developer's Manual. https:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/manuals\/64-ia-32-architectures-software-developer-\\instruction-set-reference-manual-325383.pdf.  2015. Intel 64 and IA-32 Architectures Software Developer's Manual. https:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/manuals\/64-ia-32-architectures-software-developer-\\instruction-set-reference-manual-325383.pdf."},{"key":"e_1_3_2_1_2_1","unstructured":"2019. Apache Thrift vs Protocol Buffers vs Fast Buffers. https:\/\/www.eprosima.com\/index.php\/resources-all\/performance\/apache-thrift-vs-protocol-buffers-vs-fast-buffers.  2019. Apache Thrift vs Protocol Buffers vs Fast Buffers. https:\/\/www.eprosima.com\/index.php\/resources-all\/performance\/apache-thrift-vs-protocol-buffers-vs-fast-buffers."},{"key":"e_1_3_2_1_3_1","unstructured":"2019. H2 Database Engine. https:\/\/www.h2database.com  2019. H2 Database Engine. https:\/\/www.h2database.com"},{"key":"e_1_3_2_1_4_1","unstructured":"2019. NVDIMM. https:\/\/en.wikipedia.org\/wiki\/NVDIMM.  2019. NVDIMM. https:\/\/en.wikipedia.org\/wiki\/NVDIMM."},{"key":"e_1_3_2_1_5_1","unstructured":"2019. PCJ. https:\/\/github.com\/pmem\/pcj.  2019. PCJ. https:\/\/github.com\/pmem\/pcj."},{"key":"e_1_3_2_1_6_1","unstructured":"2019. Protocol buffers are a language-neutral platform-neutral extensible mechanism for serializing structured data. https:\/\/developers.google.com\/protocol-buffers\/.  2019. Protocol buffers are a language-neutral platform-neutral extensible mechanism for serializing structured data. https:\/\/developers.google.com\/protocol-buffers\/."},{"key":"e_1_3_2_1_7_1","unstructured":"2019. Why are multiple programming languages used in the development of one product or piece of software. https:\/\/softwareengineering.stackexchange.com\/questions\/370135\/why-are-multiple-programming-languages-used-in-the-development-of-one-product-or.  2019. Why are multiple programming languages used in the development of one product or piece of software. https:\/\/softwareengineering.stackexchange.com\/questions\/370135\/why-are-multiple-programming-languages-used-in-the-development-of-one-product-or."},{"key":"e_1_3_2_1_8_1","unstructured":"2021. 10 Garbage-First Garbage Collector Tuning. https:\/\/stackoverflow.com\/questions\/61936621\/what-is-remembered-set-in-g1-algorithms-used-for.  2021. 10 Garbage-First Garbage Collector Tuning. https:\/\/stackoverflow.com\/questions\/61936621\/what-is-remembered-set-in-g1-algorithms-used-for."},{"key":"e_1_3_2_1_9_1","unstructured":"2021. Persistent Memory Development Kit. http:\/\/pmem.io\/pmdk\/  2021. Persistent Memory Development Kit. http:\/\/pmem.io\/pmdk\/"},{"key":"e_1_3_2_1_10_1","unstructured":"5\n    Popular Programming Languages and Their Uses. 2017. https:\/\/medium.com\/@CarolPelu\/5-popular-programming-languages-and-their-\\uses-22af241de35b.  5 Popular Programming Languages and Their Uses. 2017. https:\/\/medium.com\/@CarolPelu\/5-popular-programming-languages-and-their-\\uses-22af241de35b."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2010.2070830"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/3192366.3192392"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISCA45697.2020.00055"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2660193.2660224"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950380"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/3276523"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629575.1629589"},{"volume-title":"Proceedings of the 1st ACM Symposium on Cloud Computing.","author":"Cooper Brian F.","key":"e_1_3_2_1_18_1","unstructured":"Brian F. Cooper , Adam Silberstein , Erwin Tam , Raghu Ramakrishnan , and Russell Sears . [n.d.]. Benchmarking cloud serving systems with YCSB . In Proceedings of the 1st ACM Symposium on Cloud Computing. Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. [n.d.]. Benchmarking cloud serving systems with YCSB. In Proceedings of the 1st ACM Symposium on Cloud Computing."},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2907294.2907303"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341301.3359637"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2016.7446055"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/3192366.3192367"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2816707.2816714"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/3064176.3064204"},{"volume-title":"Proceedings of the VLDB Endowment (VLDB'15)","author":"Huang Jian","key":"e_1_3_2_1_25_1","unstructured":"Jian Huang , Karsten Schwan , and Moinuddin K. Qureshi . 2015. NVRAM-Aware Logging in Transaction Systems . In Proceedings of the VLDB Endowment (VLDB'15) . Kohala Coast, Hawaii. Jian Huang, Karsten Schwan, and Moinuddin K. Qureshi. 2015. NVRAM-Aware Logging in Transaction Systems. In Proceedings of the VLDB Endowment (VLDB'15). Kohala Coast, Hawaii."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/2806777.2806937"},{"key":"e_1_3_2_1_27_1","unstructured":"Intel. 2018. 3D XPoint: A Breakthrough in Non-Volatile Memory Technology. https:\/\/www.intel.com\/content\/www\/us\/en\/architecture-and-technology\/intel-micron-3d-xpoint-webcast.html.  Intel. 2018. 3D XPoint: A Breakthrough in Non-Volatile Memory Technology. https:\/\/www.intel.com\/content\/www\/us\/en\/architecture-and-technology\/intel-micron-3d-xpoint-webcast.html."},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/2872362.2872410"},{"key":"e_1_3_2_1_29_1","unstructured":"Java Data Objects. 2006. https:\/\/en.wikipedia.org\/wiki\/Java_Data_Objects.  Java Data Objects. 2006. https:\/\/en.wikipedia.org\/wiki\/Java_Data_Objects."},{"key":"e_1_3_2_1_30_1","unstructured":"Java Persistence API. 2013. https:\/\/en.wikipedia.org\/wiki\/Java_Persistence_API.  Java Persistence API. 2013. https:\/\/en.wikipedia.org\/wiki\/Java_Persistence_API."},{"key":"e_1_3_2_1_31_1","unstructured":"JetStream2. 2019. https:\/\/browserbench.org\/JetStream\/.  JetStream2. 2019. https:\/\/browserbench.org\/JetStream\/."},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2017.50"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341301.3359631"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/3079856.3080229"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341301.3359635"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341301.3359628"},{"key":"e_1_3_2_1_37_1","unstructured":"Virendra Marathe Achin Mishra Amee Trivedi Yihe Huang Faisal Zaghloul Sanidhya Kashyap Margo Seltzer Tim Harris Steve Byan Bill Bridge and Dave Dice. 2018. Persistent Memory Transactions. arXiv:cs.DC\/1804.00701  Virendra Marathe Achin Mishra Amee Trivedi Yihe Huang Faisal Zaghloul Sanidhya Kashyap Margo Seltzer Tim Harris Steve Byan Bill Bridge and Dave Dice. 2018. Persistent Memory Transactions. arXiv:cs.DC\/1804.00701"},{"key":"e_1_3_2_1_38_1","volume-title":"Non-Volatile Memory and Java","author":"Wolczko Mario","year":"2019","unstructured":"Mario Wolczko , Non-Volatile Memory and Java . 2019 . https:\/\/medium.com\/@mwolczko\/non-volatile-memory-and-java-7ba80f1e730c. Mario Wolczko, Non-Volatile Memory and Java. 2019. https:\/\/medium.com\/@mwolczko\/non-volatile-memory-and-java-7ba80f1e730c."},{"key":"e_1_3_2_1_39_1","volume-title":"Thrift: Scalable Cross-Language Services Implementation. White Paper","author":"Slee Mark","year":"2007","unstructured":"Mark Slee and Aditya Agarwal and Marc Kwiatkowski . 2007 . Thrift: Scalable Cross-Language Services Implementation. White Paper (2007). Mark Slee and Aditya Agarwal and Marc Kwiatkowski. 2007. Thrift: Scalable Cross-Language Services Implementation. White Paper (2007)."},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/3373376.3378456"},{"key":"e_1_3_2_1_41_1","unstructured":"Software Transactional Memory. 2019. https:\/\/en.wikipedia.org\/wiki\/Software_transactional_memory.  Software Transactional Memory. 2019. https:\/\/en.wikipedia.org\/wiki\/Software_transactional_memory."},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/3037697.3037730"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/3173162.3173200"},{"volume-title":"Proceedings of the 51th Annual IEEE\/ACM International Symposium on Microarchitecture (MICRO'18)","author":"Tri","key":"e_1_3_2_1_44_1","unstructured":"Tri M. Nguyen and David Wentzlaff. 2018. PiCL: a software-transparent, persistent cache log for nonvolatile main memory . In Proceedings of the 51th Annual IEEE\/ACM International Symposium on Microarchitecture (MICRO'18) . Fukuoka, Japan, 178--190. Tri M. Nguyen and David Wentzlaff. 2018. PiCL: a software-transparent, persistent cache log for nonvolatile main memory. In Proceedings of the 51th Annual IEEE\/ACM International Symposium on Microarchitecture (MICRO'18). Fukuoka, Japan, 178--190."},{"volume-title":"Proceedings of 52st International Symposium on Microarchitecture (MICRO'19)","author":"Ni Yuanjiang","key":"e_1_3_2_1_45_1","unstructured":"Yuanjiang Ni , Jishen Zhao , Heiner Litz , Daniel Bittman , and Ethan L. Miller . 2019. SSP: Eliminating Redundant Writes in Failure-Atomic NVMRAMs via Shadow Sub-Paging . In Proceedings of 52st International Symposium on Microarchitecture (MICRO'19) . Columbus, OH. Yuanjiang Ni, Jishen Zhao, Heiner Litz, Daniel Bittman, and Ethan L. Miller. 2019. SSP: Eliminating Redundant Writes in Failure-Atomic NVMRAMs via Shadow Sub-Paging. In Proceedings of 52st International Symposium on Microarchitecture (MICRO'19). Columbus, OH."},{"volume-title":"Memory Persistency. In Proceeding of the 41st Annual International Symposium on Computer Architecuture (ISCA'14)","author":"Pelley Steven","key":"e_1_3_2_1_46_1","unstructured":"Steven Pelley , Peter M. Chen , and Thomas F. Wenisch . 2014 . Memory Persistency. In Proceeding of the 41st Annual International Symposium on Computer Architecuture (ISCA'14) . Minneapolis, Minnesota, USA. Steven Pelley, Peter M. Chen, and Thomas F. Wenisch. 2014. Memory Persistency. In Proceeding of the 41st Annual International Symposium on Computer Architecuture (ISCA'14). Minneapolis, Minnesota, USA."},{"key":"e_1_3_2_1_47_1","unstructured":"QuickCached. 2019. https:\/\/github.com\/QuickServerLab\/QuickCached.  QuickCached. 2019. https:\/\/github.com\/QuickServerLab\/QuickCached."},{"key":"e_1_3_2_1_48_1","volume-title":"Ninth Eurosys Conference 2014","author":"Rao Dulloor Subramanya","year":"2014","unstructured":"Dulloor Subramanya Rao , Sanjay Kumar , Anil Keshavamurthy , Philip Lantz , Dheeraj Reddy , Rajesh Sankaran , and Jeff Jackson . 2014 . System software for persistent memory . In Ninth Eurosys Conference 2014 , EuroSys 2014, Amsterdam, The Netherlands, April 13-16, 2014. 15:1--15:15. Dulloor Subramanya Rao, Sanjay Kumar, Anil Keshavamurthy, Philip Lantz, Dheeraj Reddy, Rajesh Sankaran, and Jeff Jackson. 2014. System software for persistent memory. In Ninth Eurosys Conference 2014, EuroSys 2014, Amsterdam, The Netherlands, April 13-16, 2014. 15:1--15:15."},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1147\/rd.524.0465"},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/3123939.3124539"},{"key":"e_1_3_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/3237009.3237027"},{"key":"e_1_3_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3314608"},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/3313808.3313822"},{"key":"e_1_3_2_1_54_1","unstructured":"The Python Performance Benchmark Suite. 2017. https:\/\/pyperformance.readthedocs.io\/.  The Python Performance Benchmark Suite. 2017. https:\/\/pyperformance.readthedocs.io\/."},{"key":"e_1_3_2_1_55_1","unstructured":"Top 10 Programming Languages of the World - 2019 to Begin with. 2019. https:\/\/www.geeksforgeeks.org\/top-10-programming-languages-\\of-the-world-2019-to-begin-with\/.  Top 10 Programming Languages of the World - 2019 to Begin with. 2019. https:\/\/www.geeksforgeeks.org\/top-10-programming-languages-\\of-the-world-2019-to-begin-with\/."},{"volume-title":"Proceedings of the Sixteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'11)","author":"Volos Haris","key":"e_1_3_2_1_56_1","unstructured":"Haris Volos , Andres Jaan Tack , and Michael M. Swift . 2011. Mnemosyne: Lightweight Persistent Memory . In Proceedings of the Sixteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'11) (Newport Beach, California, USA). Haris Volos, Andres Jaan Tack, and Michael M. Swift. 2011. Mnemosyne: Lightweight Persistent Memory. In Proceedings of the Sixteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'11) (Newport Beach, California, USA)."},{"key":"e_1_3_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3314650"},{"key":"e_1_3_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375581.1375621"},{"key":"e_1_3_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/1869459.1869479"},{"key":"e_1_3_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/3173162.3173201"},{"key":"e_1_3_2_1_61_1","volume-title":"NOVA: A Log-structured File System for Hybrid Volatile\/Non-volatile Main Memories. In 14th USENIX Conference on File and Storage Technologies, FAST 2016","author":"Xu Jian","year":"2016","unstructured":"Jian Xu and Steven Swanson . 2016 . NOVA: A Log-structured File System for Hybrid Volatile\/Non-volatile Main Memories. In 14th USENIX Conference on File and Storage Technologies, FAST 2016 , Santa Clara, CA, USA , February 22-25, 2016. 323--338. Jian Xu and Steven Swanson. 2016. NOVA: A Log-structured File System for Hybrid Volatile\/Non-volatile Main Memories. In 14th USENIX Conference on File and Storage Technologies, FAST 2016, Santa Clara, CA, USA, February 22-25, 2016. 323--338."},{"key":"e_1_3_2_1_62_1","volume-title":"Proceedings of the 2nd USENIX Conference on Hot Topics in Cloud Computing (HotCloud'10)","author":"Zaharia Matei","year":"2010","unstructured":"Matei Zaharia , Mosharaf Chowdhury , Michael J. Franklin , Scott Shenker , and Ion Stoica . 2010 . Spark: Cluster Computing with Working Sets . In Proceedings of the 2nd USENIX Conference on Hot Topics in Cloud Computing (HotCloud'10) . Boston, MA. Matei Zaharia, Mosharaf Chowdhury, Michael J. Franklin, Scott Shenker, and Ion Stoica. 2010. Spark: Cluster Computing with Working Sets. In Proceedings of the 2nd USENIX Conference on Hot Topics in Cloud Computing (HotCloud'10). Boston, MA."}],"event":{"name":"SYSTOR '21: The 14th ACM International Systems and Storage Conference","sponsor":["SIGOPS ACM Special Interest Group on Operating Systems","Technion Israel Institute of Technology","USENIX Assoc USENIX Assoc"],"location":"Haifa Israel","acronym":"SYSTOR '21"},"container-title":["Proceedings of the 14th ACM International Conference on Systems and Storage"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3456727.3463775","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/abs\/10.1145\/3456727.3463775","content-type":"text\/html","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3456727.3463775","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3456727.3463775","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T20:46:56Z","timestamp":1750193216000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3456727.3463775"}},"subtitle":["managing persistent objects across managed runtimes for non-volatile memory"],"short-title":[],"issued":{"date-parts":[[2021,6,14]]},"references-count":62,"alternative-id":["10.1145\/3456727.3463775","10.1145\/3456727"],"URL":"https:\/\/doi.org\/10.1145\/3456727.3463775","relation":{},"subject":[],"published":{"date-parts":[[2021,6,14]]},"assertion":[{"value":"2021-06-14","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}