{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,5]],"date-time":"2026-03-05T15:46:12Z","timestamp":1772725572243,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":70,"publisher":"ACM","license":[{"start":{"date-parts":[[2024,4,27]],"date-time":"2024-04-27T00:00:00Z","timestamp":1714176000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2024,4,27]]},"DOI":"10.1145\/3620666.3651350","type":"proceedings-article","created":{"date-parts":[[2024,4,24]],"date-time":"2024-04-24T12:08:21Z","timestamp":1713960501000},"page":"192-206","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":8,"title":["Characterizing a Memory Allocator at Warehouse Scale"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-1982-2031","authenticated-orcid":false,"given":"Zhuangzhuang","family":"Zhou","sequence":"first","affiliation":[{"name":"Cornell University, Ithaca, NY, USA"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7382-636X","authenticated-orcid":false,"given":"Vaibhav","family":"Gogte","sequence":"additional","affiliation":[{"name":"Google, Sunnyvale, CA, USA"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5419-2752","authenticated-orcid":false,"given":"Nilay","family":"Vaish","sequence":"additional","affiliation":[{"name":"Google, Sunnyvale, CA, United States"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9404-7875","authenticated-orcid":false,"given":"Chris","family":"Kennelly","sequence":"additional","affiliation":[{"name":"Google, New York, NY, USA"}]},{"ORCID":"https:\/\/orcid.org\/0009-0003-5927-8728","authenticated-orcid":false,"given":"Patrick","family":"Xia","sequence":"additional","affiliation":[{"name":"Google, Milford, PA, USA"}]},{"ORCID":"https:\/\/orcid.org\/0009-0007-8644-4858","authenticated-orcid":false,"given":"Svilen","family":"Kanev","sequence":"additional","affiliation":[{"name":"Google, Sunnyvale, CA, United States of America"}]},{"ORCID":"https:\/\/orcid.org\/0009-0003-5042-440X","authenticated-orcid":false,"given":"Tipp","family":"Moseley","sequence":"additional","affiliation":[{"name":"Google, Sunnyvale, CA, United States of America"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7779-4134","authenticated-orcid":false,"given":"Christina","family":"Delimitrou","sequence":"additional","affiliation":[{"name":"MIT, Cambridge, MA, United States of America"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9751-5902","authenticated-orcid":false,"given":"Parthasarathy","family":"Ranganathan","sequence":"additional","affiliation":[{"name":"Google, San Jose, CA, United States of America"}]}],"member":"320","published-online":{"date-parts":[[2024,4,27]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"Completely Fair Scheduler. https:\/\/docs.kernel.org\/scheduler\/sched-design-CFS.html."},{"key":"e_1_3_2_1_2_1","unstructured":"Eigen Linear Algebra Library. https:\/\/eigen.tuxfamily.org."},{"key":"e_1_3_2_1_3_1","unstructured":"Implement NUMA Awareness in TCMalloc. https:\/\/github.com\/google\/tcmalloc\/commit\/ef7a3f8d794c42705bf4327ca79fa17186904801."},{"key":"e_1_3_2_1_4_1","unstructured":"Intel Memory Latency Checker. https:\/\/www.intel.com\/content\/www\/us\/en\/developer\/articles\/tool\/intelr-memory-latency-checker.html."},{"key":"e_1_3_2_1_5_1","unstructured":"mi-malloc. https:\/\/microsoft.github.io\/mimalloc\/."},{"key":"e_1_3_2_1_6_1","unstructured":"Redis. https:\/\/redis.io."},{"key":"e_1_3_2_1_7_1","unstructured":"Restartable Sequences. https:\/\/github.com\/torvalds\/linux\/commit\/d82991a8688ad128b46db1b42d5d84396487a508."},{"key":"e_1_3_2_1_8_1","unstructured":"Restartable Sequences. https:\/\/dynamorio.org\/page_rseq.html."},{"key":"e_1_3_2_1_9_1","unstructured":"Strace: Linux Syscall Tracer. https:\/\/strace.io."},{"key":"e_1_3_2_1_10_1","unstructured":"TCMalloc. https:\/\/github.com\/google\/tcmalloc."},{"key":"e_1_3_2_1_11_1","unstructured":"The GNU C Library. https:\/\/www.gnu.org\/software\/libc."},{"key":"e_1_3_2_1_12_1","unstructured":"Transparent Hugepage Support. https:\/\/www.kernel.org\/doc\/html\/next\/admin-guide\/mm\/transhuge.html."},{"key":"e_1_3_2_1_13_1","volume-title":"Adam Jacob Tart","author":"Adams Colin","year":"2020","unstructured":"Colin Adams, Luis Alonso, Ben Atkin, John P. Banning, Sumeer Bhola, Rick Buskens, Ming Chen, Xi Chen, Yoo Chung, Qin Jia, Nick Sakharov, George T. Talbot, Adam Jacob Tart, and Nick Taylor, editors. Monarch: Google's Planet-Scale In-Memory Time Series Database, 2020."},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2076022.1993486"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/356989.357000"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1365815.1365816"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304005"},{"key":"e_1_3_2_1_18_1","volume-title":"Extending restartable sequences with virtual CPU IDs. https:\/\/lwn.net\/Articles\/885818","author":"Corbet Jonathan","year":"2022","unstructured":"Jonathan Corbet. Extending restartable sequences with virtual CPU IDs. https:\/\/lwn.net\/Articles\/885818, 2022."},{"key":"e_1_3_2_1_19_1","volume-title":"OSDI","author":"Corbett James C.","year":"2012","unstructured":"James C. Corbett, Jeffrey Dean, Michael Epstein, Andrew Fikes, Christopher Frost, JJ Furman, Sanjay Ghemawat, Andrey Gubarev, Christopher Heiser, Peter Hochschild, Wilson Hsieh, Sebastian Kanthak, Eugene Kogan, Hongyi Li, Alexander Lloyd, Sergey Melnik, David Mwaura, David Nagle, Sean Quinlan, Rajesh Rao, Lindsay Rolig, Dale Woodford, Yasushi Saito, Christopher Taylor, Michal Szymaniak, and Ruth Wang. Spanner: Google's globally-distributed database. In OSDI, 2012."},{"key":"e_1_3_2_1_20_1","unstructured":"Jeff Defilippi. Why Chiplets and why now? https:\/\/community.arm.com\/arm-community-blogs\/b\/infrastructure-solutions-blog\/posts\/why-chiplets-why-now."},{"key":"e_1_3_2_1_21_1","volume-title":"Qos-aware scheduling in heterogeneous datacenters with paragon. ACM Transactions on Computer Systems (TOCS), 31(4):1--34","author":"Delimitrou Christina","year":"2013","unstructured":"Christina Delimitrou and Christos Kozyrakis. Qos-aware scheduling in heterogeneous datacenters with paragon. ACM Transactions on Computer Systems (TOCS), 31(4):1--34, 2013."},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/2541940.2541941"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2017.3211123"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2000064.2000108"},{"key":"e_1_3_2_1_25_1","volume-title":"Proc. of the bsdcan conference, ottawa, canada","author":"Evans Jason","year":"2006","unstructured":"Jason Evans. A scalable concurrent malloc (3) implementation for freebsd. In Proc. of the bsdcan conference, ottawa, canada, 2006."},{"key":"e_1_3_2_1_26_1","volume-title":"Scalable memory allocation using jemalloc. https:\/\/engineering.fb.com\/2011\/01\/03\/core-infra\/scalable-memory-allocation-using-jemalloc\/","author":"Evans Jason","year":"2011","unstructured":"Jason Evans. Scalable memory allocation using jemalloc. https:\/\/engineering.fb.com\/2011\/01\/03\/core-infra\/scalable-memory-allocation-using-jemalloc\/, 2011."},{"key":"e_1_3_2_1_27_1","volume-title":"Anastasia Ailamaki, and Babak Falsafi. Clearing the clouds: a study of emerging scale-out workloads on modern hardware. Acm sigplan notices, 47(4):37--48","author":"Ferdman Michael","year":"2012","unstructured":"Michael Ferdman, Almutaz Adileh, Onur Kocberber, Stavros Volos, Mohammad Alisafaee, Djordje Jevdjic, Cansu Kaynak, Adrian Daniel Popescu, Anastasia Ailamaki, and Babak Falsafi. Clearing the clouds: a study of emerging scale-out workloads on modern hardware. Acm sigplan notices, 47(4):37--48, 2012."},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304013"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3579371.3589082"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2023.3302731"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/3123939.3123956"},{"key":"e_1_3_2_1_32_1","volume-title":"Spec cpu2006 benchmark descriptions. ACM SIGARCH Computer Architecture News, 34(4):1--17","author":"Henning John L","year":"2006","unstructured":"John L Henning. Spec cpu2006 benchmark descriptions. ACM SIGARCH Computer Architecture News, 34(4):1--17, 2006."},{"key":"e_1_3_2_1_33_1","first-page":"257","volume-title":"15th USENIX Symposium on Operating Systems Design and Implementation (OSDI 21)","author":"Hunter A.H.","year":"2021","unstructured":"A.H. Hunter, Chris Kennelly, Paul Turner, Darryl Gove, Tipp Moseley, and Parthasarathy Ranganathan. Beyond malloc efficiency to fleet efficiency: a hugepage-aware memory allocator. In 15th USENIX Symposium on Operating Systems Design and Implementation (OSDI 21), pages 257--273. USENIX Association, July 2021."},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/2749469.2750392"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/3093336.3037736"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2016.7581261"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/635506.605420"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2010.73"},{"key":"e_1_3_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/2754169.2754178"},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.5555\/3026877.3026931"},{"key":"e_1_3_2_1_41_1","volume-title":"When prefetching works, when it doesn't, and why. ACM Trans. Archit. Code Optim., 9(1), mar","author":"Lee Jaekyu","year":"2012","unstructured":"Jaekyu Lee, Hyesoon Kim, and Richard Vuduc. When prefetching works, when it doesn't, and why. ACM Trans. Archit. Code Optim., 9(1), mar 2012."},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-34175-6_13"},{"key":"e_1_3_2_1_43_1","volume-title":"There's plenty of room at the top: What will drive computer performance after moore's law? Science, 368(6495):eaam9744","author":"Leiserson Charles E.","year":"2020","unstructured":"Charles E. Leiserson, Neil C. Thompson, Joel S. Emer, Bradley C. Kuszmaul, Butler W. Lampson, Daniel Sanchez, and Tao B. Schardl. There's plenty of room at the top: What will drive computer performance after moore's law? Science, 368(6495):eaam9744, 2020."},{"key":"e_1_3_2_1_44_1","volume-title":"There's plenty of room at the top: What will drive computer performance after moore's law? Science, 368(6495):eaam9744","author":"Leiserson Charles E","year":"2020","unstructured":"Charles E Leiserson, Neil C Thompson, Joel S Emer, Bradley C Kuszmaul, Butler W Lampson, Daniel Sanchez, and Tao B Schardl. There's plenty of room at the top: What will drive computer performance after moore's law? Science, 368(6495):eaam9744, 2020."},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/3593856.3595911"},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3315573.3329980"},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/2749469.2749475"},{"key":"e_1_3_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/3373376.3378525"},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/3459898.3463905"},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISCA52012.2021.00014"},{"key":"e_1_3_2_1_51_1","volume-title":"Flexible, high-performance ml serving","author":"Olston Christopher","year":"2017","unstructured":"Christopher Olston, Noah Fiedel, Kiril Gorovoy, Jeremiah Harmsen, Li Lao, Fangwei Li, Vinu Rajashekhar, Sukriti Ramesh, and Jordan Soyke. Tensorflow-serving: Flexible, high-performance ml serving, 2017."},{"key":"e_1_3_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2019.8661201"},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304064"},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/3173162.3173203"},{"key":"e_1_3_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3314582"},{"key":"e_1_3_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/3466752.3480062"},{"key":"e_1_3_2_1_57_1","first-page":"65","volume-title":"IEEE Micro","author":"Ren Gang","year":"2010","unstructured":"Gang Ren, Eric Tune, Tipp Moseley, Yixin Shi, Silvius Rus, and Robert Hundt. Google-wide profiling: A continuous profiling infrastructure for data centers. IEEE Micro, pages 65--79, 2010."},{"key":"e_1_3_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.14778\/3229863.3229871"},{"key":"e_1_3_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/3600006.3613156"},{"key":"e_1_3_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/3575693.3575727"},{"key":"e_1_3_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISSCC19947.2020.9063113"},{"key":"e_1_3_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/3373376.3378450"},{"key":"e_1_3_2_1_63_1","doi-asserted-by":"publisher","DOI":"10.1145\/3307650.3322227"},{"key":"e_1_3_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2018.8573515"},{"key":"e_1_3_2_1_65_1","doi-asserted-by":"publisher","DOI":"10.1109\/CVPR.2016.308"},{"key":"e_1_3_2_1_66_1","doi-asserted-by":"publisher","DOI":"10.1145\/3307650.3322223"},{"key":"e_1_3_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/3591195.3595276"},{"key":"e_1_3_2_1_68_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISPASS.2014.6844459"},{"key":"e_1_3_2_1_69_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2014.6983059"},{"key":"e_1_3_2_1_70_1","doi-asserted-by":"publisher","DOI":"10.1145\/3579371.3589079"}],"event":{"name":"ASPLOS '24: 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 3","location":"La Jolla CA USA","acronym":"ASPLOS '24","sponsor":["SIGARCH ACM Special Interest Group on Computer Architecture","SIGOPS ACM Special Interest Group on Operating Systems","SIGPLAN ACM Special Interest Group on Programming Languages","SIGBED ACM Special Interest Group on Embedded Systems"]},"container-title":["Proceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 3"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3620666.3651350","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T00:03:43Z","timestamp":1750291423000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3620666.3651350"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,4,27]]},"references-count":70,"alternative-id":["10.1145\/3620666.3651350","10.1145\/3620666"],"URL":"https:\/\/doi.org\/10.1145\/3620666.3651350","relation":{},"subject":[],"published":{"date-parts":[[2024,4,27]]},"assertion":[{"value":"2024-04-27","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}