{"id":"https://openalex.org/W4232488598","doi":"https://doi.org/10.1109/micro.1996.566456","title":"Modulo scheduling of loops in control-intensive non-numeric programs","display_name":"Modulo scheduling of loops in control-intensive non-numeric programs","publication_year":2002,"publication_date":"2002-12-24","ids":{"openalex":"https://openalex.org/W4232488598","doi":"https://doi.org/10.1109/micro.1996.566456"},"language":"en","primary_location":{"id":"doi:10.1109/micro.1996.566456","is_oa":false,"landing_page_url":"https://doi.org/10.1109/micro.1996.566456","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 29th Annual IEEE/ACM International Symposium on Microarchitecture. MICRO 29","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/A5103555944","display_name":"Daniel M. Lavery","orcid":null},"institutions":[{"id":"https://openalex.org/I157725225","display_name":"University of Illinois Urbana-Champaign","ror":"https://ror.org/047426m28","country_code":"US","type":"education","lineage":["https://openalex.org/I157725225"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"D.M. Lavery","raw_affiliation_strings":["Center for Reliable and High-Performance Computing, University of Illinois, Urbana-Champaign, IL, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Center for Reliable and High-Performance Computing, University of Illinois, Urbana-Champaign, IL, USA","institution_ids":["https://openalex.org/I157725225"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5040404999","display_name":"Wen\u2010mei Hwu","orcid":"https://orcid.org/0000-0003-2532-5349"},"institutions":[{"id":"https://openalex.org/I157725225","display_name":"University of Illinois Urbana-Champaign","ror":"https://ror.org/047426m28","country_code":"US","type":"education","lineage":["https://openalex.org/I157725225"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"W.W. Hwu","raw_affiliation_strings":["Center for Reliable and High-Performance Computing, University of Illinois, Urbana-Champaign, IL, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Center for Reliable and High-Performance Computing, University of Illinois, Urbana-Champaign, IL, USA","institution_ids":["https://openalex.org/I157725225"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I157725225"],"apc_list":null,"apc_paid":null,"fwci":1.3363,"has_fulltext":false,"cited_by_count":21,"citation_normalized_percentile":{"value":0.81692782,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"126","last_page":"137"},"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/T10933","display_name":"Real-Time Systems Scheduling","score":0.9958000183105469,"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.9948999881744385,"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.9496328830718994},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7560102939605713},{"id":"https://openalex.org/keywords/scheduling","display_name":"Scheduling (production processes)","score":0.6625246405601501},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6167058944702148},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.5723411440849304},{"id":"https://openalex.org/keywords/high-level-synthesis","display_name":"High-level synthesis","score":0.4220725893974304},{"id":"https://openalex.org/keywords/mathematical-optimization","display_name":"Mathematical optimization","score":0.24351346492767334},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.2101869285106659},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.20296445488929749},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.15314960479736328},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.14292487502098083},{"id":"https://openalex.org/keywords/field-programmable-gate-array","display_name":"Field-programmable gate array","score":0.11081734299659729}],"concepts":[{"id":"https://openalex.org/C54732982","wikidata":"https://www.wikidata.org/wiki/Q1415345","display_name":"Modulo","level":2,"score":0.9496328830718994},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7560102939605713},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.6625246405601501},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6167058944702148},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.5723411440849304},{"id":"https://openalex.org/C58013763","wikidata":"https://www.wikidata.org/wiki/Q5754574","display_name":"High-level synthesis","level":3,"score":0.4220725893974304},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.24351346492767334},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.2101869285106659},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.20296445488929749},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.15314960479736328},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.14292487502098083},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.11081734299659729}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1109/micro.1996.566456","is_oa":false,"landing_page_url":"https://doi.org/10.1109/micro.1996.566456","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 29th Annual IEEE/ACM International Symposium on Microarchitecture. MICRO 29","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.119.8767","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.119.8767","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.cs.princeton.edu/courses/archive/fall99/cs597d/restricted/papers/lavery_micro29.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320307102","display_name":"Intel Corporation","ror":"https://ror.org/01ek73717"},{"id":"https://openalex.org/F4320307757","display_name":"Advanced Micro Devices","ror":"https://ror.org/04kd6c783"},{"id":"https://openalex.org/F4320330412","display_name":"Scheme for Promotion of Academic and Research Collaboration","ror":null}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":20,"referenced_works":["https://openalex.org/W12207660","https://openalex.org/W90084074","https://openalex.org/W1534890693","https://openalex.org/W1537956714","https://openalex.org/W1838003566","https://openalex.org/W1976811558","https://openalex.org/W2054652902","https://openalex.org/W2063255488","https://openalex.org/W2075651377","https://openalex.org/W2123412205","https://openalex.org/W2149532390","https://openalex.org/W3139787704","https://openalex.org/W4230458386","https://openalex.org/W4232919122","https://openalex.org/W4239600267","https://openalex.org/W4239783596","https://openalex.org/W4244938410","https://openalex.org/W4247930130","https://openalex.org/W4256534760","https://openalex.org/W6632171371"],"related_works":["https://openalex.org/W2117548279","https://openalex.org/W2097470475","https://openalex.org/W2070252991","https://openalex.org/W2807449856","https://openalex.org/W2941201715","https://openalex.org/W2025727968","https://openalex.org/W238211858","https://openalex.org/W2530146034","https://openalex.org/W2229175715","https://openalex.org/W2031425765"],"abstract_inverted_index":{"Much":[0],"of":[1,17,70,101,111,123,130,139,170,174,222,228],"the":[2,15,18,31,68,83,102,109,112,171,220],"previous":[3],"work":[4],"on":[5,58],"modulo":[6,44,99,128,147,168,223],"scheduling":[7,100,129,169,196,224],"has":[8],"targeted":[9],"numeric":[10],"programs,":[11,30],"in":[12],"which,":[13],"often,":[14],"majority":[16],"loops":[19,23,32,53,131,175],"are":[20,55,216],"well-behaved":[21],"loop-counter-based":[22],"without":[24],"early":[25],"exits.":[26,64,134],"In":[27,65],"control-intensive":[28,202],"non-numeric":[29,203],"frequently":[33],"have":[34],"characteristics":[35,47],"that":[36,54,88,125],"make":[37],"it":[38],"more":[39],"difficult":[40],"to":[41,142,146,166,185,197,201,225],"effectively":[42,199],"apply":[43],"scheduling.":[45],"These":[46,156],"include":[48,137],"multiple":[49,63,133],"control":[50,140,178],"flow":[51],"paths,":[52],"not":[56],"based":[57],"a":[59,90,121,151],"loop":[60,96],"counter,":[61],"and":[62,115,150,163,212,218],"these":[66,188],"loops,":[67],"presence":[69],"unimportant":[71],"paths":[72,173],"with":[73,132,161,176,191],"high":[74],"resource":[75],"usage":[76],"or":[77],"long":[78],"dependence":[79],"chains":[80],"can":[81,97,106,158],"penalize":[82],"important":[84],"paths.":[85],"A":[86,180],"path":[87],"contains":[89],"hazard":[91],"such":[92],"as":[93],"another":[94],"nested":[95],"prohibit":[98],"loop.":[103],"Control":[104],"dependences":[105,141],"severely":[107],"restrict":[108],"overlap":[110],"blocks":[113],"within":[114],"across":[116],"iterations.":[117],"This":[118],"paper":[119],"describes":[120],"set":[122],"methods":[124,157],"allow":[126,167],"effective":[127],"The":[135],"techniques":[136,165],"removal":[138],"enable":[143,194],"speculation,":[144],"extensions":[145],"variable":[148],"expansion,":[149],"new":[152],"epilogue":[153],"generation":[154],"scheme.":[155],"be":[159,198],"used":[160],"superblock":[162,192],"hyperblock":[164],"selected":[172],"arbitrary":[177],"flow.":[179],"case":[181],"study":[182],"is":[183],"presented":[184],"show":[186],"how":[187],"methods,":[189],"combined":[190],"techniques,":[193],"module":[195],"applied":[200],"programs.":[204,229],"Performance":[205],"results":[206],"for":[207],"several":[208],"SPEC":[209],"CINT92":[210],"benchmarks":[211],"Unix":[213],"utility":[214],"programs":[215],"reported":[217],"demonstrate":[219],"applicability":[221],"this":[226],"class":[227]},"counts_by_year":[{"year":2016,"cited_by_count":1},{"year":2012,"cited_by_count":1}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
