{"id":"https://openalex.org/W2793681106","doi":"https://doi.org/10.1145/3168811","title":"Dominance-based duplication simulation (DBDS): code duplication to enable compiler optimizations","display_name":"Dominance-based duplication simulation (DBDS): code duplication to enable compiler optimizations","publication_year":2018,"publication_date":"2018-02-24","ids":{"openalex":"https://openalex.org/W2793681106","doi":"https://doi.org/10.1145/3168811","mag":"2793681106"},"language":"en","primary_location":{"id":"doi:10.1145/3168811","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3168811","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2018 International Symposium on Code Generation and Optimization","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5069165515","display_name":"David Leopoldseder","orcid":"https://orcid.org/0000-0002-9361-6431"},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"David Leopoldseder","raw_affiliation_strings":["JKU Linz, Austria"],"affiliations":[{"raw_affiliation_string":"JKU Linz, Austria","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5110976927","display_name":"Lukas Stadler","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Lukas Stadler","raw_affiliation_strings":["Oracle Labs, Austria"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Austria","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5078436726","display_name":"Thomas W\u00fcrthinger","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Thomas W\u00fcrthinger","raw_affiliation_strings":["Oracle Labs, Switzerland"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Switzerland","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5061471127","display_name":"Josef Eisl","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Josef Eisl","raw_affiliation_strings":["JKU Linz, Austria"],"affiliations":[{"raw_affiliation_string":"JKU Linz, Austria","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5063810973","display_name":"Doug Simon","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Doug Simon","raw_affiliation_strings":["Oracle Labs, Switzerland"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Switzerland","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5011678778","display_name":"Hanspeter M\u00f6ssenb\u00f6ck","orcid":"https://orcid.org/0000-0001-7706-7308"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Hanspeter M\u00f6ssenb\u00f6ck","raw_affiliation_strings":["JKU Linz, Austria"],"affiliations":[{"raw_affiliation_string":"JKU Linz, Austria","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":6,"corresponding_author_ids":["https://openalex.org/A5069165515"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":4.5444,"has_fulltext":false,"cited_by_count":36,"citation_normalized_percentile":{"value":0.95331215,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"126","last_page":"137"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10126","display_name":"Logic, programming, and type systems","score":0.9977999925613403,"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/T11424","display_name":"Security and Verification in Computing","score":0.9959999918937683,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8219408988952637},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7888280749320984},{"id":"https://openalex.org/keywords/dead-code-elimination","display_name":"Dead code elimination","score":0.6300289630889893},{"id":"https://openalex.org/keywords/merge","display_name":"Merge (version control)","score":0.6011271476745605},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.593871533870697},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.5382395386695862},{"id":"https://openalex.org/keywords/program-optimization","display_name":"Program optimization","score":0.538001537322998},{"id":"https://openalex.org/keywords/data-flow-analysis","display_name":"Data-flow analysis","score":0.4856606721878052},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.47903743386268616},{"id":"https://openalex.org/keywords/control-flow-graph","display_name":"Control flow graph","score":0.4568122625350952},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4384179413318634},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.4235106408596039},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.26319587230682373},{"id":"https://openalex.org/keywords/data-flow-diagram","display_name":"Data flow diagram","score":0.2225712537765503},{"id":"https://openalex.org/keywords/redundant-code","display_name":"Redundant code","score":0.21122291684150696},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.162081778049469},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.08307379484176636}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8219408988952637},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7888280749320984},{"id":"https://openalex.org/C2144512","wikidata":"https://www.wikidata.org/wiki/Q1143090","display_name":"Dead code elimination","level":5,"score":0.6300289630889893},{"id":"https://openalex.org/C197129107","wikidata":"https://www.wikidata.org/wiki/Q1921621","display_name":"Merge (version control)","level":2,"score":0.6011271476745605},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.593871533870697},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.5382395386695862},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.538001537322998},{"id":"https://openalex.org/C88468194","wikidata":"https://www.wikidata.org/wiki/Q1172416","display_name":"Data-flow analysis","level":3,"score":0.4856606721878052},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.47903743386268616},{"id":"https://openalex.org/C27458966","wikidata":"https://www.wikidata.org/wiki/Q1187693","display_name":"Control flow graph","level":2,"score":0.4568122625350952},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4384179413318634},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.4235106408596039},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.26319587230682373},{"id":"https://openalex.org/C489000","wikidata":"https://www.wikidata.org/wiki/Q747385","display_name":"Data flow diagram","level":2,"score":0.2225712537765503},{"id":"https://openalex.org/C151578736","wikidata":"https://www.wikidata.org/wiki/Q1251793","display_name":"Redundant code","level":4,"score":0.21122291684150696},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.162081778049469},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.08307379484176636},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3168811","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3168811","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2018 International Symposium on Code Generation and Optimization","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":30,"referenced_works":["https://openalex.org/W12207660","https://openalex.org/W25845550","https://openalex.org/W1597122400","https://openalex.org/W1598886868","https://openalex.org/W1976811558","https://openalex.org/W1980503095","https://openalex.org/W1982205631","https://openalex.org/W1983166063","https://openalex.org/W1991779584","https://openalex.org/W2023274008","https://openalex.org/W2025037675","https://openalex.org/W2044638745","https://openalex.org/W2049890071","https://openalex.org/W2059503332","https://openalex.org/W2061595191","https://openalex.org/W2075675735","https://openalex.org/W2091228796","https://openalex.org/W2093760065","https://openalex.org/W2094025586","https://openalex.org/W2129192659","https://openalex.org/W2152885483","https://openalex.org/W2160756430","https://openalex.org/W2164296674","https://openalex.org/W2166091242","https://openalex.org/W2572804059","https://openalex.org/W2621447895","https://openalex.org/W2731881248","https://openalex.org/W2761493120","https://openalex.org/W2911733618","https://openalex.org/W4248352782"],"related_works":["https://openalex.org/W2151163382","https://openalex.org/W1999711970","https://openalex.org/W3016804885","https://openalex.org/W2011536294","https://openalex.org/W1499096040","https://openalex.org/W1565360684","https://openalex.org/W2004337747","https://openalex.org/W2152913781","https://openalex.org/W2606660759","https://openalex.org/W1536215324"],"abstract_inverted_index":{"Compilers":[0],"perform":[1],"a":[2,25,58,68,104],"variety":[3],"of":[4,11,24],"advanced":[5],"optimizations":[6,17],"to":[7,47,89,100,109],"improve":[8],"the":[9,12,21],"quality":[10],"generated":[13],"machine":[14],"code.":[15],"However,":[16,50],"that":[18,61],"depend":[19],"on":[20,70],"data":[22],"flow":[23,80],"program":[26],"are":[27],"often":[28],"limited":[29],"by":[30,39,55],"control-flow":[31],"merges.":[32],"Code":[33],"duplication":[34,56,87,105],"can":[35],"solve":[36],"this":[37],"problem":[38],"hoisting,":[40],"i.e.":[41],"duplicating,":[42],"instructions":[43,75],"from":[44],"merge":[45,81],"blocks":[46],"their":[48],"predecessors.":[49],"finding":[51],"optimization":[52],"opportunities":[53],"enabled":[54],"is":[57,82,106],"non-trivial":[59],"task":[60],"requires":[62],"compile-time":[63],"intensive":[64],"analysis.":[65],"This":[66],"imposes":[67],"challenge":[69],"modern":[71],"(just-in-time)":[72],"compilers:":[73],"Duplicating":[74],"tentatively":[76],"at":[77],"every":[78],"control":[79],"not":[83],"feasible":[84],"because":[85],"excessive":[86],"leads":[88],"uncontrolled":[90],"code":[91],"growth":[92],"and":[93],"compile":[94],"time":[95],"increases.":[96],"Therefore,":[97],"compilers":[98],"need":[99],"find":[101],"out":[102],"whether":[103],"beneficial":[107],"enough":[108],"be":[110],"performed.":[111]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":7},{"year":2022,"cited_by_count":4},{"year":2021,"cited_by_count":4},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":5},{"year":2018,"cited_by_count":5}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
