{"id":"https://openalex.org/W2965953627","doi":"https://doi.org/10.1177/1094342019865606","title":"Managing code transformations for better performance portability","display_name":"Managing code transformations for better performance portability","publication_year":2019,"publication_date":"2019-08-04","ids":{"openalex":"https://openalex.org/W2965953627","doi":"https://doi.org/10.1177/1094342019865606","mag":"2965953627"},"language":"en","primary_location":{"id":"doi:10.1177/1094342019865606","is_oa":false,"landing_page_url":"https://doi.org/10.1177/1094342019865606","pdf_url":null,"source":{"id":"https://openalex.org/S60606485","display_name":"The International Journal of High Performance Computing Applications","issn_l":"1094-3420","issn":["1094-3420","1741-2846"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320017","host_organization_name":"SAGE Publishing","host_organization_lineage":["https://openalex.org/P4310320017"],"host_organization_lineage_names":["SAGE Publishing"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The International Journal of High Performance Computing Applications","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/A5075888201","display_name":"Thiago Teixeira","orcid":"https://orcid.org/0000-0002-8031-0652"},"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":true,"raw_author_name":"Thiago SFX Teixeira","raw_affiliation_strings":["Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, Illinois, USA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, Illinois, USA","institution_ids":["https://openalex.org/I157725225"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5017241944","display_name":"William Gropp","orcid":"https://orcid.org/0000-0003-2905-3029"},"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":"William Gropp","raw_affiliation_strings":["Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, Illinois, USA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, Illinois, USA","institution_ids":["https://openalex.org/I157725225"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5109071293","display_name":"David Padua","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":"David Padua","raw_affiliation_strings":["Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, Illinois, USA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, Illinois, USA","institution_ids":["https://openalex.org/I157725225"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5075888201"],"corresponding_institution_ids":["https://openalex.org/I157725225"],"apc_list":null,"apc_paid":null,"fwci":0.4815,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.60579181,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":91,"max":95},"biblio":{"volume":"33","issue":"6","first_page":"1290","last_page":"1306"},"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/T12127","display_name":"Software System Performance and Reliability","score":0.998199999332428,"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9980999827384949,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8785765171051025},{"id":"https://openalex.org/keywords/software-portability","display_name":"Software portability","score":0.7970983982086182},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.6146461367607117},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6132749915122986},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5372341275215149},{"id":"https://openalex.org/keywords/process","display_name":"Process (computing)","score":0.5147997736930847},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.4897348880767822},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.46647199988365173},{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.43257689476013184},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.4130253195762634},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.38826891779899597},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.37708157300949097},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.23644235730171204}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8785765171051025},{"id":"https://openalex.org/C63000827","wikidata":"https://www.wikidata.org/wiki/Q3080428","display_name":"Software portability","level":2,"score":0.7970983982086182},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.6146461367607117},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6132749915122986},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5372341275215149},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.5147997736930847},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.4897348880767822},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.46647199988365173},{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.43257689476013184},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.4130253195762634},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.38826891779899597},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.37708157300949097},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.23644235730171204},{"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/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.1177/1094342019865606","is_oa":false,"landing_page_url":"https://doi.org/10.1177/1094342019865606","pdf_url":null,"source":{"id":"https://openalex.org/S60606485","display_name":"The International Journal of High Performance Computing Applications","issn_l":"1094-3420","issn":["1094-3420","1741-2846"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320017","host_organization_name":"SAGE Publishing","host_organization_lineage":["https://openalex.org/P4310320017"],"host_organization_lineage_names":["SAGE Publishing"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The International Journal of High Performance Computing Applications","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G6594469647","display_name":null,"funder_award_id":"1533912","funder_id":"https://openalex.org/F4320332222","funder_display_name":"University of Illinois at Urbana-Champaign"}],"funders":[{"id":"https://openalex.org/F4320332222","display_name":"University of Illinois at Urbana-Champaign","ror":"https://ror.org/047426m28"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":30,"referenced_works":["https://openalex.org/W1569090332","https://openalex.org/W1844404537","https://openalex.org/W1971367716","https://openalex.org/W1972209410","https://openalex.org/W1979457157","https://openalex.org/W1988888548","https://openalex.org/W1997126580","https://openalex.org/W1997147891","https://openalex.org/W2000873501","https://openalex.org/W2034761517","https://openalex.org/W2067913710","https://openalex.org/W2078794610","https://openalex.org/W2099625934","https://openalex.org/W2100218206","https://openalex.org/W2112502633","https://openalex.org/W2113207845","https://openalex.org/W2121546953","https://openalex.org/W2134431066","https://openalex.org/W2136952590","https://openalex.org/W2162404488","https://openalex.org/W2164197394","https://openalex.org/W2170273277","https://openalex.org/W2506485539","https://openalex.org/W2780077279","https://openalex.org/W2906926620","https://openalex.org/W2921932275","https://openalex.org/W3043123483","https://openalex.org/W3145506805","https://openalex.org/W4243796884","https://openalex.org/W4248073216"],"related_works":["https://openalex.org/W283806354","https://openalex.org/W1814870153","https://openalex.org/W4254145838","https://openalex.org/W2017260672","https://openalex.org/W2007728761","https://openalex.org/W2073844502","https://openalex.org/W1483869398","https://openalex.org/W1608659702","https://openalex.org/W2519339279","https://openalex.org/W2027184717"],"abstract_inverted_index":{"Code":[0],"optimization":[1,18,59,82,163,178,185],"is":[2,7,28,149,164,187],"an":[3,171],"intricate":[4],"task":[5],"that":[6,111,148,261],"getting":[8],"more":[9,120],"complex":[10,191],"as":[11,63,196],"computing":[12,56,128],"systems":[13,72,135,234],"evolve.":[14],"Managing":[15],"the":[16,21,39,58,80,109,143,158,161,184,220,227,239,243,255],"program":[17,183],"process,":[19],"including":[20],"implementation":[22],"and":[23,31,73,91,103,136,219],"evaluation":[24],"of":[25,50,133,145,193,209,238,257],"code":[26,81,162,210,229,244,260],"variants,":[27],"tedious,":[29],"inefficient,":[30],"errors":[32],"are":[33,66,92],"likely":[34],"to":[35,52,78,138,151,182,189,216,230,253,264],"be":[36,231],"introduced":[37],"in":[38,124,174],"process.":[40,83],"Moreover,":[41],"because":[42],"each":[43],"platform":[44],"typically":[45],"requires":[46],"a":[47,146,197,213],"different":[48,206,251],"sequence":[49],"transformations":[51,194],"fully":[53],"harness":[54],"its":[55],"power,":[57],"process":[60,186],"complexity":[61],"grows":[62],"new":[64],"platforms":[65,252],"adopted.":[67],"To":[68],"address":[69],"these":[70],"issues,":[71],"frameworks":[74],"have":[75,86],"been":[76,88],"proposed":[77,159],"automate":[79],"They,":[84],"however,":[85],"not":[87],"widely":[89],"adopted":[90],"primarily":[93],"used":[94,232],"by":[95],"experts":[96],"with":[97],"deep":[98],"knowledge":[99],"about":[100],"underlying":[101],"architecture":[102],"compiler":[104],"intricacies.":[105],"This":[106],"article":[107],"describes":[108],"requirements":[110],"we":[112,141,176],"believe":[113],"necessary":[114],"for":[115,242],"making":[116],"automatic":[117],"performance":[118,217],"tuning":[119],"broadly":[121],"used,":[122],"especially":[123],"complex,":[125],"long-lived":[126],"high-performance":[127],"applications.":[129],"Besides":[130],"discussing":[131],"limitations":[132],"current":[134],"strategies":[137],"overcome":[139],"these,":[140],"describe":[142],"design":[144],"system":[147],"able":[150,188],"semi-automatically":[152],"generate":[153,199],"efficient":[154,200,258],"platform-specific":[155,201,259],"code.":[156,202,267],"In":[157],"system,":[160],"programmer-guided,":[165],"separately":[166],"from":[167],"application":[168],"code,":[169],"on":[170,233,249],"external":[172],"file":[173],"what":[175],"call":[177],"programming.":[179],"The":[180],"language":[181],"represent":[190],"collections":[192],"and,":[195],"result,":[198],"A":[203],"database":[204],"manages":[205],"optimized":[207,228],"versions":[208],"regions,":[211],"providing":[212],"pragmatic":[214],"approach":[215],"portability,":[218],"framework":[221],"itself":[222],"has":[223],"separate":[224],"components,":[225],"allowing":[226],"without":[235],"installing":[236],"all":[237],"modules":[240],"required":[241],"generation.":[245],"We":[246],"present":[247],"experiments":[248],"two":[250],"illustrate":[254],"generation":[256],"performs":[262],"comparable":[263],"hand-optimized,":[265],"vendor-provided":[266]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2021,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
