{"id":"https://openalex.org/W4214638978","doi":"https://doi.org/10.1145/3503222.3507748","title":"HeteroGen: transpiling C to heterogeneous HLS code with automated test generation and program repair","display_name":"HeteroGen: transpiling C to heterogeneous HLS code with automated test generation and program repair","publication_year":2022,"publication_date":"2022-02-22","ids":{"openalex":"https://openalex.org/W4214638978","doi":"https://doi.org/10.1145/3503222.3507748"},"language":"en","primary_location":{"id":"doi:10.1145/3503222.3507748","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3503222.3507748","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3503222.3507748","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3503222.3507748","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5107250096","display_name":"Qian Zhang","orcid":"https://orcid.org/0000-0002-4002-4379"},"institutions":[{"id":"https://openalex.org/I161318765","display_name":"University of California, Los Angeles","ror":"https://ror.org/046rm7j60","country_code":"US","type":"education","lineage":["https://openalex.org/I161318765"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Qian Zhang","raw_affiliation_strings":["University of California at Los Angeles, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Los Angeles, USA","institution_ids":["https://openalex.org/I161318765"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5107245722","display_name":"Jiyuan Wang","orcid":"https://orcid.org/0009-0005-2778-8840"},"institutions":[{"id":"https://openalex.org/I161318765","display_name":"University of California, Los Angeles","ror":"https://ror.org/046rm7j60","country_code":"US","type":"education","lineage":["https://openalex.org/I161318765"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jiyuan Wang","raw_affiliation_strings":["University of California at Los Angeles, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Los Angeles, USA","institution_ids":["https://openalex.org/I161318765"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101967307","display_name":"Guoqing Xu","orcid":"https://orcid.org/0000-0003-4737-2146"},"institutions":[{"id":"https://openalex.org/I161318765","display_name":"University of California, Los Angeles","ror":"https://ror.org/046rm7j60","country_code":"US","type":"education","lineage":["https://openalex.org/I161318765"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Guoqing Harry Xu","raw_affiliation_strings":["University of California at Los Angeles, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Los Angeles, USA","institution_ids":["https://openalex.org/I161318765"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5049451101","display_name":"Miryung Kim","orcid":"https://orcid.org/0000-0003-3802-1512"},"institutions":[{"id":"https://openalex.org/I161318765","display_name":"University of California, Los Angeles","ror":"https://ror.org/046rm7j60","country_code":"US","type":"education","lineage":["https://openalex.org/I161318765"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Miryung Kim","raw_affiliation_strings":["University of California at Los Angeles, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Los Angeles, USA","institution_ids":["https://openalex.org/I161318765"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5107250096"],"corresponding_institution_ids":["https://openalex.org/I161318765"],"apc_list":null,"apc_paid":null,"fwci":2.3341,"has_fulltext":true,"cited_by_count":12,"citation_normalized_percentile":{"value":0.87304723,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":91,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"1017","last_page":"1029"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9994000196456909,"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.9994000196456909,"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/computer-science","display_name":"Computer science","score":0.8415005207061768},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5737826824188232},{"id":"https://openalex.org/keywords/program-analysis","display_name":"Program analysis","score":0.4993407726287842},{"id":"https://openalex.org/keywords/domain","display_name":"Domain (mathematical analysis)","score":0.42233338952064514},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.39342963695526123},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.35799461603164673},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.3525053858757019}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8415005207061768},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5737826824188232},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.4993407726287842},{"id":"https://openalex.org/C36503486","wikidata":"https://www.wikidata.org/wiki/Q11235244","display_name":"Domain (mathematical analysis)","level":2,"score":0.42233338952064514},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.39342963695526123},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.35799461603164673},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.3525053858757019},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"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},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3503222.3507748","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3503222.3507748","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3503222.3507748","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3503222.3507748","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3503222.3507748","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3503222.3507748","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems","raw_type":"proceedings-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G2637195115","display_name":null,"funder_award_id":"4-18-1-","funder_id":"https://openalex.org/F4320337345","funder_display_name":"Office of Naval Research"},{"id":"https://openalex.org/G2709462027","display_name":null,"funder_award_id":"N00014-18-1-2037","funder_id":"https://openalex.org/F4320337345","funder_display_name":"Office of Naval Research"},{"id":"https://openalex.org/G5501761068","display_name":null,"funder_award_id":"4-16-1-","funder_id":"https://openalex.org/F4320337345","funder_display_name":"Office of Naval Research"},{"id":"https://openalex.org/G8876996369","display_name":null,"funder_award_id":"N00014","funder_id":"https://openalex.org/F4320337345","funder_display_name":"Office of Naval Research"}],"funders":[{"id":"https://openalex.org/F4320332195","display_name":"Samsung","ror":"https://ror.org/04w3jy968"},{"id":"https://openalex.org/F4320337345","display_name":"Office of Naval Research","ror":"https://ror.org/00rk2pe57"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4214638978.pdf","grobid_xml":"https://content.openalex.org/works/W4214638978.grobid-xml"},"referenced_works_count":53,"referenced_works":["https://openalex.org/W1613094071","https://openalex.org/W1969325954","https://openalex.org/W1979660747","https://openalex.org/W2012114780","https://openalex.org/W2018055497","https://openalex.org/W2063387237","https://openalex.org/W2116433835","https://openalex.org/W2122947685","https://openalex.org/W2133068784","https://openalex.org/W2166029537","https://openalex.org/W2168156367","https://openalex.org/W2294628582","https://openalex.org/W2362984953","https://openalex.org/W2400994325","https://openalex.org/W2512380954","https://openalex.org/W2515747181","https://openalex.org/W2558370909","https://openalex.org/W2604766223","https://openalex.org/W2606722458","https://openalex.org/W2616014673","https://openalex.org/W2788211964","https://openalex.org/W2794670092","https://openalex.org/W2794992746","https://openalex.org/W2883929540","https://openalex.org/W2884267664","https://openalex.org/W2892187475","https://openalex.org/W2895570420","https://openalex.org/W2925360983","https://openalex.org/W2961870034","https://openalex.org/W2963298680","https://openalex.org/W3010835436","https://openalex.org/W3011239338","https://openalex.org/W3011348040","https://openalex.org/W3011801493","https://openalex.org/W3019428952","https://openalex.org/W3026844281","https://openalex.org/W3089358079","https://openalex.org/W3089621332","https://openalex.org/W3091231896","https://openalex.org/W3100698844","https://openalex.org/W3102086861","https://openalex.org/W3121467130","https://openalex.org/W3140595400","https://openalex.org/W3155057378","https://openalex.org/W3155384757","https://openalex.org/W3156546842","https://openalex.org/W3156553575","https://openalex.org/W3194741001","https://openalex.org/W4230190751","https://openalex.org/W4231241365","https://openalex.org/W4255632703","https://openalex.org/W4256028358","https://openalex.org/W4288614128"],"related_works":["https://openalex.org/W2115140794","https://openalex.org/W2041120224","https://openalex.org/W4312275919","https://openalex.org/W2613115449","https://openalex.org/W2140233454","https://openalex.org/W2067902980","https://openalex.org/W1504320321","https://openalex.org/W2338293335","https://openalex.org/W2039378765","https://openalex.org/W2056396287"],"abstract_inverted_index":{"Despite":[0],"the":[1,10,50,56,63,73,85,138],"trend":[2],"of":[3,12,20,52,58,76],"incorporating":[4],"heterogeneity":[5],"and":[6,35,45,79,89,103,108],"specialization":[7],"in":[8],"hardware,":[9],"development":[11],"heterogeneous":[13,64],"applications":[14],"is":[15,54,81],"limited":[16],"to":[17,49,62,128],"a":[18],"handful":[19],"engineers":[21],"with":[22,41],"deep":[23],"hardware":[24],"expertise.":[25],"We":[26],"propose":[27],"HeteroGen":[28,53,93,120],"that":[29],"takes":[30],"C/C++":[31,87],"code":[32],"as":[33],"input":[34],"automatically":[36],"generates":[37],"an":[38],"HLS":[39,77],"version":[40],"test":[42,114,122],"behavior":[43,107],"preservation":[44],"better":[46],"performance.":[47],"Key":[48],"success":[51],"adapting":[55],"idea":[57],"search-based":[59],"program":[60,96],"repair":[61],"computing":[65],"domain,":[66],"while":[67,132],"addressing":[68],"two":[69],"technical":[70],"challenges.":[71],"First,":[72],"turn-around":[74],"time":[75],"compilation":[78,88],"simulation":[80],"much":[82],"longer":[83],"than":[84],"usual":[86],"execution":[90],"time;":[91],"therefore,":[92],"applies":[94],"pattern-oriented":[95],"edits":[97],"guided":[98],"by":[99],"common":[100],"fix":[101],"patterns":[102],"their":[104],"dependences.":[105],"Second,":[106],"performance":[109],"checking":[110,126],"requires":[111],"testing,":[112],"but":[113],"cases":[115],"are":[116],"often":[117],"unavailable.":[118],"Thus,":[119],"auto-generates":[121],"inputs":[123],"suitable":[124],"for":[125,137],"C":[127,140],"HLS-C":[129],"conversion":[130],"errors,":[131],"providing":[133],"high":[134],"branch":[135],"coverage":[136],"original":[139],"code.":[141]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":2}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
