{"id":"https://openalex.org/W2002999142","doi":"https://doi.org/10.1145/2737924.2737954","title":"Improving compiler scalability: optimizing large programs at small price","display_name":"Improving compiler scalability: optimizing large programs at small price","publication_year":2015,"publication_date":"2015-06-03","ids":{"openalex":"https://openalex.org/W2002999142","doi":"https://doi.org/10.1145/2737924.2737954","mag":"2002999142"},"language":"en","primary_location":{"id":"doi:10.1145/2737924.2737954","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2737924.2737954","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"type":"conference-paper","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/A5102742730","display_name":"Sanyam Mehta","orcid":"https://orcid.org/0009-0005-5319-689X"},"institutions":[{"id":"https://openalex.org/I130238516","display_name":"University of Minnesota","ror":"https://ror.org/017zqws13","country_code":"US","type":"education","lineage":["https://openalex.org/I130238516"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Sanyam Mehta","raw_affiliation_strings":["University of Minnesota, USA","University Of Minnesota , USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Minnesota, USA","institution_ids":["https://openalex.org/I130238516"]},{"raw_affiliation_string":"University Of Minnesota , USA","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5052005800","display_name":"Pen-Chung Yew","orcid":"https://orcid.org/0000-0001-9653-8777"},"institutions":[{"id":"https://openalex.org/I130238516","display_name":"University of Minnesota","ror":"https://ror.org/017zqws13","country_code":"US","type":"education","lineage":["https://openalex.org/I130238516"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Pen-Chung Yew","raw_affiliation_strings":["University of Minnesota, USA","University Of Minnesota , USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Minnesota, USA","institution_ids":["https://openalex.org/I130238516"]},{"raw_affiliation_string":"University Of Minnesota , USA","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I130238516"],"apc_list":null,"apc_paid":null,"fwci":1.6328,"has_fulltext":false,"cited_by_count":14,"citation_normalized_percentile":{"value":0.83098867,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"143","last_page":"152"},"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.9998999834060669,"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.9998999834060669,"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.9973000288009644,"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/T10142","display_name":"Formal Methods in Verification","score":0.9950000047683716,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/compiler","display_name":"Compiler","score":0.9227800369262695},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8840042948722839},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6952812671661377},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.6743854284286499},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.6389670372009277},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5735540986061096},{"id":"https://openalex.org/keywords/compiler-correctness","display_name":"Compiler correctness","score":0.4845525324344635},{"id":"https://openalex.org/keywords/loop-optimization","display_name":"Loop optimization","score":0.4783986806869507},{"id":"https://openalex.org/keywords/solver","display_name":"Solver","score":0.4515411853790283},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.44556206464767456},{"id":"https://openalex.org/keywords/interprocedural-optimization","display_name":"Interprocedural optimization","score":0.4140462279319763},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.1423736810684204}],"concepts":[{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.9227800369262695},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8840042948722839},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6952812671661377},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.6743854284286499},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.6389670372009277},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5735540986061096},{"id":"https://openalex.org/C68366613","wikidata":"https://www.wikidata.org/wiki/Q5156378","display_name":"Compiler correctness","level":3,"score":0.4845525324344635},{"id":"https://openalex.org/C29331672","wikidata":"https://www.wikidata.org/wiki/Q3354468","display_name":"Loop optimization","level":4,"score":0.4783986806869507},{"id":"https://openalex.org/C2778770139","wikidata":"https://www.wikidata.org/wiki/Q1966904","display_name":"Solver","level":2,"score":0.4515411853790283},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.44556206464767456},{"id":"https://openalex.org/C111564260","wikidata":"https://www.wikidata.org/wiki/Q4288856","display_name":"Interprocedural optimization","level":5,"score":0.4140462279319763},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.1423736810684204}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2737924.2737954","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2737924.2737954","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":36,"referenced_works":["https://openalex.org/W102700780","https://openalex.org/W1524877046","https://openalex.org/W1558370006","https://openalex.org/W1585509108","https://openalex.org/W1975964164","https://openalex.org/W2007962166","https://openalex.org/W2009725282","https://openalex.org/W2025278624","https://openalex.org/W2028067303","https://openalex.org/W2034761517","https://openalex.org/W2037690395","https://openalex.org/W2047738780","https://openalex.org/W2072751097","https://openalex.org/W2074743336","https://openalex.org/W2078113878","https://openalex.org/W2079235644","https://openalex.org/W2080422774","https://openalex.org/W2097699872","https://openalex.org/W2102976251","https://openalex.org/W2112482891","https://openalex.org/W2135736783","https://openalex.org/W2141280299","https://openalex.org/W2144344516","https://openalex.org/W2145625133","https://openalex.org/W2155488254","https://openalex.org/W2163532955","https://openalex.org/W2164890169","https://openalex.org/W2171262795","https://openalex.org/W2172073571","https://openalex.org/W2340604309","https://openalex.org/W2519113851","https://openalex.org/W2561675875","https://openalex.org/W4210721069","https://openalex.org/W4295539146","https://openalex.org/W6676870935","https://openalex.org/W6726519742"],"related_works":["https://openalex.org/W4246454774","https://openalex.org/W2083681681","https://openalex.org/W4220800565","https://openalex.org/W1597127505","https://openalex.org/W1488300410","https://openalex.org/W2053033210","https://openalex.org/W2169584677","https://openalex.org/W4232954277","https://openalex.org/W2577630842","https://openalex.org/W2749133591"],"abstract_inverted_index":{"Compiler":[0],"scalability":[1,82],"is":[2,28,246],"a":[3,46,51,110,135,140,143,209],"well":[4],"known":[5],"problem:":[6],"reasoning":[7],"about":[8],"the":[9,48,73,105,114,118,128,151,156,171,180,211,226,230,240,244,253],"application":[10],"of":[11,67,91,94,100,121,137,148,188,229],"useful":[12],"optimizations":[13],"over":[14,194,225],"large":[15,98],"program":[16,106,141,181,184],"scopes":[17],"consumes":[18],"too":[19],"much":[20],"time":[21,214],"and":[22,102,123,175,183,190,215,222],"memory":[23,216],"during":[24],"compilation.":[25],"This":[26,146],"problem":[27,83,115],"exacerbated":[29],"in":[30,84,104,139,170,204,213],"polyhedral":[31,52,85,173],"compilers":[32],"that":[33,50,64,177],"use":[34],"powerful":[35],"yet":[36],"costly":[37],"integer":[38],"programming":[39],"algorithms":[40],"to":[41,55,57,113,155,201,239,252,257],"compose":[42],"loop":[43,68,258],"optimizations.":[44,165],"As":[45,208],"result,":[47,210],"benefits":[49],"compiler":[53,174,242],"has":[54],"offer":[56],"programs":[58],"such":[59],"as":[60,125],"real":[61,206],"scientific":[62],"applications":[63],"contain":[65],"sequences":[66],"nests,":[69],"remain":[70],"impractical":[71],"for":[72,162,218],"common":[74],"users.":[75],"In":[76],"this":[77,81,132],"work,":[78],"we":[79],"address":[80],"compilers.":[86],"We":[87,108,130,166],"identify":[88],"three":[89],"causes":[90],"unscalability,":[92],"each":[93],"which":[95],"stems":[96],"from":[97,199],"number":[99,120],"statements":[101,122,138,182],"dependences":[103,124,185],"scope.":[107],"propose":[109],"one-shot":[111],"solution":[112],"by":[116,127,133,142,186],"reducing":[117],"effective":[119],"seen":[126],"compiler.":[129,232],"achieve":[131],"representing":[134],"sequence":[136],"single":[144],"super-statement.":[145],"set":[147],"super-statements":[149],"exposes":[150],"minimum":[152],"sufficient":[153],"constraints":[154],"Integer":[157],"Linear":[158],"Programming":[159],"(ILP)":[160],"solver":[161],"finding":[163],"correct":[164],"implement":[167],"our":[168],"approach":[169,256],"PLuTo":[172,231],"find":[176],"it":[178],"condenses":[179],"factors":[187],"4.7x":[189],"6.4x,":[191],"respectively,":[192,224],"averaged":[193],"9":[195],"hot":[196],"regions":[197],"(ranging":[198],"48":[200],"121":[202],"statements)":[203],"5":[205],"applications.":[207],"improvements":[212],"requirement":[217],"compilation":[219],"are":[220,237],"268x":[221],"20x,":[223],"latest":[227],"version":[228],"The":[233],"final":[234],"compile":[235],"times":[236],"comparable":[238],"Intel":[241],"while":[243],"performance":[245],"1.92x":[247],"better":[248],"on":[249],"average":[250],"due":[251],"latter\u2019s":[254],"conservative":[255],"optimization.":[259]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":2},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":4}],"updated_date":"2026-07-30T17:31:21.811387","created_date":"2025-10-10T00:00:00"}
