{"id":"https://openalex.org/W2580188581","doi":null,"title":"Systematic compilation for predicated execution","display_name":"Systematic compilation for predicated execution","publication_year":2000,"publication_date":"2000-01-01","ids":{"openalex":"https://openalex.org/W2580188581","mag":"2580188581"},"language":"en","primary_location":{"id":"mag:2580188581","doi":null,"is_oa":false,"landing_page_url":"https://www.ideals.illinois.edu/handle/2142/81329","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null},"volume":null,"type":"article","is_traditional":true,"indexed_in":[],"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/A5040404999","display_name":"Wen\u2010mei Hwu","orcid":"https://orcid.org/0000-0003-2532-5349","observed_orcids":["https://orcid.org/0000-0003-2532-5349"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Wen\u2010mei Hwu","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0000-0003-2532-5349","affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5008319090","display_name":"David I. August","orcid":"https://orcid.org/0000-0003-3327-1803","observed_orcids":["https://orcid.org/0000-0003-3327-1803"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"David I. August","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0000-0003-3327-1803","affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.869,"has_fulltext":false,"cited_by_count":11,"citation_normalized_percentile":{"value":0.76661884,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":88,"max":93},"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"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.9848999977111816,"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.9848999977111816,"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.006899999920278788,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.003800000064074993,"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/predication","display_name":"predication","score":0.9559999704360962},{"id":"https://openalex.org/keywords/predicated-execution","display_name":"predicated execution","score":0.7440000176429749},{"id":"https://openalex.org/keywords/instruction-level-parallelism","display_name":"instruction-level parallelism","score":0.8220000267028809},{"id":"https://openalex.org/keywords/branch-elimination","display_name":"branch elimination","score":0.7139999866485596},{"id":"https://openalex.org/keywords/predicate-analysis","display_name":"predicate analysis","score":0.8759999871253967},{"id":"https://openalex.org/keywords/register-allocation","display_name":"register allocation","score":0.6019999980926514},{"id":"https://openalex.org/keywords/instruction-scheduling","display_name":"instruction scheduling","score":0.9399999976158142},{"id":"https://openalex.org/keywords/compiler-optimization","display_name":"compiler optimization","score":0.6690000295639038},{"id":"https://openalex.org/keywords/control-flow","display_name":"control flow","score":0.3630000054836273}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8837122917175293},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7893058657646179},{"id":"https://openalex.org/C127705205","wikidata":"https://www.wikidata.org/wiki/Q5748245","display_name":"Heuristics","level":2,"score":0.6151286959648132},{"id":"https://openalex.org/C128916667","wikidata":"https://www.wikidata.org/wiki/Q1343660","display_name":"Register allocation","level":3,"score":0.5862910747528076},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.5618091225624084},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5536714196205139},{"id":"https://openalex.org/C162262903","wikidata":"https://www.wikidata.org/wiki/Q343527","display_name":"Allocator","level":2,"score":0.5518084168434143},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.5391450524330139},{"id":"https://openalex.org/C140146324","wikidata":"https://www.wikidata.org/wiki/Q1144319","display_name":"Predicate (mathematical logic)","level":2,"score":0.5143142938613892},{"id":"https://openalex.org/C195701839","wikidata":"https://www.wikidata.org/wiki/Q4008398","display_name":"Partial evaluation","level":2,"score":0.4439288079738617},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.44247135519981384},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.43308985233306885},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.4249057173728943},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4186665117740631},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.29366475343704224},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.09386861324310303},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0},{"id":"https://openalex.org/C21547014","wikidata":"https://www.wikidata.org/wiki/Q1423657","display_name":"Operations management","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"mag:2580188581","doi":null,"is_oa":false,"landing_page_url":"https://www.ideals.illinois.edu/handle/2142/81329","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W7097412942","https://openalex.org/W4246413825","https://openalex.org/W7043876654","https://openalex.org/W7097610101","https://openalex.org/W2389852039","https://openalex.org/W1599044936","https://openalex.org/W2170158556","https://openalex.org/W7095829652","https://openalex.org/W2137081678","https://openalex.org/W2113174625"],"abstract_inverted_index":{"The":[0,161,229,278],"performance":[1,121,371],"of":[2,18,28,67,75,79,86,109,159,196,254,257,292,306,421],"modern":[3],"processors":[4],"depends":[5],"on":[6,212],"their":[7],"ability":[8],"to":[9,22,32,47,124,136,155,171,185,240,274,284,336,351,368,374,398,404],"execute":[10],"multiple":[11],"instructions":[12,69],"per":[13],"cycle,":[14],"requiring":[15,295],"increasing":[16,33],"levels":[17],"instruction-level":[19],"parallelism":[20],"(ILP)":[21],"be":[23],"exposed":[24],"in":[25,259,289,298,401,418],"programs.":[26,410],"One":[27,44,319],"the":[29,38,65,77,107,157,167,186,193,197,215,225,234,255,260,264,268,290,299,304,307,322,332,359,363,382,386,391,402,419],"major":[30],"challenges":[31],"available":[34],"ILP":[35],"is":[36,61,233,272,321],"overcoming":[37],"limitations":[39],"imposed":[40],"by":[41,70],"branch":[42,68,423],"instructions.":[43,83],"paradigm":[45],"presented":[46,151],"help":[48],"overcome":[49],"problems":[50],"with":[51,182,354],"branches":[52],"both":[53],"at":[54,58],"run":[55],"time":[56,60],"and":[57,131,175,218,247,331,349,390],"compile":[59],"predication.":[62,127,160],"Predication":[63],"allows":[64],"elimination":[66],"providing":[71,178],"an":[72,242],"alternate":[73],"means":[74],"controlling":[76],"condition":[78],"execution":[80],"for":[81,89,98,138,189,408],"individual":[82],"Effective":[84],"use":[85,105],"hardware":[87],"support":[88],"predication":[90,101,139,293],"requires":[91],"advanced":[92],"compiler":[93,149,180,205,403],"support.":[94],"\r\nMany":[95],"existing":[96],"techniques":[97,118,414],"compilation":[99,169,361],"using":[100],"make":[102],"approximations":[103],"or":[104],"heuristics,":[106],"inaccuracy":[108],"which":[110,140,327],"reduces":[111],"achievable":[112],"performance.":[113],"In":[114],"some":[115,312],"cases,":[116],"these":[117,413],"realize":[119,156],"a":[120,133,296],"loss":[122],"compared":[123],"codes":[125,417],"without":[126,294],"This":[128],"dissertation":[129],"proposes":[130],"investigates":[132],"systematic":[134],"approach":[135],"compiling":[137],"consistently":[141],"generates":[142],"efficient":[143,236,406],"predicated":[144,187,213,261,329],"code.":[145,262],"\r\nThe":[146,377],"four":[147],"key":[148],"technologies":[150],"here":[152],"work":[153,399],"synergistically":[154,400],"potential":[158,195],"Partial":[162,198,308,378],"Reverse":[163,199,309,379],"If-Conversion":[164,200,310,380],"Framework":[165,201],"provides":[166],"first":[168,235],"framework":[170],"accurately":[172],"balance":[173],"control":[174,424],"predication,":[176,412],"while":[177],"other":[179],"components":[181],"complete":[183],"access":[184],"code":[188,330,407],"further":[190],"optimization.":[191],"Though":[192],"full":[194],"remains":[202],"unexplored,":[203],"current":[204],"technology":[206],"justifies":[207],"its":[208],"worth.":[209],"\r\nTo":[210],"operate":[211],"code,":[214],"optimizer,":[216],"scheduler,":[217],"register":[219,248],"allocator":[220],"require":[221,251],"accurate":[222,252,286],"information":[223,258,288],"regarding":[224],"relationships":[226],"among":[227],"predicates.":[228],"Predicate":[230,265,269,279,333,383,387],"Analysis":[231,266,334,384],"System":[232,335],"predicate":[237],"relationship":[238],"database":[239],"provide":[241,275,285],"approximation-free":[243],"representation.":[244],"\r\nOptimization,":[245],"scheduling,":[246],"allocation":[249],"also":[250],"knowledge":[253],"flow":[256],"Using":[263,411],"System,":[267,385],"Dataflow":[270,280,388],"Graph":[271,281],"built":[273],"dataflow":[276,287,300],"information.":[277],"was":[282],"developed":[283],"presence":[291,420],"change":[297],"analysis":[301],"equations.":[302],"\r\nIn":[303],"context":[305],"Framework,":[311,381],"otherwise":[313],"unnecessarily":[314],"complex":[315,422],"optimizations":[316],"become":[317],"feasible.":[318],"example":[320],"Program":[323,392],"Decision":[324,393],"Logic":[325,394],"Optimizer,":[326],"uses":[328],"represent":[337],"program":[338,375],"decision":[339,356],"logic":[340],"as":[341],"Boolean":[342],"expressions.":[343],"These":[344],"expressions":[345],"are":[346,396],"minimized,":[347],"factored,":[348],"reformulated":[350],"create":[352],"programs":[353],"optimized":[355],"components.":[357],"Within":[358],"given":[360],"framework,":[362],"PDLO":[364],"has":[365],"been":[366],"demonstrated":[367,397],"break":[369],"many":[370],"bottlenecks":[372],"due":[373],"decision.":[376],"Graph,":[389],"Optimizer":[395],"generate":[405],"nonnumeric":[409],"effectively":[415],"optimize":[416],"flow.":[425]},"counts_by_year":[{"year":2012,"cited_by_count":1}],"updated_date":"2025-11-06T04:12:42.849631","created_date":"2017-02-03T00:00:00"}
