{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,9]],"date-time":"2025-10-09T21:03:36Z","timestamp":1760043816606,"version":"3.41.0"},"reference-count":73,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2024,12,13]],"date-time":"2024-12-13T00:00:00Z","timestamp":1734048000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"Horizon 2020 Framework Programme for Research and Innovation through the projects AERO","award":["10048318"],"award-info":[{"award-number":["10048318"]}]},{"name":"Meta Research PhD Fellowship and the State Scholarship Foundation of Cyprus"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Program. Lang. Syst."],"published-print":{"date-parts":[[2024,12,31]]},"abstract":"<jats:p>Big data analytics frameworks, such as Spark and Giraph, need to process and cache massive datasets that do not always fit on the managed heap. Therefore, frameworks temporarily move long-lived objects outside the heap (off-heap) on a fast storage device. However, this practice results in (1) high serialization\/deserialization (S\/D) cost and (2) high memory pressure when off-heap objects are moved back for processing.<\/jats:p>\n          <jats:p>\n            In this article, we propose\n            <jats:italic>TeraHeap<\/jats:italic>\n            , a system that eliminates S\/D overhead and expensive GC scans for a large portion of objects in analytics frameworks.\n            <jats:italic>TeraHeap<\/jats:italic>\n            relies on three concepts: (1) It eliminates S\/D by extending the managed runtime (JVM) to use a second high-capacity heap (H2) over a fast storage device. (2) It offers a simple hint-based interface, allowing analytics frameworks to leverage object knowledge to populate H2. (3) It reduces GC cost by fencing the collector from scanning H2 objects while maintaining the illusion of a single managed heap, ensuring memory safety.\n          <\/jats:p>\n          <jats:p>\n            We implement\n            <jats:italic>TeraHeap<\/jats:italic>\n            in OpenJDK8 and OpenJDK17 and evaluate it with fifteen widely used applications in two real-world big data frameworks, Spark and Giraph. We find that for the same DRAM size,\n            <jats:italic>TeraHeap<\/jats:italic>\n            improves performance by up to 73% and 28% compared to native Spark and Giraph. Also, it can still provide better performance by consuming up to\n            <jats:inline-formula content-type=\"math\/tex\">\n              <jats:tex-math notation=\"LaTeX\" version=\"MathJax\">\\(4.6\\times\\)<\/jats:tex-math>\n            <\/jats:inline-formula>\n            and\n            <jats:inline-formula content-type=\"math\/tex\">\n              <jats:tex-math notation=\"LaTeX\" version=\"MathJax\">\\(1.2\\times\\)<\/jats:tex-math>\n            <\/jats:inline-formula>\n            less DRAM than native Spark and Giraph, respectively.\n            <jats:italic>TeraHeap<\/jats:italic>\n            can also be used for in-memory frameworks and applying it to the Neo4j Graph Data Science library improves its performance by up to 26%. Finally, it outperforms Panthera, a state-of-the-art garbage collector for hybrid DRAM-NVM memories, by up to 69%.\n          <\/jats:p>","DOI":"10.1145\/3700593","type":"journal-article","created":{"date-parts":[[2024,10,15]],"date-time":"2024-10-15T14:39:18Z","timestamp":1729003158000},"page":"1-37","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":2,"title":["<i>TeraHeap<\/i>\n            : Exploiting Flash Storage for Mitigating DRAM Pressure in Managed Big Data Frameworks"],"prefix":"10.1145","volume":"46","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-4812-6775","authenticated-orcid":false,"given":"Iacovos G.","family":"Kolokasis","sequence":"first","affiliation":[{"name":"Foundation for Research and Technology \u2013 Hellas (FORTH), Institute of Computer Science (ICS), Heraklion, Greece and Department of Computer Science, University of Crete, Heraklion, Greece"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-4326-7747","authenticated-orcid":false,"given":"Giannos","family":"Evdorou","sequence":"additional","affiliation":[{"name":"Foundation for Research and Technology \u2013 Hellas (FORTH), Institute of Computer Science (ICS), Heraklion, Greece and Department of Computer Science, University of Crete, Heraklion, Greece"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2388-0517","authenticated-orcid":false,"given":"Shoaib","family":"Akram","sequence":"additional","affiliation":[{"name":"Australian National University, Canberra, Australia"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3566-1610","authenticated-orcid":false,"given":"Christos","family":"Kozanitis","sequence":"additional","affiliation":[{"name":"Foundation for Research and Technology \u2013 Hellas (FORTH), Institute of Computer Science (ICS), Heraklion, Greece"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1568-9157","authenticated-orcid":false,"given":"Anastasios","family":"Papagiannis","sequence":"additional","affiliation":[{"name":"Isovelent, Inc., Cupertino, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5554-7538","authenticated-orcid":false,"given":"Foivos S.","family":"Zakkak","sequence":"additional","affiliation":[{"name":"Red Hat Ltd., Manchester, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2700-1260","authenticated-orcid":false,"given":"Polyvios","family":"Pratikakis","sequence":"additional","affiliation":[{"name":"Foundation for Research and Technology \u2013 Hellas (FORTH), Institute of Computer Science (ICS), Heraklion, Greece and Department of Computer Science, University of Crete, Heraklion, Greece"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2975-4124","authenticated-orcid":false,"given":"Angelos","family":"Bilas","sequence":"additional","affiliation":[{"name":"Foundation for Research and Technology \u2013 Hellas (FORTH), Institute of Computer Science (ICS), Heraklion, Greece and Department of Computer Science, University of Crete, Heraklion, Greece"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2024,12,13]]},"reference":[{"key":"e_1_3_2_2_2","first-page":"971","volume-title":"Proceedings of the 24th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201919)","author":"Abulila Ahmed","year":"2019","unstructured":"Ahmed Abulila, Vikram Sharma Mailthody, Zaid Qureshi, Jian Huang, Nam Sung Kim, Jinjun Xiong, and Wen-mei Hwu. 2019. FlatFlash: Exploiting the Byte-Accessibility of SSDs within a Unified Memory-Storage Hierarchy. In Proceedings of the 24th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201919). ACM, New York, NY, 971\u2013985. DOI: 10.1145\/3297858.3304061"},{"key":"e_1_3_2_3_2","volume-title":"Proc. ACM Meas. Anal. Comput. Syst","volume":"3","author":"Akram Shoaib","year":"2019","unstructured":"Shoaib Akram, Jennifer Sartor, Kathryn McKinley, and Lieven Eeckhout. 2019. Crystal Gazer: Profile-Driven Write-Rationing Garbage Collection for Hybrid Memories. Proc. ACM Meas. Anal. Comput. Syst. 3, 1 (March 2019), Article 9, 27 pages. DOI: 10.1145\/3322205.3311080"},{"key":"e_1_3_2_4_2","doi-asserted-by":"crossref","first-page":"62","DOI":"10.1145\/3192366.3192392","volume-title":"Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI \u201918)","author":"Akram Shoaib","year":"2018","unstructured":"Shoaib Akram, Jennifer B. Sartor, Kathryn S. McKinley, and Lieven Eeckhout. 2018. Write-Rationing Garbage Collection for Hybrid Memories. In Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI \u201918). ACM, New York, NY, 62\u201377. DOI: 10.1145\/3192366.3192392"},{"key":"e_1_3_2_5_2","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2019.2930497"},{"key":"e_1_3_2_6_2","unstructured":"Monica Beckwith. 2013. Garbage First Garbage Collector Tuning. Retrieved from https:\/\/www.oracle.com\/technical-resources\/articles\/java\/g1gc.html#::text=During%20mixed%20collections%2C%20the%20G1 overall%20acceptable%20heap%20waste%20percentage"},{"key":"e_1_3_2_7_2","first-page":"17","volume-title":"Proceedings of the SIGIR 2012 Workshop on Open Source Information Retrieval","author":"Bia\u0142ecki Andrzej","year":"2012","unstructured":"Andrzej Bia\u0142ecki, Robert Muir, Grant Ingersoll, and Lucid Imagination. 2012. Apache lucene 4. In Proceedings of the SIGIR 2012 Workshop on Open Source Information Retrieval, 17."},{"key":"e_1_3_2_8_2","first-page":"169","volume-title":"Proceedings of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA \u201906)","author":"Blackburn Stephen M.","year":"2006","unstructured":"Stephen M. Blackburn, Robin Garner, Chris Hoffmann, Asjad M. Khang, Kathryn S. McKinley, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, et al. 2006. The DaCapo Benchmarks: Java Benchmarking Development and Analysis. In Proceedings of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA \u201906). ACM, New York, NY, 169\u2013190. DOI: 10.1145\/1167473.1167488"},{"key":"e_1_3_2_9_2","doi-asserted-by":"publisher","DOI":"10.1145\/1180475.1180477"},{"key":"e_1_3_2_10_2","first-page":"342","volume-title":"Proceedings of the 16th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA \u201901)","author":"Blackburn Stephen M.","year":"2001","unstructured":"Stephen M. Blackburn, Sharad Singhai, Matthew Hertz, Kathryn S. McKinely, and J. Eliot B. Moss. 2001. Pretenuring for Java. In Proceedings of the 16th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA \u201901). ACM, New York, NY, 342\u2013352. DOI: 10.1145\/504282.504307"},{"key":"e_1_3_2_11_2","first-page":"109","volume-title":"Proceedings of the 23rd ACM SIGPLAN Conference on Object-Oriented Programming Systems Languages and Applications (OOPSLA \u201908)","author":"Bond Michael D.","year":"2008","unstructured":"Michael D. Bond and Kathryn S. McKinley. 2008. Tolerating Memory Leaks. In Proceedings of the 23rd ACM SIGPLAN Conference on Object-Oriented Programming Systems Languages and Applications (OOPSLA \u201908). ACM, New York, NY, 109\u2013126. DOI: 10.1145\/1449764.1449774"},{"key":"e_1_3_2_12_2","doi-asserted-by":"crossref","first-page":"2","DOI":"10.1145\/3092255.3092272","volume-title":"Proceedings of the 2017 ACM SIGPLAN International Symposium on Memory Management (ISMM \u201917)","author":"Bruno Rodrigo","year":"2017","unstructured":"Rodrigo Bruno, Lu\u00eds Picciochi Oliveira, and Paulo Ferreira. 2017. NG2C: Pretenuring Garbage Collection with Dynamic Generations for HotSpot Big Data Applications. In Proceedings of the 2017 ACM SIGPLAN International Symposium on Memory Management (ISMM \u201917). ACM, New York, NY, 2\u201313. DOI: 10.1145\/3092255.3092272"},{"key":"e_1_3_2_13_2","volume-title":"Proceedings of the 14th EuroSys Conference 2019 (EuroSys \u201919)","author":"Bruno Rodrigo","year":"2019","unstructured":"Rodrigo Bruno, Duarte Patricio, Jos\u00e9 Sim\u00e3o, Luis Veiga, and Paulo Ferreira. 2019. Runtime Object Lifetime Profiler for Latency Sensitive Big Data Applications. In Proceedings of the 14th EuroSys Conference 2019 (EuroSys \u201919). ACM, New York, NY, Article 28, 16 pages. DOI: 10.1145\/3302424.3303988"},{"issue":"4","key":"e_1_3_2_14_2","first-page":"28","article-title":"Apache Flink: Stream and Batch Processing in a Single Engine","volume":"38","author":"Carbone Paris","year":"2015","unstructured":"Paris Carbone, Asterios Katsifodimos, Stephan Ewen, Volker Markl, Seif Haridi, and Kostas Tzoumas. 2015. Apache Flink: Stream and Batch Processing in a Single Engine. Bull. Tech. Committ. Data Eng. 38, 4 (2015), 28\u201338.","journal-title":"Bull. Tech. Committ. Data Eng."},{"key":"e_1_3_2_15_2","unstructured":"Apache Cassandra. 2014. Apache Cassandra. Retrieved from https:\/\/planetcassandra.org\/what-is-apache-cassandra"},{"key":"e_1_3_2_16_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10115-013-0727-6"},{"key":"e_1_3_2_17_2","unstructured":"Neo4j Community. 2024. How to Leverage Flash Memory to cache Neo4j data - Neo4j Graph Platform - Neo4j Online Community. Retrieved from https:\/\/community.neo4j.com\/t\/how-to-leverage-flash-memory-to-cache-neo4j-data\/43243"},{"key":"e_1_3_2_18_2","unstructured":"Databricks. 2015. Project Tungsten: Bringing Apache Spark closer to bare metal. Retrieved from https:\/\/www.databricks.com\/blog\/2015\/04\/28\/project-tungsten-bringing-spark-closer-to-bare-metal.html"},{"key":"e_1_3_2_19_2","first-page":"13","volume-title":"Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium (Java VM \u201902)","author":"Detlefs David","year":"2002","unstructured":"David Detlefs, Ross Knippel, William D. Clinger, and Matthias Jacob. 2002. Concurrent Remembered Set Refinement in Generational Garbage Collection. In Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium (Java VM \u201902). USENIX Association, 13\u201326."},{"key":"e_1_3_2_20_2","unstructured":"Apache Software Foundation. 2016. Apache Arrow: A Cross-Language Development Platform for In-Memory Data. Retrieved from https:\/\/arrow.apache.org\/"},{"key":"e_1_3_2_21_2","unstructured":"Apache Software Foundation. 2018. Apache Thrift. Retrieved from https:\/\/thrift.apache.org\/"},{"key":"e_1_3_2_22_2","volume-title":"Proceedings of the 15th USENIX Conference on Hot Topics in Operating Systems (HOTOS \u201915)","author":"Gog Ionel","year":"2015","unstructured":"Ionel Gog, Jana Giceva, Malte Schwarzkopf, Kapil Vaswani, Dimitrios Vytiniotis, Ganesan Ramalingan, Derek Murray, Steven Hand, and Michael Isard. 2015. Broom: Sweeping out Garbage Collection from Big Data Systems. In Proceedings of the 15th USENIX Conference on Hot Topics in Operating Systems (HOTOS \u201915). USENIX Association, Article 2, 2 pages."},{"key":"e_1_3_2_23_2","unstructured":"Google. 2001. Protocol Buffers. Retrieved from https:\/\/developers.google.com\/protocol-buffers\/docs\/javatutorial"},{"key":"e_1_3_2_24_2","unstructured":"Brendan Gregg. 2017. Visualizing Performance with Flame Graphs. USENIX Association."},{"key":"e_1_3_2_25_2","doi-asserted-by":"publisher","DOI":"10.5772\/intechopen.86917"},{"key":"e_1_3_2_26_2","doi-asserted-by":"crossref","first-page":"117","DOI":"10.1007\/978-1-4842-7452-1_5","volume-title":"Modern Data Engineering with Apache Spark","author":"Haines Scott","year":"2022","unstructured":"Scott Haines. 2022. Bridging Spark SQL with JDBC. In Modern Data Engineering with Apache Spark. Springer, 117\u2013151."},{"key":"e_1_3_2_27_2","volume-title":"Java I\/O: Tips and Techniques for Putting I\/O to Work","author":"Harold Elliotte Rusty","year":"2006","unstructured":"Elliotte Rusty Harold. 2006. Java I\/O: Tips and Techniques for Putting I\/O to Work. O\u2019Reilly Media, Inc."},{"key":"e_1_3_2_28_2","doi-asserted-by":"crossref","first-page":"33","DOI":"10.1145\/117954.117957","volume-title":"Proceedings of the International Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA \u201991)","author":"Hayes Barry","year":"1991","unstructured":"Barry Hayes. 1991. Using Key Object Opportunism to Collect Old Objects. In Proceedings of the International Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA \u201991). ACM, New York, NY, 33\u201346. DOI: 10.1145\/117954.117957"},{"key":"e_1_3_2_29_2","doi-asserted-by":"crossref","first-page":"433","DOI":"10.1201\/9781003033707-20","volume-title":"Massive Graph Analytics","author":"Hodler Amy E.","year":"2022","unstructured":"Amy E. Hodler and Mark Needham. 2022. Graph Data Science Using Neo4j. In Massive Graph Analytics. Chapman and Hall\/CRC, 433\u2013457."},{"key":"e_1_3_2_30_2","first-page":"1317","volume-title":"Proc. VLDB Endow.","volume":"9","author":"Iosup Alexandru","year":"2016","unstructured":"Alexandru Iosup, Tim Hegeman, Wing Lung Ngai, Stijn Heldens, Arnau Prat-P\u00e9rez, Thomas Manhardto, Hassan Chafio, Mihai Capot\u0103, Narayanan Sundaram, Michael Anderson, et al. 2016. LDBC Graphalytics: A Benchmark for Large-Scale Graph Analysis on Parallel and Distributed Platforms. Proc. VLDB Endow. 9, 13 (September 2016), 1317\u20131328. DOI: 10.14778\/3007263.3007270"},{"key":"e_1_3_2_31_2","unstructured":"Joseph Izraelevitz Jian Yang Lu Zhang Juno Kim Xiao Liu Amir Saman Memaripour Yun Joon Soh Zixuan Wang Yi Xu Subramanya R. Dulloor et al. 2019. Basic Performance Measurements of the Intel Optane DC Persistent Memory Module. arXiv:1903.05714. Retrieved from http:\/\/arxiv.org\/abs\/1903.05714"},{"key":"e_1_3_2_32_2","first-page":"322","volume-title":"Proceedings of the ACM\/IEEE 47th Annual International Symposium on Computer Architecture (ISCA \u201920)","author":"Jang Jaeyoung","year":"2020","unstructured":"Jaeyoung Jang, Sung Jun Jung, Sunmin Jeong, Jun Heo, Hoon Shin, Tae Jun Ham, and Jae W. Lee. 2020. A Specialized Architecture for Object Serialization with Applications to Big Data Analytics. In Proceedings of the ACM\/IEEE 47th Annual International Symposium on Computer Architecture (ISCA \u201920). IEEE Press, New York, NY, 322\u2013334. DOI: 10.1109\/ISCA45697.2020.00036"},{"key":"e_1_3_2_33_2","doi-asserted-by":"crossref","DOI":"10.1201\/9781315388021","volume-title":"The Garbage Collection Handbook: The Art of Automatic Memory Management","author":"Jones Richard","year":"2011","unstructured":"Richard Jones, Antony Hosking, and Eliot Moss. 2011. The Garbage Collection Handbook: The Art of Automatic Memory Management (1st ed.). Chapman & Hall\/CRC.","edition":"1"},{"key":"e_1_3_2_34_2","first-page":"694","volume-title":"Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 3 (ASPLOS \u201923)","author":"Kolokasis Iacovos G.","year":"2023","unstructured":"Iacovos G. Kolokasis, Giannos Evdorou, Shoaib Akram, Christos Kozanitis, Anastasios Papagiannis, Foivos S. Zakkak, Polyvios Pratikakis, and Angelos Bilas. 2023. TeraHeap: Reducing Memory Pressure in Managed Big Data Frameworks. In Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 3 (ASPLOS \u201923). ACM, New York, NY, 694\u2013709. DOI: 10.1145\/3582016.3582045"},{"key":"e_1_3_2_35_2","volume-title":"Proceedings of the 12th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage \u201920)","author":"Kolokasis Iacovos G.","year":"2020","unstructured":"Iacovos G. Kolokasis, Anastasios Papagiannis, Polyvios Pratikakis, Angelos Bilas, and Foivos Zakkak. 2020. Say Goodbye to Off-Heap Caches! On-Heap Caches Using Memory-Mapped I\/O. In Proceedings of the 12th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage \u201920). USENIX Association, USA, Article 4, 4 pages."},{"key":"e_1_3_2_36_2","doi-asserted-by":"publisher","DOI":"10.1109\/FCCM.2018.00033"},{"key":"e_1_3_2_37_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10586-016-0723-1"},{"key":"e_1_3_2_38_2","first-page":"72","volume-title":"Proceedings of the 18th ACM SIGPLAN\/SIGOPS International Conference on Virtual Execution Environments (VEE \u201922)","author":"Li Zhe","year":"2022","unstructured":"Zhe Li and Mingyu Wu. 2022. Transparent and Lightweight Object Placement for Managed Workloads atop Hybrid Memories. In Proceedings of the 18th ACM SIGPLAN\/SIGOPS International Conference on Virtual Execution Environments (VEE \u201922). ACM, New York, NY, 72\u201380. DOI: 10.1145\/3516807.3516822"},{"key":"e_1_3_2_39_2","first-page":"936","volume-title":"Proc. VLDB Endow.","volume":"9","author":"Lu Lu","year":"2016","unstructured":"Lu Lu, Xuanhua Shi, Yongluan Zhou, Xiong Zhang, Hai Jin, Cheng Pei, Ligang He, and Yuanzhen Geng. 2016. Lifetime-Based Memory Management for Distributed Data Processing Systems. Proc. VLDB Endow. 9, 12 (August 2016), 936\u2013947. DOI: 10.14778\/2994509.2994513"},{"key":"e_1_3_2_40_2","first-page":"92","volume-title":"Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI \u201922)","author":"Ma Haoran","year":"2022","unstructured":"Haoran Ma, Shi Liu, Chenxi Wang, Yifan Qiao, Michael D. Bond, Stephen M. Blackburn, Miryung Kim, and Guoqing Harry Xu. 2022. Mako: A Low-Pause, High-Throughput Evacuating Collector for Memory-Disaggregated Datacenters. In Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI \u201922). ACM, New York, NY, 92\u2013107. DOI: 10.1145\/3519939.3523441"},{"key":"e_1_3_2_41_2","doi-asserted-by":"publisher","DOI":"10.26599\/BDMA.2019.9020015"},{"key":"e_1_3_2_42_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-71593-9_27"},{"key":"e_1_3_2_43_2","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2010.7"},{"key":"e_1_3_2_44_2","first-page":"700","volume-title":"Proceedings of the IEEE 14th International Conference on Information Reuse & Integration (IRI)","author":"Nandimath Jyoti","year":"2013","unstructured":"Jyoti Nandimath, Ekata Banerjee, Ankur Patil, Pratima Kakade, Saumitra Vaidya, and Divyansh Chaturvedi. 2013. Big Data Analysis Using Apache Hadoop. In Proceedings of the IEEE 14th International Conference on Information Reuse & Integration (IRI), 700\u2013703. DOI: 10.1109\/IRI.2013.6642536"},{"key":"e_1_3_2_45_2","doi-asserted-by":"crossref","first-page":"538","DOI":"10.1145\/3341301.3359643","volume-title":"Proceedings of the 27th ACM Symposium on Operating Systems Principles (SOSP \u201919)","author":"Navasca Christian","year":"2019","unstructured":"Christian Navasca, Cheng Cai, Khanh Nguyen, Brian Demsky, Shan Lu, Miryung Kim, and Guoqing Harry Xu. 2019. Gerenuk: Thin Computation over Big Native Data Using Speculative Program Transformation. In Proceedings of the 27th ACM Symposium on Operating Systems Principles (SOSP \u201919). ACM, New York, NY, 538\u2013553. DOI: 10.1145\/3341301.3359643"},{"key":"e_1_3_2_46_2","first-page":"56","volume-title":"Proceedings of the 23rd International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201918)","author":"Nguyen Khanh","year":"2018","unstructured":"Khanh Nguyen, Lu Fang, Christian Navasca, Guoqing Xu, Brian Demsky, and Shan Lu. 2018. Skyway: Connecting Managed Heaps in Distributed Big Data Systems. In Proceedings of the 23rd International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201918). ACM, New York, NY, 56\u201369. DOI: 10.1145\/3173162.3173200"},{"key":"e_1_3_2_47_2","first-page":"349","volume-title":"Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation (OSDI \u201916)","author":"Nguyen Khanh","year":"2016","unstructured":"Khanh Nguyen, Lu Fang, Guoqing Xu, Brian Demsky, Shan Lu, Sanazsadat Alamian, and Onur Mutlu. 2016. Yak: A High-Performance Big-Data-Friendly Garbage Collector. In Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation (OSDI \u201916). USENIX Association, 349\u2013365."},{"key":"e_1_3_2_48_2","first-page":"675","volume-title":"Proceedings of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201915)","author":"Nguyen Khanh","year":"2015","unstructured":"Khanh Nguyen, Kai Wang, Yingyi Bu, Lu Fang, Jianfei Hu, and Guoqing Xu. 2015. FACADE: A Compiler and Runtime for (Almost) Object-Bounded Big Data Applications. In Proceedings of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201915). ACM, New York, NY, 675\u2013690. DOI: 10.1145\/2694344.2694345"},{"key":"e_1_3_2_49_2","volume-title":"Learning Java","author":"Niemeyer Patrick","year":"2013","unstructured":"Patrick Niemeyer and Daniel Leuck. 2013. Learning Java. O\u2019Reilly Media, Inc."},{"key":"e_1_3_2_50_2","unstructured":"Oracle. 2014. Class (Java Platform SE 8). Retrieved from https:\/\/docs.oracle.com\/javase\/8\/docs\/api\/java\/lang\/Class.html"},{"key":"e_1_3_2_51_2","unstructured":"Oracle. 2021. Reference Class (Java SE 17 & JDK 17). Retrieved from https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/ref\/Reference.html"},{"key":"e_1_3_2_52_2","unstructured":"Andrei Pangin. 2018. Async-profiler. Retrieved from https:\/\/github.com\/jvm-profiling-tools\/async-profiler"},{"key":"e_1_3_2_53_2","volume-title":"Proceedings of the USENIX Conference on Usenix Annual Technical Conference (USENIX ATC \u201920)","author":"Papagiannis Anastasios","year":"2020","unstructured":"Anastasios Papagiannis, Giorgos Xanthakis, Giorgos Saloustros, Manolis Marazakis, and Angelos Bilas. 2020. Optimizing Memory-Mapped I\/O for Fast Storage Devices. In Proceedings of the USENIX Conference on Usenix Annual Technical Conference (USENIX ATC \u201920). USENIX Association, Article 56, 15 pages."},{"key":"e_1_3_2_54_2","first-page":"1203","volume-title":"Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201920)","author":"Pourhabibi Arash","year":"2020","unstructured":"Arash Pourhabibi, Siddharth Gupta, Hussein Kassir, Mark Sutherland, Zilu Tian, Mario Paulo Drumond, Babak Falsafi, and Christoph Koch. 2020. Optimus Prime: Accelerating Data Transformation in Servers. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201920). ACM, New York, NY, 1203\u20131216. DOI: 10.1145\/3373376.3378501"},{"key":"e_1_3_2_55_2","doi-asserted-by":"crossref","first-page":"199","DOI":"10.1145\/3458336.3465287","volume-title":"Proceedings of the Workshop on Hot Topics in Operating Systems (HotOS \u201921)","author":"Raghavan Deepti","year":"2021","unstructured":"Deepti Raghavan, Philip Levis, Matei Zaharia, and Irene Zhang. 2021. Breakfast of Champions: Towards Zero-Copy Serialization with NIC Scatter-Gather. In Proceedings of the Workshop on Hot Topics in Operating Systems (HotOS \u201921). ACM, New York, NY, 199\u2013205. DOI: 10.1145\/3458336.3465287"},{"key":"e_1_3_2_56_2","volume-title":"Large-Scale Graph Processing Using Apache Giraph","author":"Sakr Sherif","year":"2017","unstructured":"Sherif Sakr, Faisal Moeen Orakzai, Ibrahim Abdelaziz, and Zuhair Khayyat. 2017. Large-Scale Graph Processing Using Apache Giraph (1st ed.). Springer Publishing Company, Incorporated.","edition":"1"},{"key":"e_1_3_2_57_2","unstructured":"Esoteric Software. 2013. Kryo. Retrieved from https:\/\/github.com\/EsotericSoftware\/kryo"},{"key":"e_1_3_2_58_2","first-page":"307","volume-title":"Proceedings of the USENIX Annual Technical Conference (USENIX ATC 08)","author":"Tang Yan","year":"2008","unstructured":"Yan Tang, Qi Gao, and Feng Qin. 2008. \\(\\{\\) LeakSurvivor \\(\\}\\) : Towards Safely Tolerating Memory Leaks for \\(\\{\\) Garbage-Collected \\(\\}\\) Languages. In Proceedings of the USENIX Annual Technical Conference (USENIX ATC 08). USENIX Association, 307\u2013320."},{"key":"e_1_3_2_59_2","first-page":"1","volume-title":"Proceedings of the USENIX Conference on Usenix Annual Technical Conference (USENIX ATC \u201921)","author":"Taranov Konstantin","year":"2021","unstructured":"Konstantin Taranov, Rodrigo Bruno, Gustavo Alonso, and Torsten Hoefler. 2021. Naos: Serialization-free RDMA networking in Java. In Proceedings of the USENIX Conference on Usenix Annual Technical Conference (USENIX ATC \u201921). USENIX Association, 1\u201314."},{"key":"e_1_3_2_60_2","first-page":"157","volume-title":"Proceedings of the 1st ACM SIGSOFT\/SIGPLAN Software Engineering Symposium on Practical Software Development Environments (SDE 1)","author":"Ungar David","year":"1984","unstructured":"David Ungar. 1984. Generation Scavenging: A Non-Disruptive High Performance Storage Reclamation Algorithm. In Proceedings of the 1st ACM SIGSOFT\/SIGPLAN Software Engineering Symposium on Practical Software Development Environments (SDE 1). ACM, New York, NY, 157\u2013167. DOI: 10.1145\/800020.808261"},{"key":"e_1_3_2_61_2","doi-asserted-by":"crossref","first-page":"347","DOI":"10.1145\/3314221.3314650","volume-title":"Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI \u201919)","author":"Wang Chenxi","year":"2019","unstructured":"Chenxi Wang, Huimin Cui, Ting Cao, John Zigman, Haris Volos, Onur Mutlu, Fang Lv, Xiaobing Feng, and Guoqing Harry Xu. 2019. Panthera: Holistic Memory Management for Big Data Processing over Hybrid Memories. In Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI \u201919). ACM, New York, NY, 347\u2013362. DOI: 10.1145\/3314221.3314650"},{"key":"e_1_3_2_62_2","first-page":"261","volume-title":"Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI \u201920)","author":"Wang Chenxi","year":"2020","unstructured":"Chenxi Wang, Haoran Ma, Shi Liu, Yuanqi Li, Zhenyuan Ruan, Khanh Nguyen, Michael D. Bond, Ravi Netravali, Miryung Kim, and Guoqing Harry Xu. 2020. Semeru: A Memory-Disaggregated Managed Runtime. In Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI \u201920). USENIX Association, 261\u2013280. Retrieved from https:\/\/www.usenix.org\/conference\/osdi20\/presentation\/wang"},{"key":"e_1_3_2_63_2","first-page":"35","volume-title":"Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI \u201922)","author":"Wang Chenxi","year":"2022","unstructured":"Chenxi Wang, Haoran Ma, Shi Liu, Yifan Qiao, Jonathan Eyolfson, Christian Navasca, Shan Lu, and Guoqing Harry Xu. 2022. MemLiner: Lining up Tracing and Application for a Far-Memory-Friendly Runtime. In Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI \u201922). USENIX Association, 35\u201353. Retrieved from https:\/\/www.usenix.org\/conference\/osdi22\/presentation\/wang"},{"key":"e_1_3_2_64_2","first-page":"609","volume-title":"Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201922)","author":"Weiner Johannes","year":"2022","unstructured":"Johannes Weiner, Niket Agarwal, Dan Schatzberg, Leon Yang, Hao Wang, Blaise Sanouillet, Bikash Sharma, Tejun Heo, Mayank Jain, Chunqiang Tang, and Dimitrios Skarlatos. 2022. TMO: Transparent Memory Offloading in Datacenters. In Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS \u201922). ACM, New York, NY, 609\u2013621. DOI: 10.1145\/3503222.3507731"},{"key":"e_1_3_2_65_2","doi-asserted-by":"crossref","first-page":"206","DOI":"10.1145\/3458336.3465283","volume-title":"Proceedings of the Workshop on Hot Topics in Operating Systems (HotOS \u201921)","author":"Wolnikowski Adam","year":"2021","unstructured":"Adam Wolnikowski, Stephen Ibanez, Jonathan Stone, Changhoon Kim, Rajit Manohar, and Robert Soul\u00e9. 2021. Zerializer: Towards Zero-Copy Serialization. In Proceedings of the Workshop on Hot Topics in Operating Systems (HotOS \u201921). ACM, New York, NY, 206\u2013212. DOI: 10.1145\/3458336.3465283"},{"key":"e_1_3_2_66_2","first-page":"16","volume-title":"Proceedings of the 8th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage \u201916)","author":"Xu Erci","year":"2016","unstructured":"Erci Xu, Mohit Saxena, and Lawrence Chiu. 2016. Neutrino: Revisiting Memory Caching for Iterative Data Analytics. In Proceedings of the 8th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage \u201916). USENIX Association, 16\u201320."},{"key":"e_1_3_2_67_2","first-page":"570","volume-title":"Proc. VLDB Endow","volume":"12","author":"Xu Lijie","year":"2019","unstructured":"Lijie Xu, Tian Guo, Wensheng Dou, Wei Wang, and Jun Wei. 2019. An Experimental Evaluation of Garbage Collectors on Big Data Applications. Proc. VLDB Endow. 12, 5 (January 2019), 570\u2013583. DOI: 10.14778\/3303753.3303762"},{"key":"e_1_3_2_68_2","doi-asserted-by":"crossref","first-page":"74","DOI":"10.1145\/3381898.3397213","volume-title":"Proceedings of the 2020 ACM SIGPLAN International Symposium on Memory Management (ISMM \u201920)","author":"Yang Albert Mingkun","year":"2020","unstructured":"Albert Mingkun Yang, Erik \u00d6sterlund, Jesper Wilhelmsson, Hanna Nyblom, and Tobias Wrigstad. 2020. ThinGC: Complete Isolation with Marginal Overhead. In Proceedings of the 2020 ACM SIGPLAN International Symposium on Memory Management (ISMM \u201920). ACM, New York, NY, 74\u201386. DOI: 10.1145\/3381898.3397213"},{"key":"e_1_3_2_69_2","first-page":"169","volume-title":"Proceedings of the 18th USENIX Conference on File and Storage Technologies (FAST \u201920)","author":"Yang Jian","year":"2020","unstructured":"Jian Yang, Juno Kim, Morteza Hoseinzadeh, Joseph Izraelevitz, and Steven Swanson. 2020. An Empirical Guide to the Behavior and Use of Scalable Persistent Memory. In Proceedings of the 18th USENIX Conference on File and Storage Technologies (FAST \u201920). USENIX Association, 169\u2013182."},{"key":"e_1_3_2_70_2","first-page":"343","volume-title":"Proceedings of the 16th European Conference on Computer Systems (EuroSys \u201921)","author":"Yang Yanfei","year":"2021","unstructured":"Yanfei Yang, Mingyu Wu, Haibo Chen, and Binyu Zang. 2021. Bridging the Performance Gap for Copy-Based Garbage Collectors atop Non-Volatile Memory. In Proceedings of the 16th European Conference on Computer Systems (EuroSys \u201921). ACM, New York, NY, 343\u2013358. DOI: 10.1145\/3447786.3456246"},{"key":"e_1_3_2_71_2","first-page":"31","volume-title":"Proceedings of the 58th ACM\/IEEE Design Automation Conference (DAC \u201921)","author":"You Litong","year":"2021","unstructured":"Litong You, Tianxiao Gu, Shengan Zheng, Jianmei Guo, Sanhong Li, Yuting Chen, and Linpeng Huang. 2021. JPDHeap: A JVM Heap Design for PM-DRAM Memories. In Proceedings of the 58th ACM\/IEEE Design Automation Conference (DAC \u201921). IEEE, 31\u201336. DOI: 10.1109\/DAC18074.2021.9586279"},{"key":"e_1_3_2_72_2","volume-title":"Proceedings of the 9th USENIX Conference on Networked Systems Design and Implementation (NSDI \u201912)","author":"Zaharia Matei","year":"2012","unstructured":"Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Justin Ma, Murphy McCauley, Michael J. Franklin, Scott Shenker, and Ion Stoica. 2012. Resilient Distributed Datasets: A Fault-Tolerant Abstraction for in-Memory Cluster Computing. In Proceedings of the 9th USENIX Conference on Networked Systems Design and Implementation (NSDI \u201912). USENIX Association, 2 pages."},{"key":"e_1_3_2_73_2","volume-title":"Proceedings of the 2nd USENIX Conference on Hot Topics in Cloud Computing (HotCloud \u201910)","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 \u201910). USENIX Association, Article 10, 10 pages."},{"key":"e_1_3_2_74_2","doi-asserted-by":"crossref","first-page":"15","DOI":"10.1145\/3381052.3381320","volume-title":"Proceedings of the 16th ACM SIGPLAN\/SIGOPS International Conference on Virtual Execution Environments (VEE \u201920)","author":"Zhao Wenyu","year":"2020","unstructured":"Wenyu Zhao and Stephen M. Blackburn. 2020. Deconstructing the Garbage-First Collector. In Proceedings of the 16th ACM SIGPLAN\/SIGOPS International Conference on Virtual Execution Environments (VEE \u201920). ACM, New York, NY, 15\u201329. DOI: 10.1145\/3381052.3381320"}],"container-title":["ACM Transactions on Programming Languages and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3700593","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3700593","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T01:17:28Z","timestamp":1750295848000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3700593"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,12,13]]},"references-count":73,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2024,12,31]]}},"alternative-id":["10.1145\/3700593"],"URL":"https:\/\/doi.org\/10.1145\/3700593","relation":{},"ISSN":["0164-0925","1558-4593"],"issn-type":[{"type":"print","value":"0164-0925"},{"type":"electronic","value":"1558-4593"}],"subject":[],"published":{"date-parts":[[2024,12,13]]},"assertion":[{"value":"2023-09-25","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2024-09-30","order":2,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2024-12-13","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}