{"id":"https://openalex.org/W1973368005","doi":"https://doi.org/10.1145/2345770.2345775","title":"On Heuristic Solutions to the Simple Offset Assignment Problem in Address-Code Optimization","display_name":"On Heuristic Solutions to the Simple Offset Assignment Problem in Address-Code Optimization","publication_year":2012,"publication_date":"2012-09-01","ids":{"openalex":"https://openalex.org/W1973368005","doi":"https://doi.org/10.1145/2345770.2345775","mag":"1973368005"},"language":"en","primary_location":{"id":"doi:10.1145/2345770.2345775","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2345770.2345775","pdf_url":null,"source":{"id":"https://openalex.org/S136160450","display_name":"ACM Transactions on Embedded Computing Systems","issn_l":"1539-9087","issn":["1539-9087","1558-3465"],"is_oa":false,"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 Embedded Computing Systems","raw_type":"journal-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/A5042010325","display_name":"Hesham Shokry","orcid":null},"institutions":[{"id":"https://openalex.org/I4210130076","display_name":"Lero","ror":"https://ror.org/038dhnb42","country_code":"IE","type":"other","lineage":["https://openalex.org/I4210130076"]}],"countries":["IE"],"is_corresponding":false,"raw_author_name":"Hesham Shokry","raw_affiliation_strings":["Lero -- the Irish Software Engineering Research Centre"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Lero -- the Irish Software Engineering Research Centre","institution_ids":["https://openalex.org/I4210130076"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5040880458","display_name":"Hatem M. El-Boghdadi","orcid":null},"institutions":[{"id":"https://openalex.org/I145487455","display_name":"Cairo University","ror":"https://ror.org/03q21mh05","country_code":"EG","type":"education","lineage":["https://openalex.org/I145487455"]}],"countries":["EG"],"is_corresponding":false,"raw_author_name":"Hatem M. El-Boghdadi","raw_affiliation_strings":["Cairo University, Egypt"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Cairo University, Egypt","institution_ids":["https://openalex.org/I145487455"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.05905761,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"11","issue":"3","first_page":"1","last_page":"17"},"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.9997000098228455,"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.9997000098228455,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9972000122070312,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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.9962999820709229,"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/computer-science","display_name":"Computer science","score":0.8948553800582886},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7222814559936523},{"id":"https://openalex.org/keywords/offset","display_name":"Offset (computer science)","score":0.6197382807731628},{"id":"https://openalex.org/keywords/overhead","display_name":"Overhead (engineering)","score":0.5535321235656738},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.5084530115127563},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5060078501701355},{"id":"https://openalex.org/keywords/heuristic","display_name":"Heuristic","score":0.4897475242614746},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4883860945701599},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4803508520126343},{"id":"https://openalex.org/keywords/variable","display_name":"Variable (mathematics)","score":0.4562768042087555},{"id":"https://openalex.org/keywords/exploit","display_name":"Exploit","score":0.43967005610466003},{"id":"https://openalex.org/keywords/program-optimization","display_name":"Program optimization","score":0.42051756381988525},{"id":"https://openalex.org/keywords/computer-engineering","display_name":"Computer engineering","score":0.3628647029399872},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.2872452735900879},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.20787397027015686},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.12420603632926941}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8948553800582886},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7222814559936523},{"id":"https://openalex.org/C175291020","wikidata":"https://www.wikidata.org/wiki/Q1156822","display_name":"Offset (computer science)","level":2,"score":0.6197382807731628},{"id":"https://openalex.org/C2779960059","wikidata":"https://www.wikidata.org/wiki/Q7113681","display_name":"Overhead (engineering)","level":2,"score":0.5535321235656738},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.5084530115127563},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5060078501701355},{"id":"https://openalex.org/C173801870","wikidata":"https://www.wikidata.org/wiki/Q201413","display_name":"Heuristic","level":2,"score":0.4897475242614746},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4883860945701599},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4803508520126343},{"id":"https://openalex.org/C182365436","wikidata":"https://www.wikidata.org/wiki/Q50701","display_name":"Variable (mathematics)","level":2,"score":0.4562768042087555},{"id":"https://openalex.org/C165696696","wikidata":"https://www.wikidata.org/wiki/Q11287","display_name":"Exploit","level":2,"score":0.43967005610466003},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.42051756381988525},{"id":"https://openalex.org/C113775141","wikidata":"https://www.wikidata.org/wiki/Q428691","display_name":"Computer engineering","level":1,"score":0.3628647029399872},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.2872452735900879},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.20787397027015686},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.12420603632926941},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"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/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2345770.2345775","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2345770.2345775","pdf_url":null,"source":{"id":"https://openalex.org/S136160450","display_name":"ACM Transactions on Embedded Computing Systems","issn_l":"1539-9087","issn":["1539-9087","1558-3465"],"is_oa":false,"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 Embedded Computing Systems","raw_type":"journal-article"},{"id":"pmh:http://www.rian.ie/58187/","is_oa":false,"landing_page_url":"http://hdl.handle.net/10344/2645","pdf_url":null,"source":{"id":"https://openalex.org/S4306400033","display_name":"Arrow@dit (Dublin Institute of Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I115570527","host_organization_name":"Dublin Institute of Technology","host_organization_lineage":["https://openalex.org/I115570527"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":"ACM Transactions on Embedded Systems Computing (TECS);11(3), article 63","raw_type":"Conference item"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G4337877129","display_name":"CSET ISERC: Irish Software Engineering Research Centre (ISERC)","funder_award_id":"03/CE2/I303_1","funder_id":"https://openalex.org/F4320320847","funder_display_name":"Science Foundation Ireland"}],"funders":[{"id":"https://openalex.org/F4320320847","display_name":"Science Foundation Ireland","ror":"https://ror.org/0271asj38"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":19,"referenced_works":["https://openalex.org/W34041591","https://openalex.org/W152989500","https://openalex.org/W1482387194","https://openalex.org/W1492019883","https://openalex.org/W1492764233","https://openalex.org/W1523929277","https://openalex.org/W1531729176","https://openalex.org/W1572085513","https://openalex.org/W1594864117","https://openalex.org/W1840390443","https://openalex.org/W1999095027","https://openalex.org/W2103552119","https://openalex.org/W2104891966","https://openalex.org/W2105071525","https://openalex.org/W2143394728","https://openalex.org/W2165899471","https://openalex.org/W2561675875","https://openalex.org/W2914931491","https://openalex.org/W3004322657"],"related_works":["https://openalex.org/W2577630842","https://openalex.org/W2113798250","https://openalex.org/W1488300410","https://openalex.org/W4320560513","https://openalex.org/W4225492247","https://openalex.org/W2069117531","https://openalex.org/W2083681681","https://openalex.org/W2956382393","https://openalex.org/W2137356287","https://openalex.org/W1877657449"],"abstract_inverted_index":{"The":[0,143],"increasing":[1],"demand":[2],"for":[3,17,75,97],"more":[4,172],"functionality":[5],"in":[6,51,61,164,206,208,250,260,303],"embedded":[7,18],"systems":[8],"applications":[9],"nowadays":[10],"requires":[11],"efficient":[12,94],"generation":[13,37],"of":[14,38,58,120,145,162,175,267],"compact":[15],"code":[16,40,230],"DSP":[19,79],"processors.":[20],"Because":[21],"such":[22],"processors":[23,31,80,104],"have":[24],"highly":[25],"irregular":[26],"data-paths,":[27],"compilers":[28],"targeting":[29,102],"those":[30,103],"are":[32,81,105,204],"challenged":[33],"with":[34,41,84,210,307],"the":[35,56,71,109,121,125,132,160,176,178,186,192,199,232,273,277,318],"automatic":[36],"optimized":[39],"competent":[42],"quality":[43],"comparable":[44],"to":[45,54,64,69,107,111,158,221,228,247,254,286,300,321],"hand-crafted":[46],"code.":[47],"A":[48],"major":[49],"issue":[50],"code-generation":[52],"is":[53,188,198],"optimize":[55,112],"placement":[57,161,194],"program":[59,99,202],"variables":[60,113,163,193,203],"ROM":[62],"relative":[63],"each":[65,211],"other":[66],"so":[67],"as":[68,225,227],"reduce":[70],"overhead":[72,251,296],"instructions":[73,96],"dedicated":[74],"address":[76],"computations.":[77],"Modern":[78],"typically":[82],"shipped":[83],"a":[85,171,264],"feature":[86],"called":[87],"Address":[88,137],"Generation":[89],"Unit":[90],"(AGU)":[91],"that":[92,185,201,292,317],"provides":[93],"address-generation":[95],"accessing":[98],"variables.":[100],"Compilers":[101],"expected":[106],"exploit":[108],"AGU":[110,133],"assignment.":[114],"This":[115],"article":[116,262],"focuses":[117],"on":[118,263,270],"one":[119,136],"basic":[122],"offset-assignment":[123],"problems;":[124],"Simple":[126],"Offset":[127],"Assignment":[128],"(SOA)":[129],"problem,":[130],"where":[131],"has":[134,155,282],"only":[135,214],"Register":[138],"and":[139,152,183,315],"no":[140],"Modify":[141],"Registers.":[142],"notion":[144],"Tie-Break":[146],"Function,":[147,181],"TBF,":[148],"introduced":[149],"by":[150],"Leupers":[151],"Marwedel":[153],"[1996],":[154],"been":[156],"used":[157],"guide":[159],"memory.":[165],"In":[166,236],"this":[167,261],"article,":[168],"we":[169,290],"introduce":[170],"effective":[173],"form":[174],"TBF;":[177],"Effective":[179],"Tie-Breaking":[180],"ETBF,":[182],"show":[184,316],"ETBF":[187,197,319],"better":[189],"at":[190],"guiding":[191],"process.":[195],"Underpinning":[196],"fact":[200],"placed":[205],"memory":[207],"sequence,":[209],"variable":[212],"having":[213],"two":[215],"neighbors.":[216],"We":[217,258,311],"applied":[218,253,285,299],"our":[219,243,268,280],"technique":[220,244,269,281],"randomly":[222],"generated":[223],"graphs":[224],"well":[226],"real-world":[229,301],"from":[231,272],"OffsetStone":[233],"testbench":[234],"[2010]).":[235],"previous":[237],"work":[238],"[Ali":[239],"et":[240],"al.":[241],"2008],":[242],"showed":[245],"up":[246],"7%":[248],"reduction":[249,297],"when":[252,284,298],"randomly-generated":[255],"problem":[256,288],"instances.":[257],"report":[259],"further":[265],"experiment":[266],"real-code":[271],"Offsetstone":[274],"testbench.":[275],"Despite":[276],"substantial":[278],"improvement":[279],"achieved":[283],"random":[287],"instances,":[289],"found":[291],"it":[293],"shows":[294],"slight":[295],"instances":[302],"OffsetStone,":[304],"which":[305],"agrees":[306],"similar":[308],"existing":[309],"experiments.":[310],"analyze":[312],"these":[313],"results":[314],"defaults":[320],"TBF.":[322]},"counts_by_year":[],"updated_date":"2026-06-22T08:00:12.763002","created_date":"2025-10-10T00:00:00"}
