{"id":"https://openalex.org/W2039755759","doi":"https://doi.org/10.1145/2180887.2180896","title":"Integrated Code Generation for Loops","display_name":"Integrated Code Generation for Loops","publication_year":2012,"publication_date":"2012-06-01","ids":{"openalex":"https://openalex.org/W2039755759","doi":"https://doi.org/10.1145/2180887.2180896","mag":"2039755759"},"language":"en","primary_location":{"id":"doi:10.1145/2180887.2180896","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2180887.2180896","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/A5077536351","display_name":"Mattias Eriksson","orcid":null},"institutions":[{"id":"https://openalex.org/I102134673","display_name":"Link\u00f6ping University","ror":"https://ror.org/05ynxx418","country_code":"SE","type":"education","lineage":["https://openalex.org/I102134673"]}],"countries":["SE"],"is_corresponding":false,"raw_author_name":"Mattias Eriksson","raw_affiliation_strings":["Link\u00f6ping University"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Link\u00f6ping University","institution_ids":["https://openalex.org/I102134673"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5059272770","display_name":"Christoph Ke\u00dfler","orcid":"https://orcid.org/0000-0001-5241-0026"},"institutions":[{"id":"https://openalex.org/I102134673","display_name":"Link\u00f6ping University","ror":"https://ror.org/05ynxx418","country_code":"SE","type":"education","lineage":["https://openalex.org/I102134673"]}],"countries":["SE"],"is_corresponding":false,"raw_author_name":"Christoph Kessler","raw_affiliation_strings":["Link\u00f6ping University"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Link\u00f6ping University","institution_ids":["https://openalex.org/I102134673"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":2.9291,"has_fulltext":false,"cited_by_count":19,"citation_normalized_percentile":{"value":0.90758658,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":"11S","issue":"1","first_page":"1","last_page":"24"},"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9991999864578247,"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.9988999962806702,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.890119731426239},{"id":"https://openalex.org/keywords/modulo","display_name":"Modulo","score":0.8549846410751343},{"id":"https://openalex.org/keywords/instruction-scheduling","display_name":"Instruction scheduling","score":0.7223248481750488},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6908395886421204},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6087083220481873},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.5872576236724854},{"id":"https://openalex.org/keywords/register-allocation","display_name":"Register allocation","score":0.575545608997345},{"id":"https://openalex.org/keywords/scheduling","display_name":"Scheduling (production processes)","score":0.5550317764282227},{"id":"https://openalex.org/keywords/integer-programming","display_name":"Integer programming","score":0.44495996832847595},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3432679772377014},{"id":"https://openalex.org/keywords/fair-share-scheduling","display_name":"Fair-share scheduling","score":0.32500964403152466},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.29560768604278564},{"id":"https://openalex.org/keywords/two-level-scheduling","display_name":"Two-level scheduling","score":0.21872511506080627},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.19431135058403015},{"id":"https://openalex.org/keywords/mathematical-optimization","display_name":"Mathematical optimization","score":0.1780209243297577},{"id":"https://openalex.org/keywords/schedule","display_name":"Schedule","score":0.08195805549621582}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.890119731426239},{"id":"https://openalex.org/C54732982","wikidata":"https://www.wikidata.org/wiki/Q1415345","display_name":"Modulo","level":2,"score":0.8549846410751343},{"id":"https://openalex.org/C73564150","wikidata":"https://www.wikidata.org/wiki/Q11417093","display_name":"Instruction scheduling","level":5,"score":0.7223248481750488},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6908395886421204},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6087083220481873},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.5872576236724854},{"id":"https://openalex.org/C128916667","wikidata":"https://www.wikidata.org/wiki/Q1343660","display_name":"Register allocation","level":3,"score":0.575545608997345},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.5550317764282227},{"id":"https://openalex.org/C56086750","wikidata":"https://www.wikidata.org/wiki/Q6042592","display_name":"Integer programming","level":2,"score":0.44495996832847595},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3432679772377014},{"id":"https://openalex.org/C31689143","wikidata":"https://www.wikidata.org/wiki/Q733809","display_name":"Fair-share scheduling","level":3,"score":0.32500964403152466},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.29560768604278564},{"id":"https://openalex.org/C119948110","wikidata":"https://www.wikidata.org/wiki/Q7858726","display_name":"Two-level scheduling","level":4,"score":0.21872511506080627},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.19431135058403015},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.1780209243297577},{"id":"https://openalex.org/C68387754","wikidata":"https://www.wikidata.org/wiki/Q7271585","display_name":"Schedule","level":2,"score":0.08195805549621582},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0},{"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/2180887.2180896","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2180887.2180896","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"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.4399999976158142,"id":"https://metadata.un.org/sdg/16","display_name":"Peace, Justice and strong institutions"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":61,"referenced_works":["https://openalex.org/W33157556","https://openalex.org/W122980706","https://openalex.org/W144747564","https://openalex.org/W341155321","https://openalex.org/W808028207","https://openalex.org/W1512940807","https://openalex.org/W1547856753","https://openalex.org/W1551521530","https://openalex.org/W1566248920","https://openalex.org/W1581686471","https://openalex.org/W1592753209","https://openalex.org/W1599607442","https://openalex.org/W1608762713","https://openalex.org/W1832782022","https://openalex.org/W1963718362","https://openalex.org/W2010594747","https://openalex.org/W2016088745","https://openalex.org/W2016285924","https://openalex.org/W2025155837","https://openalex.org/W2049097986","https://openalex.org/W2054652902","https://openalex.org/W2063583051","https://openalex.org/W2072480015","https://openalex.org/W2074352684","https://openalex.org/W2076267738","https://openalex.org/W2077749405","https://openalex.org/W2093650773","https://openalex.org/W2095798192","https://openalex.org/W2102016326","https://openalex.org/W2107139334","https://openalex.org/W2110549003","https://openalex.org/W2117285153","https://openalex.org/W2119773132","https://openalex.org/W2123412205","https://openalex.org/W2124709594","https://openalex.org/W2128221687","https://openalex.org/W2129151831","https://openalex.org/W2129207930","https://openalex.org/W2130762555","https://openalex.org/W2131889093","https://openalex.org/W2131929304","https://openalex.org/W2132929529","https://openalex.org/W2135093596","https://openalex.org/W2137995472","https://openalex.org/W2140839406","https://openalex.org/W2154209875","https://openalex.org/W2156467401","https://openalex.org/W2157687340","https://openalex.org/W2157758640","https://openalex.org/W2159324394","https://openalex.org/W2169295182","https://openalex.org/W2171201387","https://openalex.org/W2281218127","https://openalex.org/W3004703559","https://openalex.org/W3021447659","https://openalex.org/W3143608323","https://openalex.org/W3151280928","https://openalex.org/W4240046008","https://openalex.org/W4247227158","https://openalex.org/W4252742548","https://openalex.org/W6683827431"],"related_works":["https://openalex.org/W2059179631","https://openalex.org/W4246262935","https://openalex.org/W4239800473","https://openalex.org/W2768980428","https://openalex.org/W2369241479","https://openalex.org/W4254108153","https://openalex.org/W4312582323","https://openalex.org/W4237797556","https://openalex.org/W28761524","https://openalex.org/W2067189527"],"abstract_inverted_index":{"Code":[0],"generation":[1,74],"in":[2,20,36,118],"a":[3,34,119,136],"compiler":[4],"is":[5],"commonly":[6],"divided":[7],"into":[8],"several":[9],"phases:":[10],"instruction":[11,38,111],"selection,":[12],"scheduling,":[13,101,109],"register":[14],"allocation,":[15],"spill":[16],"code":[17,73,82],"generation,":[18],"and,":[19],"the":[21,37,50,58,61,132,140,146],"case":[22],"of":[23,52,55,60,92,145],"clustered":[24],"architectures,":[25],"cluster":[26,114],"assignment.":[27],"These":[28],"phases":[29,56,104],"are":[30,105,116],"interdependent;":[31],"for":[32,72,80,126,143],"instance,":[33],"decision":[35],"selection":[39,112],"phase":[40],"affects":[41],"how":[42],"an":[43,127],"operation":[44],"can":[45],"be":[46],"scheduled":[47],"We":[48],"examine":[49],"effect":[51],"this":[53,66,87],"separation":[54],"on":[57],"quality":[59],"generated":[62],"code.":[63],"To":[64],"study":[65],"we":[67,85,97],"have":[68],"formulated":[69],"optimal":[70,99],"methods":[71],"with":[75,129],"integer":[76],"linear":[77],"programming;":[78],"first":[79],"acyclic":[81],"and":[83,113],"then":[84],"extend":[86],"method":[88,134,142],"to":[89,107],"modulo":[90,100,108],"scheduling":[91],"loops.":[93],"In":[94],"our":[95],"experiments":[96],"compare":[98],"where":[102,110],"all":[103],"integrated,":[106],"assignment":[115],"done":[117],"separate":[120],"phase.":[121],"The":[122],"results":[123],"show":[124],"that,":[125],"architecture":[128],"two":[130],"clusters,":[131],"integrated":[133],"finds":[135],"better":[137],"solution":[138],"than":[139],"nonintegrated":[141],"27%":[144],"instances.":[147]},"counts_by_year":[{"year":2023,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":1},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":3},{"year":2014,"cited_by_count":3},{"year":2013,"cited_by_count":3},{"year":2012,"cited_by_count":1}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
