{"id":"https://openalex.org/W1883726693","doi":"https://doi.org/10.1007/bfb0026433","title":"A new fast algorithm for optimal register allocation in modulo scheduled loops","display_name":"A new fast algorithm for optimal register allocation in modulo scheduled loops","publication_year":1998,"publication_date":"1998-01-01","ids":{"openalex":"https://openalex.org/W1883726693","doi":"https://doi.org/10.1007/bfb0026433","mag":"1883726693"},"language":"en","primary_location":{"is_oa":true,"landing_page_url":"https://doi.org/10.1007/bfb0026433","pdf_url":"https://link.springer.com/content/pdf/10.1007/BFb0026433.pdf","source":{"id":"https://openalex.org/S106296714","display_name":"Lecture Notes in Computer Science","issn_l":"0302-9743","issn":["1611-3349","0302-9743"],"is_oa":false,"is_in_doaj":false,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319965","https://openalex.org/P4310319900"],"host_organization_lineage_names":["Springer Nature","Springer Science+Business Media"],"type":"book series"},"license":null,"version":"publishedVersion","is_accepted":true,"is_published":true},"type":"book-chapter","type_crossref":"book-chapter","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://link.springer.com/content/pdf/10.1007/BFb0026433.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5083658589","display_name":"Sylvain Lelait","orcid":null},"institutions":[{"id":"https://openalex.org/I145847075","display_name":"TU Wien","ror":"https://ror.org/04d836q62","country_code":"AT","type":"education","lineage":["https://openalex.org/I145847075"]}],"countries":["AT"],"is_corresponding":false,"raw_author_name":"Sylvain Lelait","raw_affiliation_string":"Technische Universit\u00e4t Wien","raw_affiliation_strings":["Technische Universit\u00e4t Wien"]},{"author_position":"middle","author":{"id":"https://openalex.org/A5046024163","display_name":"Guang R. Gao","orcid":"https://orcid.org/0000-0002-5265-7528"},"institutions":[{"id":"https://openalex.org/I86501945","display_name":"University of Delaware","ror":"https://ror.org/01sbq1a82","country_code":"US","type":"education","lineage":["https://openalex.org/I86501945"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Guang R. Gao","raw_affiliation_string":"University of Delaware","raw_affiliation_strings":["University of Delaware"]},{"author_position":"last","author":{"id":"https://openalex.org/A5000166126","display_name":"Christine Eisenbeis","orcid":null},"institutions":[{"id":"https://openalex.org/I1326498283","display_name":"French Institute for Research in Computer Science and Automation","ror":"https://ror.org/02kvxyf05","country_code":"FR","type":"government","lineage":["https://openalex.org/I1326498283"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Christine Eisenbeis","raw_affiliation_string":"INRIA Rocquencourt","raw_affiliation_strings":["INRIA Rocquencourt"]}],"countries_distinct_count":3,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":{"value":5000,"currency":"EUR","value_usd":5392,"provenance":"doaj"},"apc_paid":{"value":5000,"currency":"EUR","value_usd":5392,"provenance":"doaj"},"has_fulltext":true,"fulltext_origin":"pdf","cited_by_count":5,"cited_by_percentile_year":{"min":75,"max":77},"biblio":{"volume":null,"issue":null,"first_page":"204","last_page":"218"},"is_retracted":false,"is_paratext":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Performance Optimization","score":0.9994,"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 Performance Optimization","score":0.9994,"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":"Program Analysis and Verification Techniques","score":0.9989,"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 Software Verification and Control","score":0.9972,"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":[{"keyword":"optimal register allocation","score":0.745},{"keyword":"new fast algorithm","score":0.5056},{"keyword":"loops","score":0.3668},{"keyword":"modulo","score":0.3038}],"concepts":[{"id":"https://openalex.org/C128916667","wikidata":"https://www.wikidata.org/wiki/Q1343660","display_name":"Register allocation","level":3,"score":0.92184865},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.871964},{"id":"https://openalex.org/C54732982","wikidata":"https://www.wikidata.org/wiki/Q1415345","display_name":"Modulo","level":2,"score":0.8313306},{"id":"https://openalex.org/C76970557","wikidata":"https://www.wikidata.org/wiki/Q1869750","display_name":"Loop unrolling","level":3,"score":0.8075225},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6018831},{"id":"https://openalex.org/C184670325","wikidata":"https://www.wikidata.org/wiki/Q512604","display_name":"Loop (graph theory)","level":2,"score":0.57063115},{"id":"https://openalex.org/C2871975","wikidata":"https://www.wikidata.org/wiki/Q187466","display_name":"Processor register","level":4,"score":0.50757754},{"id":"https://openalex.org/C188854837","wikidata":"https://www.wikidata.org/wiki/Q268469","display_name":"Software pipelining","level":3,"score":0.4776936},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.46849403},{"id":"https://openalex.org/C11799548","wikidata":"https://www.wikidata.org/wiki/Q6675847","display_name":"Loop tiling","level":3,"score":0.41869462},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.36997327},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.3366692},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.10745287},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.10635868},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.09787688},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.0746752},{"id":"https://openalex.org/C98986596","wikidata":"https://www.wikidata.org/wiki/Q1143031","display_name":"Semiconductor memory","level":2,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.0},{"id":"https://openalex.org/C153247305","wikidata":"https://www.wikidata.org/wiki/Q835713","display_name":"Memory address","level":3,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"is_oa":true,"landing_page_url":"https://doi.org/10.1007/bfb0026433","pdf_url":"https://link.springer.com/content/pdf/10.1007/BFb0026433.pdf","source":{"id":"https://openalex.org/S106296714","display_name":"Lecture Notes in Computer Science","issn_l":"0302-9743","issn":["1611-3349","0302-9743"],"is_oa":false,"is_in_doaj":false,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319965","https://openalex.org/P4310319900"],"host_organization_lineage_names":["Springer Nature","Springer Science+Business Media"],"type":"book series"},"license":null,"version":"publishedVersion","is_accepted":true,"is_published":true},{"is_oa":true,"landing_page_url":"https://hal.inria.fr/inria-00073352/file/RR-3337.pdf","pdf_url":"https://hal.inria.fr/inria-00073352/file/RR-3337.pdf","source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"French National Centre for Scientific Research","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":["French National Centre for Scientific Research"],"type":"repository"},"license":null,"version":"submittedVersion","is_accepted":false,"is_published":false},{"is_oa":true,"landing_page_url":"https://hal.inria.fr/inria-00073352/document","pdf_url":"https://hal.inria.fr/inria-00073352/document","source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"French National Centre for Scientific Research","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":["French National Centre for Scientific Research"],"type":"repository"},"license":null,"version":"submittedVersion","is_accepted":false,"is_published":false},{"is_oa":true,"landing_page_url":"https://hal.inria.fr/inria-00073352","pdf_url":"https://inria.hal.science/inria-00073352/document","source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"French National Centre for Scientific Research","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":["French National Centre for Scientific Research"],"type":"repository"},"license":null,"version":"submittedVersion","is_accepted":false,"is_published":false}],"best_oa_location":{"is_oa":true,"landing_page_url":"https://doi.org/10.1007/bfb0026433","pdf_url":"https://link.springer.com/content/pdf/10.1007/BFb0026433.pdf","source":{"id":"https://openalex.org/S106296714","display_name":"Lecture Notes in Computer Science","issn_l":"0302-9743","issn":["1611-3349","0302-9743"],"is_oa":false,"is_in_doaj":false,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319965","https://openalex.org/P4310319900"],"host_organization_lineage_names":["Springer Nature","Springer Science+Business Media"],"type":"book series"},"license":null,"version":"publishedVersion","is_accepted":true,"is_published":true},"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.44,"id":"https://metadata.un.org/sdg/9"}],"grants":[],"referenced_works_count":12,"referenced_works":["https://openalex.org/W1883726693","https://openalex.org/W1976147675","https://openalex.org/W2074451741","https://openalex.org/W2074937107","https://openalex.org/W2119773132","https://openalex.org/W2123412205","https://openalex.org/W2132929529","https://openalex.org/W2140712297","https://openalex.org/W3143608323","https://openalex.org/W4249499534","https://openalex.org/W4251249026","https://openalex.org/W4253299461"],"related_works":["https://openalex.org/W2083264194","https://openalex.org/W4248626492","https://openalex.org/W2152533950","https://openalex.org/W2053999332","https://openalex.org/W1883726693","https://openalex.org/W4240874773","https://openalex.org/W2021807611","https://openalex.org/W4252395411","https://openalex.org/W2278840053","https://openalex.org/W4298326190"],"ngrams_url":"https://api.openalex.org/works/W1883726693/ngrams","abstract_inverted_index":{"In":[0],"this":[1],"paper,":[2],"we":[3,63,126],"focus":[4],"on":[5,117],"the":[6,23,32,40,78,131],"register":[7,18,52,90],"allocation":[8,91],"phase":[9],"of":[10,25,35,39,88,114,130],"software":[11],"pipelining.":[12],"We":[13,82,105],"are":[14,46],"interested":[15],"in":[16,109],"optimal":[17,89],"allocation.":[19],"This":[20,134],"means":[21,45],"that":[22],"number":[24,34],"registers":[26],"used":[27,47],"must":[28],"be":[29],"equal":[30],"to":[31,48],"maximum":[33],"simultaneously":[36],"alive":[37],"variables":[38],"loop.":[41],"Usually":[42],"two":[43],"different":[44],"achieve":[49],"this,":[50],"namely":[51],"renaming":[53],"or":[54],"loop":[55,80],"unrolling.":[56],"As":[57],"these":[58],"methods":[59],"have":[60,106],"both":[61],"drawbacks,":[62],"introduce":[64],"here":[65],"a":[66,70,84,128],"solution":[67],"which":[68],"is":[69,101],"trade-off":[71],"between":[72],"inserting":[73],"move":[74],"operations":[75],"and":[76,103,125],"unrolling":[77],"modulo-scheduled":[79],"body.":[81],"present":[83],"new":[85,135],"algorithmic":[86],"framework":[87],"for":[92],"modulo":[93],"scheduled":[94],"loops.":[95],"The":[96],"proposed":[97],"algorithm,":[98],"called":[99],"U&M,":[100],"simple":[102],"efficient.":[104],"implemented":[107],"it":[108],"MOST.":[110],"An":[111],"experimental":[112],"study":[113],"our":[115],"algorithm":[116,136],"more":[118],"than":[119,140],"1000":[120],"loops":[121],"has":[122],"been":[123],"performed":[124],"report":[127],"summary":[129],"main":[132],"results.":[133],"performs":[137],"consistently":[138],"better":[139],"several":[141],"other":[142],"existing":[143],"methods.":[144]},"cited_by_api_url":"https://api.openalex.org/works?filter=cites:W1883726693","counts_by_year":[{"year":2012,"cited_by_count":1}],"updated_date":"2024-03-07T13:35:01.242956","created_date":"2016-06-24"}