{"id":"https://openalex.org/W4321371008","doi":"https://doi.org/10.22152/programming-journal.org/2023/7/9","title":"Control Flow Duplication for Columnar Arrays in a Dynamic Compiler","display_name":"Control Flow Duplication for Columnar Arrays in a Dynamic Compiler","publication_year":2023,"publication_date":"2023-02-15","ids":{"openalex":"https://openalex.org/W4321371008","doi":"https://doi.org/10.22152/programming-journal.org/2023/7/9"},"language":"en","primary_location":{"id":"doi:10.22152/programming-journal.org/2023/7/9","is_oa":true,"landing_page_url":"http://dx.doi.org/10.22152/programming-journal.org/2023/7/9","pdf_url":"https://arxiv.org/pdf/2302.10098v1","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://arxiv.org/pdf/2302.10098v1","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5053684315","display_name":"Sebastian Kloibhofer","orcid":"https://orcid.org/0000-0001-5630-2372"},"institutions":[{"id":"https://openalex.org/I121883995","display_name":"Johannes Kepler University of Linz","ror":"https://ror.org/052r2xn60","country_code":"AT","type":"education","lineage":["https://openalex.org/I121883995"]}],"countries":["AT"],"is_corresponding":true,"raw_author_name":"Sebastian Kloibhofer","raw_affiliation_strings":["Johannes Kepler University Linz, Austria"],"affiliations":[{"raw_affiliation_string":"Johannes Kepler University Linz, Austria","institution_ids":["https://openalex.org/I121883995"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5013270286","display_name":"Lukas Makor","orcid":"https://orcid.org/0000-0003-4683-9824"},"institutions":[{"id":"https://openalex.org/I121883995","display_name":"Johannes Kepler University of Linz","ror":"https://ror.org/052r2xn60","country_code":"AT","type":"education","lineage":["https://openalex.org/I121883995"]}],"countries":["AT"],"is_corresponding":false,"raw_author_name":"Lukas Makor","raw_affiliation_strings":["Johannes Kepler University Linz, Austria"],"affiliations":[{"raw_affiliation_string":"Johannes Kepler University Linz, Austria","institution_ids":["https://openalex.org/I121883995"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5069165515","display_name":"David Leopoldseder","orcid":"https://orcid.org/0000-0002-9361-6431"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"David Leopoldseder","raw_affiliation_strings":["Oracle Labs, Austria"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Austria","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5025674223","display_name":"Daniele Bonetta","orcid":"https://orcid.org/0000-0001-7633-4224"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Daniele Bonetta","raw_affiliation_strings":["Oracle Labs, Netherlands"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Netherlands","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5112497464","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":"last","author":{"id":"https://openalex.org/A5011678778","display_name":"Hanspeter M\u00f6ssenb\u00f6ck","orcid":"https://orcid.org/0000-0001-7706-7308"},"institutions":[{"id":"https://openalex.org/I121883995","display_name":"Johannes Kepler University of Linz","ror":"https://ror.org/052r2xn60","country_code":"AT","type":"education","lineage":["https://openalex.org/I121883995"]}],"countries":["AT"],"is_corresponding":false,"raw_author_name":"Hanspeter M\u00f6ssenb\u00f6ck","raw_affiliation_strings":["Johannes Kepler University Linz, Austria"],"affiliations":[{"raw_affiliation_string":"Johannes Kepler University Linz, Austria","institution_ids":["https://openalex.org/I121883995"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":6,"corresponding_author_ids":["https://openalex.org/A5053684315"],"corresponding_institution_ids":["https://openalex.org/I121883995"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":{"value":0.01504008,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"7","issue":"3","first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10317","display_name":"Advanced Database Systems and Queries","score":0.9955999851226807,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10317","display_name":"Advanced Database Systems and Queries","score":0.9955999851226807,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.9922000169754028,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T11106","display_name":"Data Management and Algorithms","score":0.9916999936103821,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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.8665587902069092},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.8422020673751831},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.7745670676231384},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.5245780348777771},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.4952622950077057},{"id":"https://openalex.org/keywords/adaptive-mesh-refinement","display_name":"Adaptive mesh refinement","score":0.43415015935897827},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.43295544385910034},{"id":"https://openalex.org/keywords/transformation","display_name":"Transformation (genetics)","score":0.43077701330184937},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3936103582382202},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.3295309543609619},{"id":"https://openalex.org/keywords/computational-science","display_name":"Computational science","score":0.25075095891952515}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8665587902069092},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.8422020673751831},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.7745670676231384},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.5245780348777771},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.4952622950077057},{"id":"https://openalex.org/C131053463","wikidata":"https://www.wikidata.org/wiki/Q4680751","display_name":"Adaptive mesh refinement","level":2,"score":0.43415015935897827},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.43295544385910034},{"id":"https://openalex.org/C204241405","wikidata":"https://www.wikidata.org/wiki/Q461499","display_name":"Transformation (genetics)","level":3,"score":0.43077701330184937},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3936103582382202},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.3295309543609619},{"id":"https://openalex.org/C459310","wikidata":"https://www.wikidata.org/wiki/Q117801","display_name":"Computational science","level":1,"score":0.25075095891952515},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.22152/programming-journal.org/2023/7/9","is_oa":true,"landing_page_url":"http://dx.doi.org/10.22152/programming-journal.org/2023/7/9","pdf_url":"https://arxiv.org/pdf/2302.10098v1","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:2302.10098","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2302.10098","pdf_url":"https://arxiv.org/pdf/2302.10098","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"}],"best_oa_location":{"id":"doi:10.22152/programming-journal.org/2023/7/9","is_oa":true,"landing_page_url":"http://dx.doi.org/10.22152/programming-journal.org/2023/7/9","pdf_url":"https://arxiv.org/pdf/2302.10098v1","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":false},"content_urls":{"pdf":"https://content.openalex.org/works/W4321371008.pdf"},"referenced_works_count":63,"referenced_works":["https://openalex.org/W70887012","https://openalex.org/W124832240","https://openalex.org/W200374796","https://openalex.org/W1491178396","https://openalex.org/W1509841269","https://openalex.org/W1607259217","https://openalex.org/W1760807336","https://openalex.org/W1791587242","https://openalex.org/W1965245408","https://openalex.org/W1976811558","https://openalex.org/W1982205631","https://openalex.org/W1986466480","https://openalex.org/W1991779584","https://openalex.org/W2049890071","https://openalex.org/W2054253211","https://openalex.org/W2061595191","https://openalex.org/W2069902027","https://openalex.org/W2070566991","https://openalex.org/W2077934095","https://openalex.org/W2085601491","https://openalex.org/W2091228796","https://openalex.org/W2094269821","https://openalex.org/W2104242181","https://openalex.org/W2110629752","https://openalex.org/W2111379929","https://openalex.org/W2117546628","https://openalex.org/W2118823870","https://openalex.org/W2123686039","https://openalex.org/W2124851765","https://openalex.org/W2127637733","https://openalex.org/W2130235146","https://openalex.org/W2142417521","https://openalex.org/W2144839430","https://openalex.org/W2144921123","https://openalex.org/W2156000708","https://openalex.org/W2159558457","https://openalex.org/W2171072418","https://openalex.org/W2349672813","https://openalex.org/W2375163402","https://openalex.org/W2439390339","https://openalex.org/W2540882222","https://openalex.org/W2558012959","https://openalex.org/W2605843372","https://openalex.org/W2731881248","https://openalex.org/W2775232038","https://openalex.org/W2793681106","https://openalex.org/W2889110163","https://openalex.org/W2898297547","https://openalex.org/W2964651465","https://openalex.org/W3004313105","https://openalex.org/W3140574618","https://openalex.org/W3150241674","https://openalex.org/W3160056598","https://openalex.org/W3202359813","https://openalex.org/W3207712758","https://openalex.org/W4210272490","https://openalex.org/W4226461508","https://openalex.org/W4236519034","https://openalex.org/W4241029635","https://openalex.org/W4244075123","https://openalex.org/W4287901611","https://openalex.org/W4312802353","https://openalex.org/W6950594935"],"related_works":["https://openalex.org/W2371266106","https://openalex.org/W2117382851","https://openalex.org/W3006505070","https://openalex.org/W2382449560","https://openalex.org/W2767298477","https://openalex.org/W2110432562","https://openalex.org/W2064670891","https://openalex.org/W2117864619","https://openalex.org/W2744762358","https://openalex.org/W2025344"],"abstract_inverted_index":{"Columnar":[0],"databases":[1],"are":[2,46],"an":[3,72,195],"established":[4],"way":[5],"to":[6,34,51,111,114,118,125,162,166],"speed":[7],"up":[8],"online":[9],"analytical":[10],"processing":[11,16],"(OLAP)":[12],"queries.":[13],"Nowadays,":[14],"data":[15,38,54,104],"(e.g.,":[17],"storage,":[18],"visualization,":[19],"and":[20,49,121,157],"analytics)":[21],"is":[22,32,117],"often":[23],"performed":[24],"at":[25,204],"the":[26,83,109,136],"programming":[27,57],"language":[28,42],"level,":[29],"hence":[30],"it":[31],"desirable":[33],"also":[35],"adopt":[36],"columnar":[37,53,80,115,143,155,167,177],"structures":[39],"for":[40,74,175,197],"common":[41],"runtimes.":[43],"While":[44],"there":[45],"frameworks,":[47],"libraries,":[48],"APIs":[50],"enable":[52],"stores":[55],"in":[56,82,135,160],"languages,":[58],"their":[59],"integration":[60],"into":[61,79],"applications":[62],"typically":[63],"requires":[64],"developer":[65],"interference.":[66],"In":[67,127],"prior":[68],"work,":[69],"researchers":[70],"implemented":[71],"approach":[73,89,174,193],"*automated*":[75],"transformation":[76],"of":[77,182],"arrays":[78,81,116,156,178,180],"GraalVM":[84,137],"JavaScript":[85,198],"runtime.":[86],"However,":[87],"this":[88,128],"suffers":[90],"from":[91,179],"performance":[92],"issues":[93],"on":[94,100,142],"smaller":[95],"workloads":[96],"as":[97,99],"well":[98],"more":[101],"complex":[102,183],"nested":[103],"structures.":[105],"We":[106,190],"find":[107],"that":[108,139,152],"key":[110],"optimizing":[112],"accesses":[113,165],"identify":[119,150],"queries":[120,141],"apply":[122],"specific":[123],"optimizations":[124,134],"them.":[126],"paper,":[129],"we":[130,149,170],"describe":[131,171],"novel":[132],"compiler":[133],"Compiler":[138],"optimize":[140,164],"arrays.":[144,168],"At":[145],"JIT":[146],"compile":[147],"time,":[148],"loops":[151],"access":[153],"potentially":[154],"duplicate":[158],"them":[159],"order":[161],"specifically":[163],"Additionally,":[169],"a":[172],"new":[173],"creating":[176],"consisting":[181],"objects":[184],"by":[185],"performing":[186],"**multi-level":[187],"storage":[188],"transformation**.":[189],"demonstrate":[191],"our":[192],"via":[194],"implementation":[196],"`Date`":[199],"objects.":[200],"[":[201],"full":[202],"abstract":[203],"https://doi.org/10.22152/programming-journal.org/2023/7/9":[205],"]":[206]},"counts_by_year":[],"updated_date":"2026-03-20T23:20:44.827607","created_date":"2025-10-10T00:00:00"}
