{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,2]],"date-time":"2026-04-02T09:43:27Z","timestamp":1775123007119,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":36,"publisher":"ACM","license":[{"start":{"date-parts":[[2020,2,22]],"date-time":"2020-02-22T00:00:00Z","timestamp":1582329600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"publisher","award":["EP\/K026399\/1,EP\/P020011\/1"],"award-info":[{"award-number":["EP\/K026399\/1,EP\/P020011\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2020,2,22]]},"DOI":"10.1145\/3368826.3377914","type":"proceedings-article","created":{"date-parts":[[2020,2,21]],"date-time":"2020-02-21T21:49:28Z","timestamp":1582321768000},"page":"94-106","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":11,"title":["HALO: post-link heap-layout optimisation"],"prefix":"10.1145","author":[{"given":"Joe","family":"Savage","sequence":"first","affiliation":[{"name":"University of Cambridge, UK"}]},{"given":"Timothy M.","family":"Jones","sequence":"additional","affiliation":[{"name":"University of Cambridge, UK"}]}],"member":"320","published-online":{"date-parts":[[2020,2,22]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1993478.1993486"},{"key":"e_1_3_2_1_2_1","unstructured":"Todd Austin. 1995. The Pointer-intensive Benchmark Suite. http: \/\/pages.cs.wisc.edu\/~austin\/ptr-dist.html"},{"key":"e_1_3_2_1_3_1","volume-title":"Proceedings of the ACM SIGPLAN 1993 Conference on Programming Language Design and Implementation (PLDI \u201993)","author":"David","unstructured":"David A. Barrett and Benjamin G. Zorn. 1993. Using Lifetime Predictors to Improve Memory Allocation Performance. In Proceedings of the ACM SIGPLAN 1993 Conference on Programming Language Design and Implementation (PLDI \u201993). ACM, New York, NY, USA, 187\u2013196."},{"key":"e_1_3_2_1_4_1","volume-title":"Proceedings of the ACM SIGPLAN 2001 Conference on Programming Language Design and Implementation (PLDI \u201901)","author":"Berger Emery D.","unstructured":"Emery D. Berger, Benjamin G. Zorn, and Kathryn S. McKinley. 2001. Composing High-performance Memory Allocators. In Proceedings of the ACM SIGPLAN 2001 Conference on Programming Language Design and Implementation (PLDI \u201901). ACM, New York, NY, USA, 114\u2013124."},{"key":"e_1_3_2_1_5_1","volume-title":"Proceedings of the 17th ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications (OOPSLA \u201902)","author":"Berger Emery D.","unstructured":"Emery D. Berger, Benjamin G. Zorn, and Kathryn S. McKinley. 2002. Reconsidering Custom Memory Allocation. In Proceedings of the 17th ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications (OOPSLA \u201902). ACM, New York, NY, USA, 1\u201312."},{"key":"e_1_3_2_1_6_1","first-page":"313","article-title":"Quantifying behavioral differences between C and C++ programs","volume":"2","author":"Calder Brad","year":"1994","unstructured":"Brad Calder, Dirk Grunwald, and Benjamin Zorn. 1994. Quantifying behavioral differences between C and C++ programs. Journal of Programming Languages 2, 4 (1994), 313\u2013351.","journal-title":"Journal of Programming Languages"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/291069.291036"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/378795.378840"},{"key":"e_1_3_2_1_9_1","volume-title":"Proceedings of the ACM SIGPLAN 1999 Conference on Programming Language Design and Implementation (PLDI \u201999)","author":"Chilimbi Trishul M.","unstructured":"Trishul M. Chilimbi, Bob Davidson, and James R. Larus. 1999. Cacheconscious Structure Definition. In Proceedings of the ACM SIGPLAN 1999 Conference on Programming Language Design and Implementation (PLDI \u201999). ACM, New York, NY, USA, 13\u201324."},{"key":"e_1_3_2_1_10_1","volume-title":"Proceedings of the ACM SIGPLAN 1999 Conference on Programming Language Design and Implementation (PLDI \u201999)","author":"Chilimbi Trishul M.","unstructured":"Trishul M. Chilimbi, Mark D. Hill, and James R. Larus. 1999. Cacheconscious Structure Layout. In Proceedings of the ACM SIGPLAN 1999 Conference on Programming Language Design and Implementation (PLDI \u201999). ACM, New York, NY, USA, 1\u201312."},{"key":"e_1_3_2_1_11_1","volume-title":"Proceedings of the 27th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI \u201906)","author":"Trishul","unstructured":"Trishul M. Chilimbi and Ran Shaham. 2006. Cache-conscious Coallocation of Hot Data Streams. In Proceedings of the 27th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI \u201906). ACM, New York, NY, USA, 252\u2013262."},{"key":"e_1_3_2_1_12_1","volume-title":"Proceedings of BSDCan","author":"Evans Jason","year":"2006","unstructured":"Jason Evans. 2006. A scalable concurrent malloc(3) implementation for FreeBSD. In Proceedings of BSDCan 2006."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2742580.2742807"},{"key":"e_1_3_2_1_14_1","unstructured":"Sanjay Ghemawat. 2007. TCMalloc: Thread-Caching Malloc. https: \/\/gperftools.github.io\/gperftools\/tcmalloc.html"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"crossref","unstructured":"Jason Gregory. 2009. Game Engine Architecture. A K Peters.","DOI":"10.1201\/b10681"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.7155\/jgaa.00020"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0020-0190(00)00142-3"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542431.1542447"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/353926.353937"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/2754169.2754178"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/301618.301678"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065010.1065027"},{"key":"e_1_3_2_1_23_1","volume-title":"Mimalloc: Free List Sharding in Action. Technical Report MSR-TR-2019-18. Microsoft. https:\/\/www.microsoft.com\/en-us\/research\/publication\/ mimalloc-free-list-sharding-in-action\/","author":"Leijen Daan","year":"2019","unstructured":"Daan Leijen, Ben Zorn, and Leonardo de Moura. 2019. Mimalloc: Free List Sharding in Action. Technical Report MSR-TR-2019-18. Microsoft. https:\/\/www.microsoft.com\/en-us\/research\/publication\/ mimalloc-free-list-sharding-in-action\/"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065010.1065034"},{"key":"e_1_3_2_1_25_1","volume-title":"Proceedings of the 1997 Data Compression Conference (DDC \u201997)","author":"Nevill-Manning C. G.","unstructured":"C. G. Nevill-Manning and I. H. Witten. 1997. Linear-time, incremental hierarchy inference for compression. In Proceedings of the 1997 Data Compression Conference (DDC \u201997). 3\u201311."},{"key":"e_1_3_2_1_26_1","article-title":"Finding and evaluating community structure in networks","author":"Newman M. E. J.","year":"2004","unstructured":"M. E. J. Newman and M. Girvan. 2004. Finding and evaluating community structure in networks. Phys. Rev. E 69 (Feb 2004), 026113. Issue 2.","journal-title":"Phys. Rev. E 69"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2019.8661201"},{"key":"e_1_3_2_1_28_1","volume-title":"Mesh: Compacting Memory Management for C\/C++ Applications. CoRR abs\/1902.04738","author":"Powers Bobby","year":"2019","unstructured":"Bobby Powers, David Tench, Emery D. Berger, and Andrew McGregor. 2019. Mesh: Compacting Memory Management for C\/C++ Applications. CoRR abs\/1902.04738 (2019). arXiv: 1902.04738 http: \/\/arxiv.org\/abs\/1902.04738"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/201059.201065"},{"key":"e_1_3_2_1_30_1","unstructured":"Peter Rundberg and Fredrik Warg. 1995. The FreeBench v1.03 Benchmark Suite. https:\/\/web.archive.org\/web\/20020601092519\/http:\/\/www. freebench.org\/"},{"key":"e_1_3_2_1_31_1","volume-title":"Proceedings of the Eighth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS VIII). ACM","author":"Matthew","unstructured":"Matthew L. Seidl and Benjamin G. Zorn. 1998. Segregating Heap Objects by Reference Behavior and Lifetime. In Proceedings of the Eighth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS VIII). ACM, New York, NY, USA, 12\u201323."},{"key":"e_1_3_2_1_32_1","volume-title":"SPEC CPU2000","author":"Standard Performance Evaluation Corporation","year":"2000","unstructured":"Standard Performance Evaluation Corporation. 2000. SPEC CPU2000. https:\/\/www.spec.org\/cpu2000"},{"key":"e_1_3_2_1_33_1","volume-title":"SPEC CPU2017","author":"Standard Performance Evaluation Corporation","year":"2017","unstructured":"Standard Performance Evaluation Corporation. 2017. SPEC CPU2017. https:\/\/www.spec.org\/cpu2017"},{"key":"e_1_3_2_1_34_1","volume-title":"Proceedings of the 1998 International Conference on Parallel Architectures and Compilation Techniques. 322\u2013329","author":"Truong D. N.","unstructured":"D. N. Truong, F. Bodin, and A. Seznec. 1998. Improving cache behavior of dynamically allocated data structures. In Proceedings of the 1998 International Conference on Parallel Architectures and Compilation Techniques. 322\u2013329."},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1772954.1772969"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/1127577.1127584"}],"event":{"name":"CGO '20: 18th ACM\/IEEE International Symposium on Code Generation and Optimization","location":"San Diego CA USA","acronym":"CGO '20","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGMICRO ACM Special Interest Group on Microarchitectural Research and Processing","IEEE-CS Computer Society"]},"container-title":["Proceedings of the 18th ACM\/IEEE International Symposium on Code Generation and Optimization"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3368826.3377914","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3368826.3377914","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T23:23:28Z","timestamp":1750202608000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3368826.3377914"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,2,22]]},"references-count":36,"alternative-id":["10.1145\/3368826.3377914","10.1145\/3368826"],"URL":"https:\/\/doi.org\/10.1145\/3368826.3377914","relation":{},"subject":[],"published":{"date-parts":[[2020,2,22]]},"assertion":[{"value":"2020-02-22","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}