{"id":"https://openalex.org/W4414988748","doi":"https://doi.org/10.1145/3763103","title":"Heap-Snapshot Matching and Ordering using CAHPs: A Context-Augmented Heap-Path Representation for Exact and Partial Path Matching using Prefix Trees","display_name":"Heap-Snapshot Matching and Ordering using CAHPs: A Context-Augmented Heap-Path Representation for Exact and Partial Path Matching using Prefix Trees","publication_year":2025,"publication_date":"2025-10-09","ids":{"openalex":"https://openalex.org/W4414988748","doi":"https://doi.org/10.1145/3763103"},"language":"en","primary_location":{"id":"doi:10.1145/3763103","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763103","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://doi.org/10.1145/3763103","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5056386658","display_name":"Matteo Basso","orcid":"https://orcid.org/0000-0002-7219-9077"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":true,"raw_author_name":"Matteo Basso","raw_affiliation_strings":["Universit\u00e0 della Svizzera Italiana (USI), Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera Italiana (USI), Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5043562961","display_name":"Aleksandar Prokopec","orcid":"https://orcid.org/0000-0003-0260-2729"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Aleksandar Prokopec","raw_affiliation_strings":["Oracle Labs, Zurich, Switzerland"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Zurich, Switzerland","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5088744660","display_name":"Andrea Ros\u00e0","orcid":"https://orcid.org/0000-0002-6467-0113"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Andrea Ros\u00e0","raw_affiliation_strings":["Universit\u00e0 della Svizzera Italiana (USI), Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera Italiana (USI), Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5074152163","display_name":"Walter Binder","orcid":"https://orcid.org/0000-0002-2477-2182"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Walter Binder","raw_affiliation_strings":["Universit\u00e0 della Svizzera Italiana (USI), Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera Italiana (USI), Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5056386658"],"corresponding_institution_ids":["https://openalex.org/I57201433"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.15412703,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"9","issue":"OOPSLA2","first_page":"1484","last_page":"1511"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10181","display_name":"Natural Language Processing Techniques","score":0.9975000023841858,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12016","display_name":"Web Data Mining and Analysis","score":0.9968000054359436,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/heap","display_name":"Heap (data structure)","score":0.8046000003814697},{"id":"https://openalex.org/keywords/initialization","display_name":"Initialization","score":0.5465999841690063},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.4440000057220459},{"id":"https://openalex.org/keywords/snapshot","display_name":"Snapshot (computer storage)","score":0.44179999828338623},{"id":"https://openalex.org/keywords/binary-number","display_name":"Binary number","score":0.4293000102043152},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.4065000116825104},{"id":"https://openalex.org/keywords/binary-tree","display_name":"Binary tree","score":0.3061000108718872}],"concepts":[{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.8046000003814697},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7768999934196472},{"id":"https://openalex.org/C114466953","wikidata":"https://www.wikidata.org/wiki/Q6034165","display_name":"Initialization","level":2,"score":0.5465999841690063},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.4440000057220459},{"id":"https://openalex.org/C55282118","wikidata":"https://www.wikidata.org/wiki/Q252683","display_name":"Snapshot (computer storage)","level":2,"score":0.44179999828338623},{"id":"https://openalex.org/C48372109","wikidata":"https://www.wikidata.org/wiki/Q3913","display_name":"Binary number","level":2,"score":0.4293000102043152},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.42559999227523804},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.4065000116825104},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.3693000078201294},{"id":"https://openalex.org/C197855036","wikidata":"https://www.wikidata.org/wiki/Q380172","display_name":"Binary tree","level":2,"score":0.3061000108718872},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.30469998717308044},{"id":"https://openalex.org/C136085584","wikidata":"https://www.wikidata.org/wiki/Q910289","display_name":"Overlay","level":2,"score":0.2782999873161316},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.2732999920845032},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.26660001277923584},{"id":"https://openalex.org/C141603448","wikidata":"https://www.wikidata.org/wiki/Q134830","display_name":"Prefix","level":2,"score":0.2651999890804291},{"id":"https://openalex.org/C3115412","wikidata":"https://www.wikidata.org/wiki/Q1194708","display_name":"Bitmap","level":2,"score":0.26010000705718994},{"id":"https://openalex.org/C2777735758","wikidata":"https://www.wikidata.org/wiki/Q817765","display_name":"Path (computing)","level":2,"score":0.25690001249313354},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.2565999925136566},{"id":"https://openalex.org/C2778257378","wikidata":"https://www.wikidata.org/wiki/Q311430","display_name":"Acacia mearnsii","level":2,"score":0.25589999556541443},{"id":"https://openalex.org/C91154448","wikidata":"https://www.wikidata.org/wiki/Q623818","display_name":"Binary search tree","level":3,"score":0.25110000371932983}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3763103","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763103","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3763103","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763103","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":37,"referenced_works":["https://openalex.org/W1533004102","https://openalex.org/W1587878450","https://openalex.org/W1974272726","https://openalex.org/W2003296078","https://openalex.org/W2042681303","https://openalex.org/W2062414112","https://openalex.org/W2099897767","https://openalex.org/W2116243944","https://openalex.org/W2150760714","https://openalex.org/W2159537329","https://openalex.org/W2160756430","https://openalex.org/W2166091242","https://openalex.org/W2419507445","https://openalex.org/W2533990317","https://openalex.org/W2740483844","https://openalex.org/W2756398255","https://openalex.org/W2895932027","https://openalex.org/W2979463730","https://openalex.org/W3000488335","https://openalex.org/W3004512932","https://openalex.org/W3009401151","https://openalex.org/W3030461153","https://openalex.org/W3138597379","https://openalex.org/W3155705005","https://openalex.org/W4220665001","https://openalex.org/W4220784249","https://openalex.org/W4236519034","https://openalex.org/W4241029635","https://openalex.org/W4312707032","https://openalex.org/W4321495163","https://openalex.org/W4360831839","https://openalex.org/W4380480035","https://openalex.org/W4387793707","https://openalex.org/W4399872366","https://openalex.org/W4407848448","https://openalex.org/W4407848649","https://openalex.org/W6893511267"],"related_works":[],"abstract_inverted_index":{"GraalVM":[0],"Native":[1,28,310],"Image":[2,29],"is":[3,65,124,147,236],"increasingly":[4],"used":[5],"to":[6,31,35,85,136,185,216,229,270,333],"optimize":[7],"the":[8,16,48,53,76,93,102,119,130,137,142,158,168,174,187,202,221,243,264,273,290,293,298,302,313,317,323,350],"startup":[9,59,344],"performance":[10,63],"of":[11,23,47,96,118,167,176,196,204,210],"applications":[12],"that":[13,43,70,212,235,283,329],"run":[14],"on":[15,101,339,347],"Java":[17],"Virtual":[18],"Machine":[19],"(JVM),":[20],"and":[21,25,56,157,180,266,276,341],"particularly":[22],"Function-as-a-Service":[24],"Serverless":[26],"workloads.":[27],"resorts":[30],"Ahead-of-Time":[32],"(AOT)":[33],"compilation":[34],"produce":[36],"a":[37,40,45,182,197,214,227,233],"binary":[38,99,117,132],"from":[39],"JVM":[41],"application":[42],"contains":[44],"snapshot":[46,95,319],"pre-initialized":[49],"heap":[50,77,94,178,206,222,318],"memory,":[51],"reducing":[52],"initialization":[54],"time":[55,345],"hence":[57],"improving":[58],"performance.":[60],"However,":[61],"this":[62,111,146],"improvement":[64],"hindered":[66],"by":[67,89,113],"page":[68,87,336],"faults":[69,88,337],"occur":[71],"when":[72],"accessing":[73],"objects":[74,91,106,128,151,192,258,314],"in":[75,92,104,129,141,193,220,232,263,272,289,297,316],"snapshot.":[78,223],"Related":[79],"work":[80,172],"has":[81],"proposed":[82],"profile-guided":[83],"approaches":[84],"reduce":[86],"reordering":[90,123,312],"an":[97,115,217,281],"optimized":[98,143,267,291],"based":[100],"order":[103],"which":[105],"are":[107,161,249],"first":[108],"accessed,":[109],"obtaining":[110],"information":[112],"profiling":[114],"instrumented":[116,131,265,299],"same":[120,169,244],"application.":[121,199],"This":[122,171],"effective":[125],"only":[126],"if":[127],"can":[133],"be":[134],"matched":[135],"semantically":[138,190,251,256],"equivalent":[139,191,257],"ones":[140],"binary.":[144],"Unfortunately,":[145],"very":[148],"challenging":[149],"because":[150],"do":[152],"not":[153,162],"have":[154,260],"unique":[155,238],"identities":[156],"heap-snapshot":[159],"contents":[160],"persistent":[163],"across":[164,246],"Native-Image":[165,198,352],"builds":[166],"program.":[170],"tackles":[173],"problem":[175],"matching":[177],"snapshots,":[179],"proposes":[181],"novel":[183],"approach":[184,225,282,308,331],"improve":[186],"mapping":[188],"between":[189],"different":[194,247,261],"binaries":[195,248,268],"We":[200,305],"introduce":[201],"concept":[203],"context-augmented":[205],"path":[207,215],"(CAHP)\u2014a":[208],"list":[209],"elements":[211],"describes":[213],"object":[218,231],"stored":[219,315],"Our":[224,326],"associates":[226],"CAHP":[228,245,288,296],"each":[230,286],"way":[234],"as":[237,239],"possible.":[240],"Objects":[241],"with":[242],"considered":[250],"equivalent.":[252],"Moreover,":[253],"since":[254],"some":[255],"may":[259],"CAHPs":[262],"(due":[269],"nondeterminism":[271],"image-build":[274],"process":[275],"other":[277],"factors),":[278],"we":[279],"present":[280],"finds,":[284],"for":[285],"unmatched":[287],"binary,":[292,300],"most":[294],"similar":[295],"associating":[301],"two":[303],"objects.":[304],"integrate":[306],"our":[307,330],"into":[309],"Image,":[311],"more":[320],"efficiently":[321],"using":[322],"improved":[324],"mapping.":[325],"experiments":[327],"show":[328],"leads":[332],"much":[334],"less":[335],"(2.98\u00d7":[338],"average)":[340,348],"considerably":[342],"improves":[343],"(1.98\u00d7":[346],"w.r.t.":[349],"original":[351],"implementation.":[353]},"counts_by_year":[],"updated_date":"2026-03-07T16:01:11.037858","created_date":"2025-10-10T00:00:00"}
