{"id":"https://openalex.org/W2906716259","doi":"https://doi.org/10.1109/dasip.2018.8596931","title":"Design Flow for Portable Dataflow Programming of Heterogeneous Platforms","display_name":"Design Flow for Portable Dataflow Programming of Heterogeneous Platforms","publication_year":2018,"publication_date":"2018-10-01","ids":{"openalex":"https://openalex.org/W2906716259","doi":"https://doi.org/10.1109/dasip.2018.8596931","mag":"2906716259"},"language":"en","primary_location":{"id":"doi:10.1109/dasip.2018.8596931","is_oa":false,"landing_page_url":"https://doi.org/10.1109/dasip.2018.8596931","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2018 Conference on Design and Architectures for Signal and Image Processing (DASIP)","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/A5077772076","display_name":"Jani Boutellier","orcid":"https://orcid.org/0000-0001-7606-3655"},"institutions":[{"id":"https://openalex.org/I4210133110","display_name":"Tampere University","ror":null,"country_code":"FI","type":null,"lineage":["https://openalex.org/I4210133110"]}],"countries":["FI"],"is_corresponding":true,"raw_author_name":"Jani Boutellier","raw_affiliation_strings":["Laboratory of Pervasive Computing Tampere University of Technology Tampere, Finland"],"affiliations":[{"raw_affiliation_string":"Laboratory of Pervasive Computing Tampere University of Technology Tampere, Finland","institution_ids":["https://openalex.org/I4210133110"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5004289843","display_name":"Henri Lunnikivi","orcid":"https://orcid.org/0000-0003-4817-2939"},"institutions":[{"id":"https://openalex.org/I4210133110","display_name":"Tampere University","ror":null,"country_code":"FI","type":null,"lineage":["https://openalex.org/I4210133110"]}],"countries":["FI"],"is_corresponding":false,"raw_author_name":"Henri Lunnikivi","raw_affiliation_strings":["Laboratory of Pervasive Computing Tampere University of Technology Tampere, Finland"],"affiliations":[{"raw_affiliation_string":"Laboratory of Pervasive Computing Tampere University of Technology Tampere, Finland","institution_ids":["https://openalex.org/I4210133110"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5077772076"],"corresponding_institution_ids":["https://openalex.org/I4210133110"],"apc_list":null,"apc_paid":null,"fwci":0.2525,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.53581032,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":94},"biblio":{"volume":"75","issue":null,"first_page":"106","last_page":"111"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10904","display_name":"Embedded Systems Design 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/T10904","display_name":"Embedded Systems Design 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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9997000098228455,"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.9994000196456909,"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.8657294511795044},{"id":"https://openalex.org/keywords/dataflow","display_name":"Dataflow","score":0.7973660826683044},{"id":"https://openalex.org/keywords/cuda","display_name":"CUDA","score":0.6809388995170593},{"id":"https://openalex.org/keywords/software-portability","display_name":"Software portability","score":0.6139517426490784},{"id":"https://openalex.org/keywords/digital-signal-processing","display_name":"Digital signal processing","score":0.5220496654510498},{"id":"https://openalex.org/keywords/design-flow","display_name":"Design flow","score":0.501939058303833},{"id":"https://openalex.org/keywords/graphics-processing-unit","display_name":"Graphics processing unit","score":0.4924395978450775},{"id":"https://openalex.org/keywords/stream-processing","display_name":"Stream processing","score":0.4825660288333893},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4815007448196411},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.4590616822242737},{"id":"https://openalex.org/keywords/multi-core-processor","display_name":"Multi-core processor","score":0.4568338096141815},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4494664967060089},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.4311654567718506},{"id":"https://openalex.org/keywords/general-purpose-computing-on-graphics-processing-units","display_name":"General-purpose computing on graphics processing units","score":0.42028123140335083},{"id":"https://openalex.org/keywords/x86","display_name":"x86","score":0.41850823163986206},{"id":"https://openalex.org/keywords/graphics","display_name":"Graphics","score":0.3469705581665039},{"id":"https://openalex.org/keywords/computer-hardware","display_name":"Computer hardware","score":0.30720457434654236},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.2762458622455597},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.20802226662635803}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8657294511795044},{"id":"https://openalex.org/C96324660","wikidata":"https://www.wikidata.org/wiki/Q205446","display_name":"Dataflow","level":2,"score":0.7973660826683044},{"id":"https://openalex.org/C2778119891","wikidata":"https://www.wikidata.org/wiki/Q477690","display_name":"CUDA","level":2,"score":0.6809388995170593},{"id":"https://openalex.org/C63000827","wikidata":"https://www.wikidata.org/wiki/Q3080428","display_name":"Software portability","level":2,"score":0.6139517426490784},{"id":"https://openalex.org/C84462506","wikidata":"https://www.wikidata.org/wiki/Q173142","display_name":"Digital signal processing","level":2,"score":0.5220496654510498},{"id":"https://openalex.org/C37135326","wikidata":"https://www.wikidata.org/wiki/Q931942","display_name":"Design flow","level":2,"score":0.501939058303833},{"id":"https://openalex.org/C2779851693","wikidata":"https://www.wikidata.org/wiki/Q183484","display_name":"Graphics processing unit","level":2,"score":0.4924395978450775},{"id":"https://openalex.org/C107027933","wikidata":"https://www.wikidata.org/wiki/Q2006448","display_name":"Stream processing","level":2,"score":0.4825660288333893},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4815007448196411},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.4590616822242737},{"id":"https://openalex.org/C78766204","wikidata":"https://www.wikidata.org/wiki/Q555032","display_name":"Multi-core processor","level":2,"score":0.4568338096141815},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4494664967060089},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.4311654567718506},{"id":"https://openalex.org/C50630238","wikidata":"https://www.wikidata.org/wiki/Q971505","display_name":"General-purpose computing on graphics processing units","level":3,"score":0.42028123140335083},{"id":"https://openalex.org/C170723468","wikidata":"https://www.wikidata.org/wiki/Q182933","display_name":"x86","level":3,"score":0.41850823163986206},{"id":"https://openalex.org/C21442007","wikidata":"https://www.wikidata.org/wiki/Q1027879","display_name":"Graphics","level":2,"score":0.3469705581665039},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.30720457434654236},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.2762458622455597},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.20802226662635803},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/dasip.2018.8596931","is_oa":false,"landing_page_url":"https://doi.org/10.1109/dasip.2018.8596931","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2018 Conference on Design and Architectures for Signal and Image Processing (DASIP)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320321108","display_name":"Academy of Finland","ror":"https://ror.org/05k73zm37"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":20,"referenced_works":["https://openalex.org/W1974881631","https://openalex.org/W1991539813","https://openalex.org/W2014406284","https://openalex.org/W2055312318","https://openalex.org/W2059892913","https://openalex.org/W2073877876","https://openalex.org/W2076353126","https://openalex.org/W2091158003","https://openalex.org/W2104922219","https://openalex.org/W2117678124","https://openalex.org/W2160084399","https://openalex.org/W2163841853","https://openalex.org/W2186779881","https://openalex.org/W2189565950","https://openalex.org/W2471164860","https://openalex.org/W2560906966","https://openalex.org/W2581899212","https://openalex.org/W2659864996","https://openalex.org/W2768363900","https://openalex.org/W4251637954"],"related_works":["https://openalex.org/W1989140795","https://openalex.org/W2113327063","https://openalex.org/W1981433684","https://openalex.org/W2077180914","https://openalex.org/W2175563412","https://openalex.org/W2403307847","https://openalex.org/W2975331349","https://openalex.org/W2521218765","https://openalex.org/W2353118848","https://openalex.org/W2116516796"],"abstract_inverted_index":{"The":[0,154,167],"processing":[1,30,34,48,89,98],"platforms":[2],"of":[3,130,169,187],"contemporary":[4],"mobile":[5],"devices":[6],"are":[7,65,73],"commonly":[8,74],"built":[9,159],"around":[10,160],"System-on-Chip":[11],"(SoC)":[12],"solutions":[13],"that":[14,82,108,141],"contain":[15],"general":[16],"purpose":[17],"processor":[18],"cores":[19],"(GPPs),":[20],"digital":[21],"signal":[22],"processors,":[23],"accelerator":[24],"circuits,":[25],"and":[26,53,151,180],"possibly":[27],"a":[28,79,96,104,115,123,137,162],"graphics":[29],"unit":[31],"(GPU)":[32],"as":[33,45],"resources.":[35],"Software":[36],"design":[37,106,156,171,196],"for":[38,87,145],"such":[39],"SoCs":[40],"can":[41],"be":[42,60,93],"very":[43],"time-consuming,":[44],"the":[46,118,127,170,181,194],"various":[47],"resource":[49,99],"types":[50],"(e.g.":[51],"GPPs":[52,72],"GPUs)":[54],"conventionally":[55],"require":[56],"different":[57,97],"languages":[58],"to":[59],"programmed.":[61],"For":[62],"example,":[63],"GPUs":[64],"programmed":[66,75],"via":[67],"CUDA":[68],"or":[69],"OpenCL,":[70,146],"whereas":[71,126],"in":[76,135],"C++.":[77],"As":[78],"consequence,":[80],"code":[81,111,143,192],"has":[83],"originally":[84],"been":[85],"written":[86,134],"one":[88],"resource,":[90],"cannot":[91],"necessarily":[92],"executed":[94],"on":[95],"type.":[100],"This":[101],"paper":[102],"presents":[103],"novel":[105],"flow":[107,157,172,197],"addresses":[109],"this":[110],"portability":[112],"challenge.":[113],"On":[114],"high":[116],"level":[117],"application":[119,131],"is":[120,133,158,173,198],"described":[121],"using":[122],"dataflow":[124,164],"graph,":[125],"detailed":[128],"functionality":[129,168],"components":[132],"Halide,":[136],"performance":[138],"portable":[139],"language":[140],"provides":[142],"generation":[144],"CUDA,":[147],"HVX":[148],"DSP,":[149],"ARM":[150],"x86":[152],"targets.":[153],"proposed":[155,195],"PRUNE,":[161],"recent":[163],"programming":[165],"framework.":[166],"presented":[174],"with":[175],"three":[176],"case":[177],"study":[178],"applications,":[179],"measurements":[182],"show":[183],"an":[184],"average":[185],"speedup":[186],"9.3\u00d7":[188],"over":[189],"single-core":[190],"C":[191],"when":[193],"used.":[199]},"counts_by_year":[{"year":2019,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
