{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,28]],"date-time":"2024-09-28T04:23:34Z","timestamp":1727497414132},"publisher-location":"New York, NY, USA","reference-count":108,"publisher":"ACM","funder":[{"name":"NSF","award":["2050007"]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2023,2,17]]},"DOI":"10.1145\/3579990.3580010","type":"proceedings-article","created":{"date-parts":[[2023,2,22]],"date-time":"2023-02-22T10:27:10Z","timestamp":1677061630000},"page":"81-94","update-policy":"http:\/\/dx.doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["DJXPerf: Identifying Memory Inefficiencies via Object-Centric Profiling for Java"],"prefix":"10.1145","author":[{"given":"Bolun","family":"Li","sequence":"first","affiliation":[{"name":"North Carolina State University, USA"}]},{"given":"Pengfei","family":"Su","sequence":"additional","affiliation":[{"name":"University of California, Merced, USA"}]},{"given":"Milind","family":"Chabbi","sequence":"additional","affiliation":[{"name":"Scalable Machines Research, USA"}]},{"given":"Shuyin","family":"Jiao","sequence":"additional","affiliation":[{"name":"North Carolina State University, USA"}]},{"given":"Xu","family":"Liu","sequence":"additional","affiliation":[{"name":"North Carolina State University, USA"}]}],"member":"320","published-online":{"date-parts":[[2023,2,22]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"2004. Scimark. https:\/\/www.spec.org\/jvm2008\/docs\/benchmarks\/scimark.html"},{"key":"e_1_3_2_1_2_1","unstructured":"2013. NUMA (Non-Uniform Memory Access): An Overview. https:\/\/queue.acm.org\/detail.cfm?id=2513149"},{"key":"e_1_3_2_1_3_1","unstructured":"2013. Obtain object address. https:\/\/jrebel.com\/rebellabs\/dangerous-code-how-to-be-unsafe-with-java-classes-objects-in-memory\/4\/"},{"key":"e_1_3_2_1_4_1","unstructured":"2018. DaCapo Benchmark Suite 9.12. https:\/\/sourceforge.net\/projects\/dacapobench\/files\/9.12-bach-MR1\/"},{"key":"e_1_3_2_1_5_1","unstructured":"2018. OProfile. http:\/\/oprofile.sourceforge.net"},{"key":"e_1_3_2_1_6_1","unstructured":"2019. The Scala Programming Language. https:\/\/www.scala-lang.org"},{"key":"e_1_3_2_1_7_1","unstructured":"2021. GC progress from JDK 8 to JDK 17. https:\/\/kstefanj.github.io\/2021\/11\/24\/gc-progress-8-17.html"},{"key":"e_1_3_2_1_8_1","unstructured":"2021. How to choose the best Java garbage collector. https:\/\/developers.redhat.com\/articles\/2021\/11\/02\/how-choose-best-java-garbage-collector"},{"key":"e_1_3_2_1_9_1","unstructured":"2021. Java on Google Cloud. https:\/\/cloud.google.com\/java"},{"key":"e_1_3_2_1_10_1","volume-title":"Sweeney","author":"Arnold Matthew","year":"1999","unstructured":"Matthew Arnold and Peter F. Sweeney. 1999. Approximating the Calling Context Tree via Sampling. IBM."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-36579-6_23"},{"key":"e_1_3_2_1_12_1","unstructured":"Ed Baum David abd Baum. [n. d.]. Netflix powers through 2 billion content requests per day with Java-driven architecture. https:\/\/go.java\/netflix.html"},{"key":"e_1_3_2_1_13_1","unstructured":"Ed Baum David abd Baum. [n. d.]. Twitter migrates core infrastructure to Java Virtual Machine and supports more than 400 million tweets a day.. https:\/\/go.java\/twitter.html"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/1071690.1064232"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1007\/11847366_23"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2009.57"},{"key":"e_1_3_2_1_17_1","unstructured":"Eric Bruneton Romain Lenglet and Thierry Coupaye. 2019. ASM Framework. https:\/\/asm.ow2.io"},{"key":"e_1_3_2_1_18_1","volume-title":"Hollingsworth","author":"Buck Bryan R.","year":"2004","unstructured":"Bryan R. Buck and Jeffrey K. Hollingsworth. 2004. Data Centric Cache Measurement on the Intel Itanium 2 Processor. In SC."},{"key":"e_1_3_2_1_19_1","unstructured":"Mark Bull Lorna Smith Martin Westhead David Henty and Robert Davey. 2001. Java Grande benchmark suite. https:\/\/www.epcc.ed.ac.uk\/research\/computing\/performance-characterisation-and-benchmarking\/java-grande-benchmark-suite"},{"volume-title":"Proc. of the 17th annual Intl. conference on Supercomputing (ICS \u201903)","author":"Ca\u015fcaval Calin","key":"e_1_3_2_1_20_1","unstructured":"Calin Ca\u015fcaval and David A. Padua. 2003. Estimating cache misses and locality using stack distances. In Proc. of the 17th annual Intl. conference on Supercomputing (ICS \u201903). ACM."},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/2712386.2712404"},{"key":"e_1_3_2_1_22_1","unstructured":"Oracle Corporation. 2007. JVMTI Tool Interface Online Document. https:\/\/docs.oracle.com\/javase\/8\/docs\/platform\/jvmti\/jvmti.html"},{"key":"e_1_3_2_1_23_1","unstructured":"Oracle Corporation. 2018. All-in-One Java Troubleshooting Tool. https:\/\/visualvm.github.io"},{"key":"e_1_3_2_1_24_1","unstructured":"Oracle Corporation. 2019. Oracle HotSpot JVM. https:\/\/openjdk.java.net\/groups\/hotspot\/"},{"key":"e_1_3_2_1_25_1","unstructured":"Standard Performance Evaluation Corporation. 2008. SPECjvm2008 benchmark suite. https:\/\/www.spec.org\/jvm2008"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2009.13"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814270.2814290"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/2950290.2950360"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781159"},{"key":"e_1_3_2_1_30_1","unstructured":"NASA Advanced Supercomputing Division. 2018. NAS Parallel Benchmarks. https:\/\/www.nas.nasa.gov\/publications\/npb.html"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/3828.3835"},{"key":"e_1_3_2_1_32_1","unstructured":"Paul J. Drongowski. 2010. Instruction-Based Sampling: A New Performance Analysis Technique for AMD Family 10h Processors."},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1273463.1273480"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"crossref","unstructured":"Bruno Dufour Barbara G. Ryder and Gary Sevitsky. 2008. A scalable technique for characterizing the usage of temporaries in framework-intensive Java applications. ACM SIGSOFT Interna- tional Symposium on the Foundations of Software Engineer- ing (FSE) 59\u201370.","DOI":"10.1145\/1453101.1453111"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/2908080.2908090"},{"key":"e_1_3_2_1_36_1","unstructured":"ej-technologies GmbH.. 2018. THE AWARD-WINNING ALL-IN-ONE JAVA PROFILER. https:\/\/www.ej-technologies.com\/products\/jprofiler\/overview.html"},{"key":"e_1_3_2_1_37_1","volume-title":"Proceedings of the 3rd Virtual Machine Research and Technology Symposium (VM\u201904)","author":"Sweeney Peter F.","year":"2004","unstructured":"Peter F. Sweeney, Matthias Hauswirth, Brendon Cahoon, Perry Cheng, Amer Diwan, David Grove, and Michael Hind. 2004. Using hardware performance monitors to understand the behavior of Java applications. In Proceedings of the 3rd Virtual Machine Research and Technology Symposium (VM\u201904)."},{"key":"e_1_3_2_1_38_1","unstructured":"Apache Software Foundation. 2017. Apache SAMOA: Scalable Advanced Massive Online Analysis. https:\/\/samoa.incubator.apache.org"},{"key":"e_1_3_2_1_39_1","unstructured":"Apache Software Foundation. 2019. Apache Commons Collections. https:\/\/github.com\/apache\/commons-collections"},{"key":"e_1_3_2_1_40_1","unstructured":"Apache Software Foundation. 2020. Druid. https:\/\/github.com\/apache\/druid"},{"key":"e_1_3_2_1_41_1","unstructured":"Eclipse Foundation. 2019. Eclipse Collections. https:\/\/github.com\/eclipse\/eclipse-collections"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1028976.1028999"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/2451116.2451142"},{"key":"e_1_3_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/2694344.2694361"},{"key":"e_1_3_2_1_45_1","unstructured":"YourKit GmbH.. 2018. The Industry Leader in .NET & Java Profiling. https:\/\/www.yourkit.com"},{"volume-title":"Profiling JVM Applications in Production","author":"Goldshtein Sasha","key":"e_1_3_2_1_46_1","unstructured":"Sasha Goldshtein. 2018. Profiling JVM Applications in Production. USENIX Association."},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/1596655.1596684"},{"key":"e_1_3_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/1028976.1028998"},{"key":"e_1_3_2_1_49_1","unstructured":"Rich Hickey. 2019. The Clojure Programming Language. https:\/\/clojure.org"},{"key":"e_1_3_2_1_50_1","unstructured":"Charles Humble. [n. d.]. Twitter Shifting More Code to JVM Citing Performance and Encapsulation As Primary Drivers. https:\/\/www.infoq.com\/articles\/twitter-java-use\/"},{"volume-title":"Intel 64 and IA-32 Architectures Software Developer\u2019s Manual","author":"Intel Corporation","key":"e_1_3_2_1_51_1","unstructured":"Intel Corporation. 2010. Intel 64 and IA-32 Architectures Software Developer\u2019s Manual, Volume 3B: System Programming Guide, Part 2, Number 253669-032."},{"key":"e_1_3_2_1_52_1","unstructured":"Intel Corporation. 2019. Intel VTune Performance Analyzer. https:\/\/software.intel.com\/en-us\/vtune"},{"key":"e_1_3_2_1_53_1","volume-title":"ESEC\/FSE 2013 Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, 268\u2013278","author":"Khanh Nguyen","year":"2013","unstructured":"Nguyen Khanh and Guoqing Xu. 2013. Cachetor: Detecting Cacheable Data to Remove Bloat. ESEC\/FSE 2013 Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, 268\u2013278."},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/279358.279404"},{"key":"e_1_3_2_1_55_1","unstructured":"Renaud Lachaize Baptiste Lepers and Vivien Qu\u00e9ma. 2012. MemProf: A memory profiler for NUMA multicore systems. In USENIX ATC."},{"key":"e_1_3_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133981.1134010"},{"key":"e_1_3_2_1_57_1","doi-asserted-by":"publisher","unstructured":"Bolun Li Pengfei Su Milind Chabbi Shuyin Jiao and Xu Liu. 2023. Reproduction Package for Article \"DJXPerf: Identifying Memory Inefficiencies via Object-Centric Profiling for Java\". https:\/\/doi.org\/10.1145\/3554348 10.1145\/3554348","DOI":"10.1145\/3554348"},{"key":"e_1_3_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510083"},{"key":"e_1_3_2_1_59_1","unstructured":"Linux. 2015. Linux Perf Tool. http:\/\/www.brendangregg.com\/perf.html"},{"key":"e_1_3_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2011.5764685"},{"key":"e_1_3_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISPASS.2013.6557169"},{"key":"e_1_3_2_1_62_1","doi-asserted-by":"crossref","unstructured":"Xu Liu and John Mellor-Crummey. 2014. A Tool to Analyze the Performance of Multithreaded Programs on NUMA Architectures. In PPoPP.","DOI":"10.1145\/2555243.2555271"},{"key":"e_1_3_2_1_63_1","volume-title":"Mellor-Crummey","author":"Liu Xu","year":"2013","unstructured":"Xu Liu and John M. Mellor-Crummey. 2013. A Data-centric Profiler for Parallel Programs. In SC."},{"key":"e_1_3_2_1_64_1","doi-asserted-by":"crossref","unstructured":"Xu Liu Kamal Sharma and John Mellor-Crummey. 2014. ArrayTool: a lightweight profiler to guide array regrouping. In PACT.","DOI":"10.1145\/2628071.2628102"},{"key":"e_1_3_2_1_65_1","doi-asserted-by":"publisher","DOI":"10.1145\/2807591.2807648"},{"key":"e_1_3_2_1_66_1","unstructured":"Lucie Lozinski. [n. d.]. The Uber Engineering Tech Stack Part I: The Foundation. https:\/\/eng.uber.com\/tech-stack-part-one-foundation\/"},{"key":"e_1_3_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/1167473.1167488"},{"key":"e_1_3_2_1_68_1","volume-title":"Object Equality Profiling. ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 313\u2013325","author":"Marinov Darko","year":"2003","unstructured":"Darko Marinov and Robery O\u2019Callahan. 2003. Object Equality Profiling. ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 313\u2013325."},{"volume-title":"Proc. of 2010 IEEE Intl. Symp. on Performance Analysis of Systems Software.","author":"McCurdy Collin","key":"e_1_3_2_1_69_1","unstructured":"Collin McCurdy and Jeffrey S. Vetter. 2010. Memphis: Finding and fixing NUMA-related performance problems on multi-core platforms. In Proc. of 2010 IEEE Intl. Symp. on Performance Analysis of Systems Software."},{"key":"e_1_3_2_1_70_1","volume-title":"Performance Inspector Tools with Instruction Tracing and Per-Thread \/ Function Profiling. Linux Symposium","author":"Milenkovic Milena","year":"2010","unstructured":"Milena Milenkovic, Scott T. Jones, Frank Levine, and Enio Pineda. 2010. Performance Inspector Tools with Instruction Tracing and Per-Thread \/ Function Profiling. Linux Symposium, Volume Two."},{"key":"e_1_3_2_1_71_1","volume-title":"Making Sense of Large Heaps. European Conference on Object-Oriented Programming (ECOOP), 77\u201397","author":"Mitchell Nike","year":"2009","unstructured":"Nike Mitchell, Edith Schonberg, and Gary Sevitsky. 2009. Making Sense of Large Heaps. European Conference on Object-Oriented Programming (ECOOP), 77\u201397."},{"volume-title":"Four trends leading to Java runtime bloat","author":"Mitchell Nick","key":"e_1_3_2_1_72_1","unstructured":"Nick Mitchell, Edith Schonberg, and Gary Sevitsky. 2010. Four trends leading to Java runtime bloat. IEEE Software, 56\u201363."},{"key":"e_1_3_2_1_73_1","doi-asserted-by":"publisher","DOI":"10.1145\/1297027.1297046"},{"volume-title":"Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium.","author":"Mustafa","key":"e_1_3_2_1_74_1","unstructured":"Mustafa M.Tikir and Jeffrey K.Hollingsworth. 2005. NUMA-Aware Java Heaps for Server Applications. Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium."},{"key":"e_1_3_2_1_75_1","doi-asserted-by":"publisher","DOI":"10.5555\/2486788.2486862"},{"key":"e_1_3_2_1_76_1","unstructured":"Andrei Pangin. 2018. Async-profiler. https:\/\/github.com\/jvm-profiling-tools\/async-profiler"},{"key":"e_1_3_2_1_77_1","doi-asserted-by":"publisher","DOI":"10.1145\/3426182.3426189"},{"key":"e_1_3_2_1_78_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3314637"},{"key":"e_1_3_2_1_79_1","unstructured":"Bill Pugh Andrey Loskutov and Keith Lea. 2015. FindBugs. http:\/\/findbugs.sourceforge.net"},{"volume-title":"Optimal Placement of Java Objects and Generated Code in a Cell-based CC-NUMA Machine. The 13th annual IEEE International Conference on High Performance Computing","author":"Raghavendra Prakash","key":"e_1_3_2_1_80_1","unstructured":"Prakash Raghavendra and Sandya Mannarsamy. 2006. Optimal Placement of Java Objects and Generated Code in a Cell-based CC-NUMA Machine. The 13th annual IEEE International Conference on High Performance Computing."},{"key":"e_1_3_2_1_81_1","doi-asserted-by":"crossref","unstructured":"Ashay Rane and James Browne. 2012. Enhancing performance optimization of multicore chips and multichip nodes with data structure metrics. In PACT.","DOI":"10.1145\/2370816.2370838"},{"key":"e_1_3_2_1_82_1","unstructured":"Rhuan Rocha. [n. d.]. Why Java is so hot right now. https:\/\/developers.redhat.com\/blog\/2019\/09\/05\/why-java-is-so-hot-right-now\/"},{"key":"e_1_3_2_1_83_1","unstructured":"Rhuan Rocha. 2019. Top 5 Programming Languages in Cloud Enterprise Development. https:\/\/www.scnsoft.com\/blog\/cloud-development-languages"},{"key":"e_1_3_2_1_84_1","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594316"},{"key":"e_1_3_2_1_85_1","doi-asserted-by":"publisher","DOI":"10.1145\/2993236.2993241"},{"key":"e_1_3_2_1_86_1","doi-asserted-by":"publisher","DOI":"10.1145\/3338497"},{"key":"e_1_3_2_1_87_1","doi-asserted-by":"publisher","DOI":"10.1145\/2907294.2907308"},{"key":"e_1_3_2_1_88_1","doi-asserted-by":"publisher","DOI":"10.1145\/3168819"},{"key":"e_1_3_2_1_89_1","unstructured":"Shyam Saladi. 2013. ranklib correlation. https:\/\/github.com\/smsaladi\/ranklib-correlation"},{"key":"e_1_3_2_1_90_1","doi-asserted-by":"publisher","DOI":"10.1145\/1449764.1449775"},{"key":"e_1_3_2_1_91_1","doi-asserted-by":"publisher","DOI":"10.1145\/1190216.1190227"},{"key":"e_1_3_2_1_92_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2017.41"},{"key":"e_1_3_2_1_93_1","doi-asserted-by":"publisher","DOI":"10.1147\/JRD.2011.2147170"},{"key":"e_1_3_2_1_94_1","volume-title":"Pinpointing Performance Inefficiencies in Java. The 27th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Tallinn, Estonia.","author":"Su Pengfei","year":"2019","unstructured":"Pengfei Su, Qingsen Wang, Chabbi Milind, and Xu Liu. 2019. Pinpointing Performance Inefficiencies in Java. The 27th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Tallinn, Estonia."},{"volume-title":"Performance analysis for parallel programs from multicore to petascale. Department of Computer Science","author":"Tallent Nathan R.","key":"e_1_3_2_1_95_1","unstructured":"Nathan R. Tallent. 2010. Performance analysis for parallel programs from multicore to petascale. Department of Computer Science, Rice University."},{"key":"e_1_3_2_1_96_1","unstructured":"Gil Tene and Martin Thompson. 2018. ObjectLayout. https:\/\/github.com\/ObjectLayout\/ObjectLayout"},{"key":"e_1_3_2_1_97_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2019.00056"},{"key":"e_1_3_2_1_98_1","volume-title":"Filipe Manuel, Tatsiana Shpikat, and Andreas Worm.","author":"Wike Jens","year":"2013","unstructured":"Jens Wike, Ayman Abdel Ghany, Filipe Manuel, Tatsiana Shpikat, and Andreas Worm. 2013. cache2k. https:\/\/cache2k.org"},{"key":"e_1_3_2_1_100_1","doi-asserted-by":"publisher","DOI":"10.1145\/2384616.2384690"},{"key":"e_1_3_2_1_101_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542523"},{"key":"e_1_3_2_1_102_1","doi-asserted-by":"publisher","DOI":"10.1145\/1882362.1882448"},{"key":"e_1_3_2_1_103_1","doi-asserted-by":"publisher","DOI":"10.1145\/1806596.1806616"},{"key":"e_1_3_2_1_104_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2017.97"},{"key":"e_1_3_2_1_105_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2012.6227199"},{"key":"e_1_3_2_1_106_1","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2018.2840992"},{"key":"e_1_3_2_1_107_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814270.2814281"},{"key":"e_1_3_2_1_108_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375634.1375648"},{"key":"e_1_3_2_1_109_1","doi-asserted-by":"publisher","DOI":"10.1145\/1552309.1552310"}],"event":{"name":"CGO '23: 21st ACM\/IEEE International Symposium on Code Generation and Optimization","sponsor":["SIGMICRO ACM Special Interest Group on Microarchitectural Research and Processing","SIGPLAN ACM Special Interest Group on Programming Languages","IEEE-CS Computer Society"],"location":"Montr\u00e9al QC Canada","acronym":"CGO '23"},"container-title":["Proceedings of the 21st ACM\/IEEE International Symposium on Code Generation and Optimization"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3579990.3580010","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,9,27]],"date-time":"2024-09-27T14:55:47Z","timestamp":1727448947000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3579990.3580010"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,2,17]]},"references-count":108,"alternative-id":["10.1145\/3579990.3580010","10.1145\/3579990"],"URL":"https:\/\/doi.org\/10.1145\/3579990.3580010","relation":{},"subject":[],"published":{"date-parts":[[2023,2,17]]},"assertion":[{"value":"2023-02-22","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}