{"id":"https://openalex.org/W3150476285","doi":"https://doi.org/10.1109/cgo.2011.5764669","title":"MAO &amp;#x2014; An extensible micro-architectural optimizer","display_name":"MAO &amp;#x2014; An extensible micro-architectural optimizer","publication_year":2011,"publication_date":"2011-04-01","ids":{"openalex":"https://openalex.org/W3150476285","doi":"https://doi.org/10.1109/cgo.2011.5764669","mag":"3150476285"},"language":"en","primary_location":{"id":"doi:10.1109/cgo.2011.5764669","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo.2011.5764669","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"International Symposium on Code Generation and Optimization (CGO 2011)","raw_type":"proceedings-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/A5111930678","display_name":"Robert Hundt","orcid":null},"institutions":[{"id":"https://openalex.org/I1291425158","display_name":"Google (United States)","ror":"https://ror.org/00njsd438","country_code":"US","type":"company","lineage":["https://openalex.org/I1291425158","https://openalex.org/I4210128969"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Robert Hundt","raw_affiliation_strings":["Google, Inc., Mountain View, CA, USA"],"affiliations":[{"raw_affiliation_string":"Google, Inc., Mountain View, CA, USA","institution_ids":["https://openalex.org/I1291425158"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5052674252","display_name":"Easwaran Raman","orcid":null},"institutions":[{"id":"https://openalex.org/I1291425158","display_name":"Google (United States)","ror":"https://ror.org/00njsd438","country_code":"US","type":"company","lineage":["https://openalex.org/I1291425158","https://openalex.org/I4210128969"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Easwaran Raman","raw_affiliation_strings":["Google, Inc., Mountain View, CA, USA"],"affiliations":[{"raw_affiliation_string":"Google, Inc., Mountain View, CA, USA","institution_ids":["https://openalex.org/I1291425158"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5006589246","display_name":"Martin Thuresson","orcid":null},"institutions":[{"id":"https://openalex.org/I1291425158","display_name":"Google (United States)","ror":"https://ror.org/00njsd438","country_code":"US","type":"company","lineage":["https://openalex.org/I1291425158","https://openalex.org/I4210128969"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Martin Thuresson","raw_affiliation_strings":["Google, Inc., Mountain View, CA, USA"],"affiliations":[{"raw_affiliation_string":"Google, Inc., Mountain View, CA, USA","institution_ids":["https://openalex.org/I1291425158"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5108771160","display_name":"Neil Vachharajani","orcid":null},"institutions":[{"id":"https://openalex.org/I1291425158","display_name":"Google (United States)","ror":"https://ror.org/00njsd438","country_code":"US","type":"company","lineage":["https://openalex.org/I1291425158","https://openalex.org/I4210128969"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Neil Vachharajani","raw_affiliation_strings":["Google, Inc., Mountain View, CA, USA"],"affiliations":[{"raw_affiliation_string":"Google, Inc., Mountain View, CA, USA","institution_ids":["https://openalex.org/I1291425158"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5111930678"],"corresponding_institution_ids":["https://openalex.org/I1291425158"],"apc_list":null,"apc_paid":null,"fwci":0.7556,"has_fulltext":false,"cited_by_count":17,"citation_normalized_percentile":{"value":0.75966403,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"10"},"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9969000220298767,"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/T11424","display_name":"Security and Verification in Computing","score":0.9948999881744385,"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.8353737592697144},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7391086220741272},{"id":"https://openalex.org/keywords/x86","display_name":"x86","score":0.654793381690979},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.5016474723815918},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.46776339411735535},{"id":"https://openalex.org/keywords/instruction-set","display_name":"Instruction set","score":0.4462790787220001},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4439290463924408},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.43498390913009644},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.2895609736442566},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.16091421246528625}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8353737592697144},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7391086220741272},{"id":"https://openalex.org/C170723468","wikidata":"https://www.wikidata.org/wiki/Q182933","display_name":"x86","level":3,"score":0.654793381690979},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.5016474723815918},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.46776339411735535},{"id":"https://openalex.org/C202491316","wikidata":"https://www.wikidata.org/wiki/Q272683","display_name":"Instruction set","level":2,"score":0.4462790787220001},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4439290463924408},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.43498390913009644},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.2895609736442566},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.16091421246528625},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/cgo.2011.5764669","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo.2011.5764669","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"International Symposium on Code Generation and Optimization (CGO 2011)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.6399999856948853,"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":16,"referenced_works":["https://openalex.org/W350392096","https://openalex.org/W1220457297","https://openalex.org/W1584183132","https://openalex.org/W1710575477","https://openalex.org/W1975332288","https://openalex.org/W2069811640","https://openalex.org/W2082318969","https://openalex.org/W2117741696","https://openalex.org/W2144469414","https://openalex.org/W2597683999","https://openalex.org/W4246166885","https://openalex.org/W4246438243","https://openalex.org/W4251798485","https://openalex.org/W6627981291","https://openalex.org/W6735370009","https://openalex.org/W6791853653"],"related_works":["https://openalex.org/W2002505081","https://openalex.org/W2083681681","https://openalex.org/W1992604140","https://openalex.org/W2577630842","https://openalex.org/W1172579163","https://openalex.org/W1488300410","https://openalex.org/W2138790427","https://openalex.org/W3146558274","https://openalex.org/W4246454774","https://openalex.org/W2162051035"],"abstract_inverted_index":{"Performance":[0],"matters,":[1],"and":[2,6,23,55,111,118,127,150],"so":[3,13],"does":[4],"repeatability":[5],"predictability.":[7],"Today's":[8],"processors'":[9],"micro-architectures":[10],"have":[11],"become":[12],"complex":[14],"as":[15,35,102,115,145],"to":[16,45,59,71,76,123,177],"now":[17],"contain":[18],"many":[19],"undocumented,":[20],"not":[21],"understood,":[22],"even":[24],"puzzling":[25],"performance":[26,47,56,183],"cliffs.":[27],"Small":[28],"changes":[29],"in":[30],"the":[31,36,50],"instruction":[32,125],"stream,":[33],"such":[34,101,114],"insertion":[37,147],"of":[38,52,106,134,148,153],"a":[39,87,91,119,132],"single":[40],"NOP":[41],"instruction,":[42],"can":[43,158,169,174],"lead":[44],"significant":[46],"deltas,":[48],"with":[49],"effect":[51],"exposing":[53],"compiler":[54,163],"optimization":[57],"efforts":[58],"perceived":[60],"unwanted":[61],"randomness.":[62],"This":[63,129],"paper":[64],"presents":[65],"MAO,":[66],"an":[67],"extensible":[68],"micro-architectural":[69,179],"assembly":[70,72,166],"optimizer,":[73],"which":[74],"seeks":[75],"address":[77],"this":[78],"problem":[79],"for":[80,136],"x86/64":[81],"processors.":[82],"In":[83],"essence,":[84],"MAO":[85,157,173],"is":[86],"thin":[88],"wrapper":[89],"around":[90],"common":[92],"open":[93],"source":[94],"assembler":[95],"infrastructure.":[96],"It":[97],"offers":[98],"basic":[99],"operations,":[100],"creation":[103],"or":[104,168],"modification":[105],"instructions,":[107],"simple":[108],"data-flow":[109],"analysis,":[110],"advanced":[112],"infra-structure,":[113],"loop":[116],"recognition,":[117],"repeated":[120],"relaxation":[121],"algorithm":[122],"compute":[124],"addresses":[126],"lengths.":[128],"infrastructure":[130],"enables":[131],"plethora":[133],"passes":[135],"pattern":[137],"matching,":[138],"alignment":[139],"specific":[140],"optimizations,":[141],"peep-holes,":[142],"experiments":[143],"(such":[144],"random":[146],"NOPs),":[149],"fast":[151],"prototyping":[152],"more":[154],"sophisticated":[155],"optimizations.":[156],"be":[159,170,175],"integrated":[160],"into":[161],"any":[162],"that":[164],"emits":[165],"code,":[167],"used":[171,176],"standalone.":[172],"discover":[178],"details":[180],"semi-automatically.":[181],"Initial":[182],"results":[184],"are":[185],"encouraging.":[186]},"counts_by_year":[{"year":2019,"cited_by_count":2},{"year":2017,"cited_by_count":5},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":5},{"year":2013,"cited_by_count":2},{"year":2012,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
