{"id":"https://openalex.org/W4210408109","doi":"https://doi.org/10.1145/3505558","title":"Register-Pressure-Aware Instruction Scheduling Using Ant Colony Optimization","display_name":"Register-Pressure-Aware Instruction Scheduling Using Ant Colony Optimization","publication_year":2022,"publication_date":"2022-01-31","ids":{"openalex":"https://openalex.org/W4210408109","doi":"https://doi.org/10.1145/3505558"},"language":"en","primary_location":{"id":"doi:10.1145/3505558","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3505558","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3505558","source":{"id":"https://openalex.org/S26056741","display_name":"ACM Transactions on Architecture and Code Optimization","issn_l":"1544-3566","issn":["1544-3566","1544-3973"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Architecture and Code Optimization","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3505558","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5009270700","display_name":"Ghassan Shobaki","orcid":"https://orcid.org/0000-0001-8727-671X"},"institutions":[{"id":"https://openalex.org/I43522216","display_name":"California State University, Sacramento","ror":"https://ror.org/03e26wv14","country_code":"US","type":"education","lineage":["https://openalex.org/I43522216"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Ghassan Shobaki","raw_affiliation_strings":["California State University, Sacramento, CA"],"affiliations":[{"raw_affiliation_string":"California State University, Sacramento, CA","institution_ids":["https://openalex.org/I43522216"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5109195137","display_name":"V. Scott Gordon","orcid":null},"institutions":[{"id":"https://openalex.org/I43522216","display_name":"California State University, Sacramento","ror":"https://ror.org/03e26wv14","country_code":"US","type":"education","lineage":["https://openalex.org/I43522216"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Vahl Scott Gordon","raw_affiliation_strings":["California State University, Sacramento, CA"],"affiliations":[{"raw_affiliation_string":"California State University, Sacramento, CA","institution_ids":["https://openalex.org/I43522216"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5102189898","display_name":"Paul McHugh","orcid":null},"institutions":[{"id":"https://openalex.org/I43522216","display_name":"California State University, Sacramento","ror":"https://ror.org/03e26wv14","country_code":"US","type":"education","lineage":["https://openalex.org/I43522216"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Paul McHugh","raw_affiliation_strings":["California State University, Sacramento, CA"],"affiliations":[{"raw_affiliation_string":"California State University, Sacramento, CA","institution_ids":["https://openalex.org/I43522216"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5041858738","display_name":"Th\u00e9odore Dubois","orcid":null},"institutions":[{"id":"https://openalex.org/I43522216","display_name":"California State University, Sacramento","ror":"https://ror.org/03e26wv14","country_code":"US","type":"education","lineage":["https://openalex.org/I43522216"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Theodore Dubois","raw_affiliation_strings":["California State University, Sacramento, CA"],"affiliations":[{"raw_affiliation_string":"California State University, Sacramento, CA","institution_ids":["https://openalex.org/I43522216"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5055443277","display_name":"Austin Kerbow","orcid":"https://orcid.org/0000-0001-7314-5516"},"institutions":[{"id":"https://openalex.org/I43522216","display_name":"California State University, Sacramento","ror":"https://ror.org/03e26wv14","country_code":"US","type":"education","lineage":["https://openalex.org/I43522216"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Austin Kerbow","raw_affiliation_strings":["California State University, Sacramento, CA"],"affiliations":[{"raw_affiliation_string":"California State University, Sacramento, CA","institution_ids":["https://openalex.org/I43522216"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5009270700"],"corresponding_institution_ids":["https://openalex.org/I43522216"],"apc_list":null,"apc_paid":null,"fwci":2.8009,"has_fulltext":true,"cited_by_count":13,"citation_normalized_percentile":{"value":0.90213683,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":91,"max":98},"biblio":{"volume":"19","issue":"2","first_page":"1","last_page":"23"},"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/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.9932000041007996,"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/T10101","display_name":"Cloud Computing and Resource Management","score":0.9890000224113464,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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.8870053887367249},{"id":"https://openalex.org/keywords/x86","display_name":"x86","score":0.7923589944839478},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.7641633152961731},{"id":"https://openalex.org/keywords/instruction-scheduling","display_name":"Instruction scheduling","score":0.7307188510894775},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6389670372009277},{"id":"https://openalex.org/keywords/ant-colony-optimization-algorithms","display_name":"Ant colony optimization algorithms","score":0.60310959815979},{"id":"https://openalex.org/keywords/scheduling","display_name":"Scheduling (production processes)","score":0.5992838144302368},{"id":"https://openalex.org/keywords/register-allocation","display_name":"Register allocation","score":0.42366641759872437},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.41635140776634216},{"id":"https://openalex.org/keywords/schedule","display_name":"Schedule","score":0.24794155359268188},{"id":"https://openalex.org/keywords/dynamic-priority-scheduling","display_name":"Dynamic priority scheduling","score":0.1965920329093933},{"id":"https://openalex.org/keywords/mathematical-optimization","display_name":"Mathematical optimization","score":0.1709345281124115},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.14633235335350037},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.09939694404602051},{"id":"https://openalex.org/keywords/two-level-scheduling","display_name":"Two-level scheduling","score":0.06840825080871582}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8870053887367249},{"id":"https://openalex.org/C170723468","wikidata":"https://www.wikidata.org/wiki/Q182933","display_name":"x86","level":3,"score":0.7923589944839478},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.7641633152961731},{"id":"https://openalex.org/C73564150","wikidata":"https://www.wikidata.org/wiki/Q11417093","display_name":"Instruction scheduling","level":5,"score":0.7307188510894775},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6389670372009277},{"id":"https://openalex.org/C40128228","wikidata":"https://www.wikidata.org/wiki/Q460851","display_name":"Ant colony optimization algorithms","level":2,"score":0.60310959815979},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.5992838144302368},{"id":"https://openalex.org/C128916667","wikidata":"https://www.wikidata.org/wiki/Q1343660","display_name":"Register allocation","level":3,"score":0.42366641759872437},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.41635140776634216},{"id":"https://openalex.org/C68387754","wikidata":"https://www.wikidata.org/wiki/Q7271585","display_name":"Schedule","level":2,"score":0.24794155359268188},{"id":"https://openalex.org/C107568181","wikidata":"https://www.wikidata.org/wiki/Q5319000","display_name":"Dynamic priority scheduling","level":3,"score":0.1965920329093933},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.1709345281124115},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.14633235335350037},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.09939694404602051},{"id":"https://openalex.org/C119948110","wikidata":"https://www.wikidata.org/wiki/Q7858726","display_name":"Two-level scheduling","level":4,"score":0.06840825080871582},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3505558","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3505558","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3505558","source":{"id":"https://openalex.org/S26056741","display_name":"ACM Transactions on Architecture and Code Optimization","issn_l":"1544-3566","issn":["1544-3566","1544-3973"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Architecture and Code Optimization","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3505558","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3505558","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3505558","source":{"id":"https://openalex.org/S26056741","display_name":"ACM Transactions on Architecture and Code Optimization","issn_l":"1544-3566","issn":["1544-3566","1544-3973"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Architecture and Code Optimization","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G2181105169","display_name":null,"funder_award_id":"1911235","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G848032724","display_name":null,"funder_award_id":"Science","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320307757","display_name":"Advanced Micro Devices","ror":"https://ror.org/04kd6c783"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4210408109.pdf","grobid_xml":"https://content.openalex.org/works/W4210408109.grobid-xml"},"referenced_works_count":35,"referenced_works":["https://openalex.org/W12803156","https://openalex.org/W106298309","https://openalex.org/W1876846146","https://openalex.org/W1964625315","https://openalex.org/W2017069727","https://openalex.org/W2018474648","https://openalex.org/W2024598204","https://openalex.org/W2029006739","https://openalex.org/W2039773794","https://openalex.org/W2041909047","https://openalex.org/W2053505858","https://openalex.org/W2058372704","https://openalex.org/W2082124924","https://openalex.org/W2095897774","https://openalex.org/W2121056548","https://openalex.org/W2122230401","https://openalex.org/W2142978187","https://openalex.org/W2146230369","https://openalex.org/W2146995753","https://openalex.org/W2153185479","https://openalex.org/W2154635391","https://openalex.org/W2154929945","https://openalex.org/W2155695023","https://openalex.org/W2278840053","https://openalex.org/W2293562697","https://openalex.org/W2405775132","https://openalex.org/W2794527728","https://openalex.org/W2907733791","https://openalex.org/W2912379395","https://openalex.org/W2916770803","https://openalex.org/W2962770763","https://openalex.org/W3007718266","https://openalex.org/W3123712173","https://openalex.org/W4211076202","https://openalex.org/W4236145149"],"related_works":["https://openalex.org/W2091058226","https://openalex.org/W1596795436","https://openalex.org/W2074352684","https://openalex.org/W1581500142","https://openalex.org/W4253173659","https://openalex.org/W2353958330","https://openalex.org/W4231369653","https://openalex.org/W2168354894","https://openalex.org/W2054996834","https://openalex.org/W182448324"],"abstract_inverted_index":{"This":[0],"paper":[1],"describes":[2],"a":[3,18,196,230],"new":[4],"approach":[5],"to":[6,27,118,137,151,184,205],"register-pressure-aware":[7],"instruction":[8,66,78],"scheduling,":[9],"using":[10,160],"Ant":[11],"Colony":[12],"Optimization":[13],"(ACO)":[14],".":[15],"ACO":[16,46,82,114,211,237,253],"is":[17,84,94,116],"nature-inspired":[19],"optimization":[20,53],"technique":[21],"that":[22,159,247],"researchers":[23],"have":[24],"successfully":[25],"applied":[26],"NP-hard":[28],"sequencing":[29],"problems":[30],"like":[31],"the":[32,50,87,143,146,165,185,206,215,220,227,257,261,264,268],"Traveling":[33],"Salesman":[34],"Problem":[35],"(TSP)":[36],"and":[37,60,91,109,130,173,180,254,263],"its":[38,92],"derivatives.":[39],"In":[40],"this":[41],"work,":[42],"we":[43],"describe":[44],"an":[45,119,191],"algorithm":[47,83,115,123,167,212,225,259,266],"for":[48,74],"solving":[49],"long-standing":[51],"compiler":[52],"problem":[54],"of":[55,171,199,233],"balancing":[56],"Instruction-Level":[57],"Parallelism":[58],"(ILP)":[59],"Register":[61],"Pressure":[62],"(RP)":[63],"in":[64,86,125,175,201],"pre-allocation":[65],"scheduling.":[67,79],"Three":[68],"different":[69,99,103],"cost":[70],"functions":[71],"are":[72,134,148],"studied":[73],"estimating":[75],"RP":[76],"during":[77],"The":[80,112,155,209],"proposed":[81,113,124,166,210],"implemented":[85],"LLVM":[88,186,258],"open-source":[89],"compiler,":[90],"performance":[93],"evaluated":[95,135,149],"experimentally":[96],"on":[97,142,178,190,229,243,260,267],"three":[98,102],"machines":[100],"with":[101,223],"instruction-set":[104],"architectures:":[105],"Intel":[106],"x86,":[107],"ARM,":[108,131,181],"AMD":[110,144,192,207,265],"GPU.":[111,269],"compared":[117],"exact":[120],"Branch-and-Bound":[121],"(B&amp;B)":[122],"previous":[126],"work.":[127],"On":[128],"x86":[129,179],"both":[132],"algorithms":[133,147],"relative":[136,150,183,204],"LLVM's":[138],"generic":[139],"scheduler,":[140],"while":[141],"GPU,":[145,193],"AMD's":[152],"production":[153],"scheduler.":[154,187,208],"experimental":[156],"results":[157,218,240],"show":[158],"SPECrate":[161],"2017":[162],"Floating":[163],"Point,":[164],"gives":[168,195,213,238],"geometric-mean":[169,197],"improvements":[170],"1.13%":[172],"1.25%":[174],"execution":[176,202],"speed":[177,203],"respectively,":[182],"Using":[188],"PlaidML":[189],"it":[194],"improvement":[198],"7.14%":[200],"approximately":[214],"same":[216],"execution-time":[217],"as":[219],"B&amp;B":[221,242,248,255],"algorithm,":[222],"each":[224],"outperforming":[226],"other":[228],"substantial":[231],"number":[232],"hard":[234],"scheduling":[235],"regions.":[236],"better":[239],"than":[241],"many":[244],"large":[245],"instances":[246],"times":[249],"out":[250],"on.":[251],"Both":[252],"outperform":[256],"CPU":[262]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":5},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":2}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
