{"id":"https://openalex.org/W2588631486","doi":"https://doi.org/10.1145/3038228.3038235","title":"Merge or Separate?","display_name":"Merge or Separate?","publication_year":2017,"publication_date":"2017-02-04","ids":{"openalex":"https://openalex.org/W2588631486","doi":"https://doi.org/10.1145/3038228.3038235","mag":"2588631486"},"language":"en","primary_location":{"id":"doi:10.1145/3038228.3038235","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3038228.3038235","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the General Purpose GPUs","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://www.research.ed.ac.uk/en/publications/e7b7bed5-588c-4fd1-b774-afdd9ca648dd","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5110053804","display_name":"Yuan Wen","orcid":null},"institutions":[{"id":"https://openalex.org/I98677209","display_name":"University of Edinburgh","ror":"https://ror.org/01nrxwf90","country_code":"GB","type":"education","lineage":["https://openalex.org/I98677209"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Yuan Wen","raw_affiliation_strings":["The University of Edinburgh"],"affiliations":[{"raw_affiliation_string":"The University of Edinburgh","institution_ids":["https://openalex.org/I98677209"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5027001025","display_name":"Michael O\u2019Boyle","orcid":"https://orcid.org/0000-0003-1619-5052"},"institutions":[{"id":"https://openalex.org/I98677209","display_name":"University of Edinburgh","ror":"https://ror.org/01nrxwf90","country_code":"GB","type":"education","lineage":["https://openalex.org/I98677209"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Michael F.P. O'Boyle","raw_affiliation_strings":["The University of Edinburgh"],"affiliations":[{"raw_affiliation_string":"The University of Edinburgh","institution_ids":["https://openalex.org/I98677209"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5110053804"],"corresponding_institution_ids":["https://openalex.org/I98677209"],"apc_list":null,"apc_paid":null,"fwci":3.3797,"has_fulltext":false,"cited_by_count":34,"citation_normalized_percentile":{"value":0.93808787,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"22","last_page":"31"},"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/T10101","display_name":"Cloud Computing and Resource Management","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.9987999796867371,"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.9114676117897034},{"id":"https://openalex.org/keywords/workload","display_name":"Workload","score":0.7079606652259827},{"id":"https://openalex.org/keywords/merge","display_name":"Merge (version control)","score":0.6825726628303528},{"id":"https://openalex.org/keywords/profiling","display_name":"Profiling (computer programming)","score":0.6118237376213074},{"id":"https://openalex.org/keywords/time-sharing","display_name":"Time-sharing","score":0.5336395502090454},{"id":"https://openalex.org/keywords/execution-time","display_name":"Execution time","score":0.48223814368247986},{"id":"https://openalex.org/keywords/schedule","display_name":"Schedule","score":0.46876901388168335},{"id":"https://openalex.org/keywords/symmetric-multiprocessor-system","display_name":"Symmetric multiprocessor system","score":0.4625401496887207},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.4481717646121979},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4447745978832245},{"id":"https://openalex.org/keywords/scheduling","display_name":"Scheduling (production processes)","score":0.4360736608505249},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.3302075266838074}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.9114676117897034},{"id":"https://openalex.org/C2778476105","wikidata":"https://www.wikidata.org/wiki/Q628539","display_name":"Workload","level":2,"score":0.7079606652259827},{"id":"https://openalex.org/C197129107","wikidata":"https://www.wikidata.org/wiki/Q1921621","display_name":"Merge (version control)","level":2,"score":0.6825726628303528},{"id":"https://openalex.org/C187191949","wikidata":"https://www.wikidata.org/wiki/Q1138496","display_name":"Profiling (computer programming)","level":2,"score":0.6118237376213074},{"id":"https://openalex.org/C38725249","wikidata":"https://www.wikidata.org/wiki/Q913876","display_name":"Time-sharing","level":2,"score":0.5336395502090454},{"id":"https://openalex.org/C2989134064","wikidata":"https://www.wikidata.org/wiki/Q288510","display_name":"Execution time","level":2,"score":0.48223814368247986},{"id":"https://openalex.org/C68387754","wikidata":"https://www.wikidata.org/wiki/Q7271585","display_name":"Schedule","level":2,"score":0.46876901388168335},{"id":"https://openalex.org/C172430144","wikidata":"https://www.wikidata.org/wiki/Q17111997","display_name":"Symmetric multiprocessor system","level":2,"score":0.4625401496887207},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.4481717646121979},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4447745978832245},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.4360736608505249},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3302075266838074},{"id":"https://openalex.org/C21547014","wikidata":"https://www.wikidata.org/wiki/Q1423657","display_name":"Operations management","level":1,"score":0.0},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/3038228.3038235","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3038228.3038235","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the General Purpose GPUs","raw_type":"proceedings-article"},{"id":"pmh:oai:pure.ed.ac.uk:openaire/e7b7bed5-588c-4fd1-b774-afdd9ca648dd","is_oa":true,"landing_page_url":"https://www.research.ed.ac.uk/en/publications/e7b7bed5-588c-4fd1-b774-afdd9ca648dd","pdf_url":null,"source":{"id":"https://openalex.org/S4406922455","display_name":"Edinburgh Research Explorer","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":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Wen, Y & O'Boyle, M 2017, Merge or Separate? Multi-job Scheduling for OpenCL Kernels on CPU/GPU Platforms. in Workshop about general purpose processing using GPUs (GPGPU-10) : Held in cooperation with 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPOPP'17). pp. 22-31, Workshop about general purpose processing using GPUs , Austin, Texas, United States, 5/02/17. https://doi.org/10.1145/3038228.3038235","raw_type":"contributionToPeriodical"},{"id":"pmh:oai:pure.ed.ac.uk:publications/e7b7bed5-588c-4fd1-b774-afdd9ca648dd","is_oa":false,"landing_page_url":"http://gpgpu10.athoura.com/GPGPU-10-Program.pdf","pdf_url":null,"source":{"id":"https://openalex.org/S4406922455","display_name":"Edinburgh Research Explorer","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":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":""}],"best_oa_location":{"id":"pmh:oai:pure.ed.ac.uk:openaire/e7b7bed5-588c-4fd1-b774-afdd9ca648dd","is_oa":true,"landing_page_url":"https://www.research.ed.ac.uk/en/publications/e7b7bed5-588c-4fd1-b774-afdd9ca648dd","pdf_url":null,"source":{"id":"https://openalex.org/S4406922455","display_name":"Edinburgh Research Explorer","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":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Wen, Y & O'Boyle, M 2017, Merge or Separate? Multi-job Scheduling for OpenCL Kernels on CPU/GPU Platforms. in Workshop about general purpose processing using GPUs (GPGPU-10) : Held in cooperation with 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPOPP'17). pp. 22-31, Workshop about general purpose processing using GPUs , Austin, Texas, United States, 5/02/17. https://doi.org/10.1145/3038228.3038235","raw_type":"contributionToPeriodical"},"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.46000000834465027,"id":"https://metadata.un.org/sdg/9"}],"awards":[{"id":"https://openalex.org/G6368762450","display_name":null,"funder_award_id":"EP/K008730/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"}],"funders":[{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":33,"referenced_works":["https://openalex.org/W1552624537","https://openalex.org/W1558412961","https://openalex.org/W1922926746","https://openalex.org/W1930795142","https://openalex.org/W1966124831","https://openalex.org/W1968047430","https://openalex.org/W1978323803","https://openalex.org/W1981377660","https://openalex.org/W1981473264","https://openalex.org/W1981939634","https://openalex.org/W1986328771","https://openalex.org/W2006197381","https://openalex.org/W2020667374","https://openalex.org/W2067272611","https://openalex.org/W2098274770","https://openalex.org/W2115312977","https://openalex.org/W2121893797","https://openalex.org/W2125551452","https://openalex.org/W2130967222","https://openalex.org/W2140348470","https://openalex.org/W2144061463","https://openalex.org/W2153190325","https://openalex.org/W2169049902","https://openalex.org/W2213612645","https://openalex.org/W2244214024","https://openalex.org/W2244521713","https://openalex.org/W2289256051","https://openalex.org/W2293468588","https://openalex.org/W2517869808","https://openalex.org/W3123057955","https://openalex.org/W4244327494","https://openalex.org/W4244454515","https://openalex.org/W6687901969"],"related_works":["https://openalex.org/W2589019771","https://openalex.org/W2345523543","https://openalex.org/W2159950491","https://openalex.org/W2968998509","https://openalex.org/W3053548161","https://openalex.org/W2180711085","https://openalex.org/W1812122285","https://openalex.org/W2130858872","https://openalex.org/W1966629366","https://openalex.org/W4285503585"],"abstract_inverted_index":{"Computer":[0],"systems":[1,15],"are":[2,58],"increasingly":[3],"heterogeneous":[4,46],"with":[5,32],"nodes":[6],"consisting":[7],"of":[8,130],"CPUs":[9],"and":[10,141,151],"GPU":[11],"accelerators.":[12],"As":[13],"such":[14],"become":[16],"mainstream,":[17],"they":[18],"move":[19],"away":[20],"from":[21],"specialized":[22],"high-performance":[23],"single":[24,62],"application":[25,35],"platforms":[26],"to":[27,45,60,82,100,103,111],"a":[28,61,74,88,93,127],"more":[29],"general":[30],"setting":[31],"multiple,":[33],"concurrent,":[34],"jobs.":[36],"Determining":[37],"how":[38],"jobs":[39,57],"should":[40],"be":[41],"dynamically":[42],"best":[43],"scheduled":[44],"devices":[47,115],"is":[48,54,67],"non-trivial.":[49],"In":[50,69],"certain":[51],"cases,":[52],"performance":[53,140],"maximized":[55],"if":[56],"allocated":[59],"device,":[63],"in":[64,87],"others,":[65],"sharing":[66],"preferable.":[68],"this":[70],"paper,":[71],"we":[72],"present":[73],"runtime":[75,99],"framework":[76],"which":[77],"schedules":[78],"multi-user":[79],"OpenCL":[80,105],"tasks":[81],"their":[83],"most":[84,113],"suitable":[85],"device":[86],"CPU/GPU":[89],"system.":[90],"We":[91,122,136],"use":[92],"machine":[94],"learning-based":[95],"predictive":[96],"model":[97],"at":[98],"detect":[101],"whether":[102],"merge":[104],"kernels":[106],"or":[107],"schedule":[108],"them":[109],"separately":[110],"the":[112,117,146],"appropriate":[114],"without":[116],"need":[118],"for":[119],"ahead-of-time":[120],"profiling.":[121],"evaluate":[123],"out":[124],"approach":[125],"over":[126,145],"wide":[128],"range":[129],"workloads,":[131],"on":[132],"two":[133],"separate":[134],"platforms.":[135,152],"consistently":[137],"show":[138],"significant":[139],"turn-around":[142],"time":[143],"improvement":[144],"state-of-the-art":[147],"across":[148],"programs,":[149],"workload,":[150]},"counts_by_year":[{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":5},{"year":2021,"cited_by_count":5},{"year":2020,"cited_by_count":6},{"year":2019,"cited_by_count":4},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":3}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2017-02-24T00:00:00"}
