{"id":"https://openalex.org/W4253128333","doi":"https://doi.org/10.1109/iccad.2015.7372553","title":"ElasticFlow: A complexity-effective approach for pipelining irregular loop nests","display_name":"ElasticFlow: A complexity-effective approach for pipelining irregular loop nests","publication_year":2015,"publication_date":"2015-11-01","ids":{"openalex":"https://openalex.org/W4253128333","doi":"https://doi.org/10.1109/iccad.2015.7372553"},"language":"en","primary_location":{"id":"doi:10.1109/iccad.2015.7372553","is_oa":false,"landing_page_url":"https://doi.org/10.1109/iccad.2015.7372553","pdf_url":null,"source":{"id":"https://openalex.org/S4363608324","display_name":"2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD)","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/A5110774377","display_name":"Mingxing Tan","orcid":null},"institutions":[{"id":"https://openalex.org/I205783295","display_name":"Cornell University","ror":"https://ror.org/05bnh6r87","country_code":"US","type":"education","lineage":["https://openalex.org/I205783295"]},{"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":"Mingxing Tan","raw_affiliation_strings":["Google Inc., Mountain View, CA","School of Electrical and Computer Engineering, Cornell University, Ithaca, NY"],"affiliations":[{"raw_affiliation_string":"Google Inc., Mountain View, CA","institution_ids":["https://openalex.org/I1291425158"]},{"raw_affiliation_string":"School of Electrical and Computer Engineering, Cornell University, Ithaca, NY","institution_ids":["https://openalex.org/I205783295"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5102779166","display_name":"Gai Liu","orcid":"https://orcid.org/0000-0001-8538-686X"},"institutions":[{"id":"https://openalex.org/I205783295","display_name":"Cornell University","ror":"https://ror.org/05bnh6r87","country_code":"US","type":"education","lineage":["https://openalex.org/I205783295"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Gai Liu","raw_affiliation_strings":["School of Electrical and Computer Engineering, Cornell University, Ithaca, NY"],"affiliations":[{"raw_affiliation_string":"School of Electrical and Computer Engineering, Cornell University, Ithaca, NY","institution_ids":["https://openalex.org/I205783295"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5033038201","display_name":"Ritchie Zhao","orcid":"https://orcid.org/0000-0003-1656-9165"},"institutions":[{"id":"https://openalex.org/I205783295","display_name":"Cornell University","ror":"https://ror.org/05bnh6r87","country_code":"US","type":"education","lineage":["https://openalex.org/I205783295"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ritchie Zhao","raw_affiliation_strings":["School of Electrical and Computer Engineering, Cornell University, Ithaca, NY"],"affiliations":[{"raw_affiliation_string":"School of Electrical and Computer Engineering, Cornell University, Ithaca, NY","institution_ids":["https://openalex.org/I205783295"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5030894829","display_name":"Steve Dai","orcid":"https://orcid.org/0000-0002-5045-1964"},"institutions":[{"id":"https://openalex.org/I205783295","display_name":"Cornell University","ror":"https://ror.org/05bnh6r87","country_code":"US","type":"education","lineage":["https://openalex.org/I205783295"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Steve Dai","raw_affiliation_strings":["School of Electrical and Computer Engineering, Cornell University, Ithaca, NY"],"affiliations":[{"raw_affiliation_string":"School of Electrical and Computer Engineering, Cornell University, Ithaca, NY","institution_ids":["https://openalex.org/I205783295"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5037210004","display_name":"Zhiru Zhang","orcid":"https://orcid.org/0000-0002-0778-0308"},"institutions":[{"id":"https://openalex.org/I205783295","display_name":"Cornell University","ror":"https://ror.org/05bnh6r87","country_code":"US","type":"education","lineage":["https://openalex.org/I205783295"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Zhiru Zhang","raw_affiliation_strings":["School of Electrical and Computer Engineering, Cornell University, Ithaca, NY"],"affiliations":[{"raw_affiliation_string":"School of Electrical and Computer Engineering, Cornell University, Ithaca, NY","institution_ids":["https://openalex.org/I205783295"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5110774377"],"corresponding_institution_ids":["https://openalex.org/I1291425158","https://openalex.org/I205783295"],"apc_list":null,"apc_paid":null,"fwci":3.3435,"has_fulltext":false,"cited_by_count":36,"citation_normalized_percentile":{"value":0.94,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"78","last_page":"85"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10904","display_name":"Embedded Systems Design 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/T10904","display_name":"Embedded Systems Design 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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"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/T10829","display_name":"Interconnection Networks and Systems","score":0.9993000030517578,"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.814427375793457},{"id":"https://openalex.org/keywords/software-pipelining","display_name":"Software pipelining","score":0.7551435828208923},{"id":"https://openalex.org/keywords/loop","display_name":"Loop (graph theory)","score":0.7070626616477966},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6820296049118042},{"id":"https://openalex.org/keywords/loop-tiling","display_name":"Loop tiling","score":0.6453187465667725},{"id":"https://openalex.org/keywords/loop-unrolling","display_name":"Loop unrolling","score":0.6355527639389038},{"id":"https://openalex.org/keywords/loop-fission","display_name":"Loop fission","score":0.6236072182655334},{"id":"https://openalex.org/keywords/field-programmable-gate-array","display_name":"Field-programmable gate array","score":0.585341215133667},{"id":"https://openalex.org/keywords/reduction","display_name":"Reduction (mathematics)","score":0.46724820137023926},{"id":"https://openalex.org/keywords/nested-loop-join","display_name":"Nested loop join","score":0.432756245136261},{"id":"https://openalex.org/keywords/for-loop","display_name":"For loop","score":0.4282686710357666},{"id":"https://openalex.org/keywords/high-level-synthesis","display_name":"High-level synthesis","score":0.4206641912460327},{"id":"https://openalex.org/keywords/very-long-instruction-word","display_name":"Very long instruction word","score":0.41162699460983276},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.36281707882881165},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.24783220887184143},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.10629847645759583},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.0748729407787323}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.814427375793457},{"id":"https://openalex.org/C188854837","wikidata":"https://www.wikidata.org/wiki/Q268469","display_name":"Software pipelining","level":3,"score":0.7551435828208923},{"id":"https://openalex.org/C184670325","wikidata":"https://www.wikidata.org/wiki/Q512604","display_name":"Loop (graph theory)","level":2,"score":0.7070626616477966},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6820296049118042},{"id":"https://openalex.org/C11799548","wikidata":"https://www.wikidata.org/wiki/Q6675847","display_name":"Loop tiling","level":3,"score":0.6453187465667725},{"id":"https://openalex.org/C76970557","wikidata":"https://www.wikidata.org/wiki/Q1869750","display_name":"Loop unrolling","level":3,"score":0.6355527639389038},{"id":"https://openalex.org/C134718785","wikidata":"https://www.wikidata.org/wiki/Q6675821","display_name":"Loop fission","level":3,"score":0.6236072182655334},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.585341215133667},{"id":"https://openalex.org/C111335779","wikidata":"https://www.wikidata.org/wiki/Q3454686","display_name":"Reduction (mathematics)","level":2,"score":0.46724820137023926},{"id":"https://openalex.org/C1306188","wikidata":"https://www.wikidata.org/wiki/Q4060687","display_name":"Nested loop join","level":2,"score":0.432756245136261},{"id":"https://openalex.org/C2779624466","wikidata":"https://www.wikidata.org/wiki/Q838119","display_name":"For loop","level":3,"score":0.4282686710357666},{"id":"https://openalex.org/C58013763","wikidata":"https://www.wikidata.org/wiki/Q5754574","display_name":"High-level synthesis","level":3,"score":0.4206641912460327},{"id":"https://openalex.org/C170595534","wikidata":"https://www.wikidata.org/wiki/Q249743","display_name":"Very long instruction word","level":2,"score":0.41162699460983276},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.36281707882881165},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.24783220887184143},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.10629847645759583},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.0748729407787323},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/iccad.2015.7372553","is_oa":false,"landing_page_url":"https://doi.org/10.1109/iccad.2015.7372553","pdf_url":null,"source":{"id":"https://openalex.org/S4363608324","display_name":"2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.44999998807907104,"id":"https://metadata.un.org/sdg/12","display_name":"Responsible consumption and production"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":25,"referenced_works":["https://openalex.org/W1494930385","https://openalex.org/W1908397450","https://openalex.org/W2018055497","https://openalex.org/W2061230651","https://openalex.org/W2061988908","https://openalex.org/W2075198393","https://openalex.org/W2107750539","https://openalex.org/W2111252763","https://openalex.org/W2122078405","https://openalex.org/W2123412205","https://openalex.org/W2141280299","https://openalex.org/W2152944133","https://openalex.org/W2154009134","https://openalex.org/W2166029537","https://openalex.org/W2170043488","https://openalex.org/W2170794761","https://openalex.org/W2215244614","https://openalex.org/W2257686317","https://openalex.org/W2999097477","https://openalex.org/W4239489018","https://openalex.org/W4241148135","https://openalex.org/W4246166885","https://openalex.org/W6637631891","https://openalex.org/W6688779168","https://openalex.org/W6692159191"],"related_works":["https://openalex.org/W30800889","https://openalex.org/W2340721088","https://openalex.org/W1540273122","https://openalex.org/W2092462759","https://openalex.org/W3115899447","https://openalex.org/W1993227264","https://openalex.org/W2128467905","https://openalex.org/W2212628571","https://openalex.org/W2060569848","https://openalex.org/W4253128333"],"abstract_inverted_index":{"Modern":[0],"high-level":[1],"synthesis":[2,59],"(HLS)":[3],"tools":[4],"commonly":[5],"employ":[6],"pipelining":[7,29],"to":[8,67,85],"achieve":[9],"efficient":[10],"loop":[11,19,31,71,89],"acceleration":[12],"by":[13],"overlapping":[14],"the":[15],"execution":[16],"of":[17,62,70,105],"successive":[18],"iterations.":[20],"However,":[21],"existing":[22],"HLS":[23,118],"techniques":[24],"provide":[25],"inadequate":[26],"support":[27],"for":[28,96,120],"irregular":[30],"nests":[32],"that":[33],"contain":[34],"dynamic-bound":[35],"inner":[36,65,94],"loops,":[37],"where":[38],"unrolling":[39],"is":[40],"either":[41,83],"very":[42],"expensive":[43],"or":[44,90],"not":[45],"even":[46],"applicable.":[47],"To":[48],"overcome":[49],"this":[50],"major":[51],"limitation,":[52],"we":[53],"propose":[54],"ElasticFlow,":[55],"a":[56,76,103,114],"novel":[57],"architectural":[58],"approach":[60],"capable":[61],"dynamically":[63],"distributing":[64],"loops":[66,95],"an":[68,87],"array":[69],"processing":[72],"units":[73],"(LPUs)":[74],"in":[75],"complexity-effective":[77],"manner.":[78],"These":[79],"LPUs":[80],"can":[81],"be":[82],"specialized":[84],"execute":[86],"individual":[88],"shared":[91],"amongst":[92],"multiple":[93],"area":[97],"reduction.":[98],"We":[99],"evaluate":[100],"ElasticFlow":[101],"using":[102],"variety":[104],"real-life":[106],"applications":[107],"and":[108],"demonstrate":[109],"significant":[110],"performance":[111],"improvements":[112],"over":[113],"widely":[115],"used":[116],"commercial":[117],"tool":[119],"Xilinx":[121],"FPGAs.":[122]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":6},{"year":2020,"cited_by_count":3},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":9},{"year":2016,"cited_by_count":7}],"updated_date":"2026-02-25T08:12:03.925757","created_date":"2025-10-10T00:00:00"}
