{"id":"https://openalex.org/W4238224159","doi":"https://doi.org/10.1109/micro.2002.1176242","title":"Reduced code size modulo scheduling in the absence of hardware support","display_name":"Reduced code size modulo scheduling in the absence of hardware support","publication_year":2003,"publication_date":"2003-06-26","ids":{"openalex":"https://openalex.org/W4238224159","doi":"https://doi.org/10.1109/micro.2002.1176242"},"language":"en","primary_location":{"id":"doi:10.1109/micro.2002.1176242","is_oa":false,"landing_page_url":"https://doi.org/10.1109/micro.2002.1176242","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"35th Annual IEEE/ACM International Symposium on Microarchitecture, 2002. (MICRO-35). Proceedings.","raw_type":"proceedings-article"},"type":"conference-paper","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/A5046557938","display_name":"Josep Llosa","orcid":"https://orcid.org/0000-0001-7740-3148"},"institutions":[{"id":"https://openalex.org/I1324840837","display_name":"Hewlett-Packard (United States)","ror":"https://ror.org/059rn9488","country_code":"US","type":"company","lineage":["https://openalex.org/I1324840837"]},{"id":"https://openalex.org/I9617848","display_name":"Universitat Polit\u00e8cnica de Catalunya","ror":"https://ror.org/03mb6wj31","country_code":"ES","type":"education","lineage":["https://openalex.org/I9617848"]}],"countries":["ES","US"],"is_corresponding":false,"raw_author_name":"J. Llosa","raw_affiliation_strings":["Department d'Arquitectura de Computadors, Universitat Polilt\u00e8cnica de Catalunya, Spain","Hewlett Packard Laboratories, Cambridge, MA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department d'Arquitectura de Computadors, Universitat Polilt\u00e8cnica de Catalunya, Spain","institution_ids":["https://openalex.org/I9617848"]},{"raw_affiliation_string":"Hewlett Packard Laboratories, Cambridge, MA, USA","institution_ids":["https://openalex.org/I1324840837"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5050600653","display_name":"S.M. Freudenberger","orcid":null},"institutions":[{"id":"https://openalex.org/I1324840837","display_name":"Hewlett-Packard (United States)","ror":"https://ror.org/059rn9488","country_code":"US","type":"company","lineage":["https://openalex.org/I1324840837"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"S.M. Freudenberger","raw_affiliation_strings":["Hewlett Packard Laboratories, Cambridge, MA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Hewlett Packard Laboratories, Cambridge, MA, USA","institution_ids":["https://openalex.org/I1324840837"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":5,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":"7","issue":null,"first_page":"99","last_page":"110"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":1.0,"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":1.0,"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.9990000128746033,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9984999895095825,"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/modulo","display_name":"Modulo","score":0.870512843132019},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.833187460899353},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.788147509098053},{"id":"https://openalex.org/keywords/instruction-scheduling","display_name":"Instruction scheduling","score":0.6373416185379028},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.5162832140922546},{"id":"https://openalex.org/keywords/heuristics","display_name":"Heuristics","score":0.5141258835792542},{"id":"https://openalex.org/keywords/scheduling","display_name":"Scheduling (production processes)","score":0.5071625709533691},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.45641639828681946},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.41908296942710876},{"id":"https://openalex.org/keywords/dynamic-priority-scheduling","display_name":"Dynamic priority scheduling","score":0.263786256313324},{"id":"https://openalex.org/keywords/two-level-scheduling","display_name":"Two-level scheduling","score":0.18661361932754517},{"id":"https://openalex.org/keywords/schedule","display_name":"Schedule","score":0.15710464119911194},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.12393343448638916},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.1114845871925354}],"concepts":[{"id":"https://openalex.org/C54732982","wikidata":"https://www.wikidata.org/wiki/Q1415345","display_name":"Modulo","level":2,"score":0.870512843132019},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.833187460899353},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.788147509098053},{"id":"https://openalex.org/C73564150","wikidata":"https://www.wikidata.org/wiki/Q11417093","display_name":"Instruction scheduling","level":5,"score":0.6373416185379028},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.5162832140922546},{"id":"https://openalex.org/C127705205","wikidata":"https://www.wikidata.org/wiki/Q5748245","display_name":"Heuristics","level":2,"score":0.5141258835792542},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.5071625709533691},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.45641639828681946},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.41908296942710876},{"id":"https://openalex.org/C107568181","wikidata":"https://www.wikidata.org/wiki/Q5319000","display_name":"Dynamic priority scheduling","level":3,"score":0.263786256313324},{"id":"https://openalex.org/C119948110","wikidata":"https://www.wikidata.org/wiki/Q7858726","display_name":"Two-level scheduling","level":4,"score":0.18661361932754517},{"id":"https://openalex.org/C68387754","wikidata":"https://www.wikidata.org/wiki/Q7271585","display_name":"Schedule","level":2,"score":0.15710464119911194},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.12393343448638916},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.1114845871925354},{"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/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/micro.2002.1176242","is_oa":false,"landing_page_url":"https://doi.org/10.1109/micro.2002.1176242","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"35th Annual IEEE/ACM International Symposium on Microarchitecture, 2002. (MICRO-35). Proceedings.","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.44999998807907104,"display_name":"Affordable and clean energy","id":"https://metadata.un.org/sdg/7"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":18,"referenced_works":["https://openalex.org/W1963718362","https://openalex.org/W2005055779","https://openalex.org/W2054652902","https://openalex.org/W2088704572","https://openalex.org/W2123412205","https://openalex.org/W2129151831","https://openalex.org/W2296760900","https://openalex.org/W3139787704","https://openalex.org/W3147835733","https://openalex.org/W4230458386","https://openalex.org/W4231433101","https://openalex.org/W4232488598","https://openalex.org/W4232919122","https://openalex.org/W4241990532","https://openalex.org/W4244938410","https://openalex.org/W4247930130","https://openalex.org/W4251051882","https://openalex.org/W6793159789"],"related_works":["https://openalex.org/W650988184","https://openalex.org/W2162410319","https://openalex.org/W4237750055","https://openalex.org/W2137356287","https://openalex.org/W2160557488","https://openalex.org/W4321184925","https://openalex.org/W2255990315","https://openalex.org/W60915090","https://openalex.org/W2025840053","https://openalex.org/W2161692994"],"abstract_inverted_index":{"Modulo":[0],"scheduling":[1,7,27,79,85],"is":[2,155],"a":[3,59,129,167],"very":[4],"effective":[5],"instruction":[6,170],"technique":[8],"that":[9,74,108],"exploits":[10],"Instruction":[11],"Level":[12],"Parallelism":[13],"(ILP)":[14],"in":[15,61,169],"loop":[16,125],"bodies":[17],"by":[18,149],"overlapping":[19],"the":[20,38,75,123,132,142],"execution":[21],"of":[22,40,78,131,144],"successive":[23],"iterations.":[24],"Unfortunately,":[25],"modulo":[26,50,84,113,134],"has":[28,58],"been":[29],"shown":[30],"to":[31,100,163,166],"cause":[32],"heavy":[33],"code":[34,41,89,94,103,118,137],"expansion.":[35,90,104],"To":[36],"avoid":[37],"penalties":[39],"expansion,":[42],"some":[43,158],"processors":[44],"have":[45],"dedicated":[46,55],"hardware":[47,56],"support":[48,57],"for":[49],"scheduled":[51,114],"loops.":[52],"However,":[53],"this":[54],"cost":[60],"chip":[62],"area,":[63],"cycle":[64],"time,":[65],"processor":[66],"complexity,":[67],"and":[68],"compiler":[69],"complexity.":[70],"This":[71],"paper":[72],"shows":[73],"right":[76],"combination":[77],"heuristics":[80,97,140],"combined":[81],"with":[82,115,128],"speculative":[83],"can":[86,110],"significantly":[87],"reduce":[88,102,141],"In":[91],"addition,":[92],"several":[93],"generation":[95],"schema":[96],"are":[98],"proposed":[99],"further":[101],"The":[105],"evaluations":[106],"show":[107,160],"loops":[109],"be":[111],"effectively":[112],"an":[116],"average":[117],"expansion":[119],"only":[120],"1.5":[121],"times":[122],"original":[124],"size.":[126],"Compared":[127],"state":[130],"art":[133],"scheduler,":[135],"our":[136],"size":[138,143],"sensitive":[139],"embedded":[145],"domain":[146],"benchmarks":[147],"binaries":[148],"30%":[150],"on":[151],"average.":[152],"While":[153],"performance":[154],"mostly":[156],"unchanged,":[157],"applications":[159],"speed-ups":[161],"up":[162],"20%":[164],"due":[165],"reduction":[168],"cache":[171],"capacity":[172],"misses.":[173]},"counts_by_year":[{"year":2016,"cited_by_count":1},{"year":2012,"cited_by_count":1}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
