{"id":"https://openalex.org/W2107428139","doi":"https://doi.org/10.1145/1669112.1669123","title":"Tree register allocation","display_name":"Tree register allocation","publication_year":2009,"publication_date":"2009-12-12","ids":{"openalex":"https://openalex.org/W2107428139","doi":"https://doi.org/10.1145/1669112.1669123","mag":"2107428139"},"language":"en","primary_location":{"id":"doi:10.1145/1669112.1669123","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1669112.1669123","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture","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/A5023962594","display_name":"Hongbo Rong","orcid":"https://orcid.org/0000-0002-3275-7791"},"institutions":[{"id":"https://openalex.org/I4210105678","display_name":"Microsoft (Finland)","ror":"https://ror.org/01nehjf29","country_code":"FI","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210105678"]}],"countries":["FI"],"is_corresponding":true,"raw_author_name":"Hongbo Rong","raw_affiliation_strings":["Microsoft Corporation"],"affiliations":[{"raw_affiliation_string":"Microsoft Corporation","institution_ids":["https://openalex.org/I4210105678"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5023962594"],"corresponding_institution_ids":["https://openalex.org/I4210105678"],"apc_list":null,"apc_paid":null,"fwci":1.0553,"has_fulltext":false,"cited_by_count":11,"citation_normalized_percentile":{"value":0.78164776,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"67","last_page":"77"},"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.9961000084877014,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9944999814033508,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/register-allocation","display_name":"Register allocation","score":0.9135822057723999},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.792669951915741},{"id":"https://openalex.org/keywords/dataflow","display_name":"Dataflow","score":0.5999329090118408},{"id":"https://openalex.org/keywords/tree","display_name":"Tree (set theory)","score":0.5451769232749939},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.5163570642471313},{"id":"https://openalex.org/keywords/flexibility","display_name":"Flexibility (engineering)","score":0.4719107449054718},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.44233208894729614},{"id":"https://openalex.org/keywords/register","display_name":"Register (sociolinguistics)","score":0.41593825817108154},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.4150007367134094},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.3746660351753235},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3573372960090637},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.20084944367408752},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.1393754482269287}],"concepts":[{"id":"https://openalex.org/C128916667","wikidata":"https://www.wikidata.org/wiki/Q1343660","display_name":"Register allocation","level":3,"score":0.9135822057723999},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.792669951915741},{"id":"https://openalex.org/C96324660","wikidata":"https://www.wikidata.org/wiki/Q205446","display_name":"Dataflow","level":2,"score":0.5999329090118408},{"id":"https://openalex.org/C113174947","wikidata":"https://www.wikidata.org/wiki/Q2859736","display_name":"Tree (set theory)","level":2,"score":0.5451769232749939},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.5163570642471313},{"id":"https://openalex.org/C2780598303","wikidata":"https://www.wikidata.org/wiki/Q65921492","display_name":"Flexibility (engineering)","level":2,"score":0.4719107449054718},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.44233208894729614},{"id":"https://openalex.org/C2779235478","wikidata":"https://www.wikidata.org/wiki/Q286576","display_name":"Register (sociolinguistics)","level":2,"score":0.41593825817108154},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.4150007367134094},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.3746660351753235},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3573372960090637},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.20084944367408752},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.1393754482269287},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0},{"id":"https://openalex.org/C105795698","wikidata":"https://www.wikidata.org/wiki/Q12483","display_name":"Statistics","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1669112.1669123","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1669112.1669123","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture","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":33,"referenced_works":["https://openalex.org/W1498962072","https://openalex.org/W1514885320","https://openalex.org/W1551330847","https://openalex.org/W1564196930","https://openalex.org/W1607259217","https://openalex.org/W1843198456","https://openalex.org/W1978452004","https://openalex.org/W1979984064","https://openalex.org/W1982205631","https://openalex.org/W1987139164","https://openalex.org/W1987225815","https://openalex.org/W1991477862","https://openalex.org/W1996473026","https://openalex.org/W2003804316","https://openalex.org/W2008764415","https://openalex.org/W2023200270","https://openalex.org/W2024598204","https://openalex.org/W2030967020","https://openalex.org/W2031533676","https://openalex.org/W2088579057","https://openalex.org/W2100139716","https://openalex.org/W2113578526","https://openalex.org/W2116461111","https://openalex.org/W2140191557","https://openalex.org/W2141582038","https://openalex.org/W2155935413","https://openalex.org/W2158120297","https://openalex.org/W2165370568","https://openalex.org/W2471437096","https://openalex.org/W3007762642","https://openalex.org/W3022528408","https://openalex.org/W4247191098","https://openalex.org/W4256238177"],"related_works":["https://openalex.org/W3013232686","https://openalex.org/W2159458033","https://openalex.org/W2091058226","https://openalex.org/W1844463772","https://openalex.org/W2010347046","https://openalex.org/W1581500142","https://openalex.org/W1490610520","https://openalex.org/W2151326751","https://openalex.org/W2025840053","https://openalex.org/W1515086489"],"abstract_inverted_index":{"This":[0,45,92],"paper":[1],"presents":[2],"tree":[3,23],"register":[4,58,139],"allocation,":[5,140],"which":[6,28],"maps":[7],"the":[8,11,42,90,98,127],"lifetimes":[9],"of":[10,19,121],"variables":[12],"in":[13,24,89,97],"a":[14,17,25,70,108],"program":[15],"into":[16],"set":[18],"trees,":[20,122],"colors":[21],"each":[22],"greedy":[26],"style,":[27],"is":[29,33,107],"optimal":[30],"when":[31],"there":[32],"no":[34],"spilling,":[35],"and":[36,40,48,56,64,68,126,141],"connects":[37],"dataflow":[38],"between":[39],"within":[41],"trees":[43],"afterward.":[44],"approach":[46,93],"generalizes":[47],"subsumes":[49],"as":[50],"special":[51,119],"cases":[52],"SSA-based,":[53],"linear":[54,150],"scan,":[55],"local":[57],"allocation.":[59],"It":[60],"keeps":[61],"their":[62],"simplicity":[63],"low":[65],"throughput":[66],"cost,":[67],"exposes":[69],"wide":[71],"solution":[72],"space":[73],"beyond":[74],"them.":[75],"Its":[76],"flexibility":[77],"enables":[78],"control":[79],"flow":[80],"structure":[81],"and/or":[82],"profile":[83],"information":[84],"to":[85,133,137,145],"be":[86,134],"better":[87,147],"reflected":[88],"trees.":[91],"has":[94],"been":[95],"prototyped":[96],"Phoenix":[99],"production":[100],"compiler":[101],"framework.":[102],"Preliminary":[103],"experiments":[104],"suggest":[105],"this":[106],"promising":[109],"direction":[110],"with":[111],"great":[112],"potential.":[113],"Register":[114],"allocation":[115],"based":[116],"on":[117],"two":[118],"kinds":[120],"extended":[123],"basic":[124],"blocks":[125],"maximal":[128],"spanning":[129],"tree,":[130],"are":[131],"found":[132],"competitive":[135],"alternatives":[136],"SSA-based":[138],"they":[142],"all":[143],"tend":[144],"generate":[146],"code":[148],"than":[149],"scan.":[151]},"counts_by_year":[{"year":2020,"cited_by_count":1},{"year":2018,"cited_by_count":3},{"year":2015,"cited_by_count":1},{"year":2013,"cited_by_count":2},{"year":2012,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
