Developing Adaptive Multi-Device Applications With the Heterogeneous Programming Library

dc.authorscopusid 50862254800
dc.authorscopusid 6601990115
dc.authorscopusid 6601906472
dc.authorscopusid 25959885600
dc.authorscopusid 35404320600
dc.contributor.author Viñas,M.
dc.contributor.author Bozkuş, Zeki
dc.contributor.author Bozkus,Z.
dc.contributor.author Fraguela,B.B.
dc.contributor.author Andrade,D.
dc.contributor.author Doallo,R.
dc.contributor.other Computer Engineering
dc.date.accessioned 2024-10-15T19:41:51Z
dc.date.available 2024-10-15T19:41:51Z
dc.date.issued 2015
dc.department Kadir Has University en_US
dc.department-temp Viñas M., Grupo de Arquitectura de Computadores, Universidade da Coruña, A Coruña, Spain; Bozkus Z., Department of Computer Engineering, Kadir Has Üniversitesi, Istanbul, Turkey; Fraguela B.B., Grupo de Arquitectura de Computadores, Universidade da Coruña, A Coruña, Spain; Andrade D., Grupo de Arquitectura de Computadores, Universidade da Coruña, A Coruña, Spain; Doallo R., Grupo de Arquitectura de Computadores, Universidade da Coruña, A Coruña, Spain en_US
dc.description.abstract The usage of heterogeneous devices presents two main problems. One is their complex programming, a problem that grows when multiple devices are used. The second issue is that even if the codes for these devices can be portable on top of OpenCL, they lack performance portability, effectively requiring specialized implementations for each device to get good performance. In this paper we extend the Heterogeneous Programming Library (HPL), which improves the usability of heterogeneous systems on top of OpenCL, to better handle both issues. First, we provide HPL with mechanisms to support the implementation of any multi-device application that requires arbitrary patterns of communication between several devices and a host memory. In a second stage HPL is improved with an adaptive scheme to optimize communications between devices depending on the execution environment. An evaluation using benchmarks with very different nature shows that HPL reduces the SLOCs and programming effort of OpenCL applications by 27 and 43 %, respectively, while improving the performance of applications that exchange data between devices by 28 % on average. © 2015, Springer Science+Business Media New York. en_US
dc.description.sponsorship TUBITAK, (112E191); European Commission, EC, (TIN2013-42148-P); Ministerio de Economía y Competitividad, MINECO; Türkiye Bilimsel ve Teknolojik Araştirma Kurumu, TÜBITAK; European Regional Development Fund, ERDF; Xunta de Galicia, (GRC2013/055) en_US
dc.identifier.citationcount 2
dc.identifier.doi 10.1007/s11227-014-1352-1
dc.identifier.endpage 2220 en_US
dc.identifier.issn 0920-8542
dc.identifier.issue 6 en_US
dc.identifier.scopus 2-s2.0-84929956503
dc.identifier.scopusquality Q2
dc.identifier.startpage 2204 en_US
dc.identifier.uri https://doi.org/10.1007/s11227-014-1352-1
dc.identifier.uri https://hdl.handle.net/20.500.12469/6463
dc.identifier.volume 71 en_US
dc.identifier.wosquality Q2
dc.language.iso en en_US
dc.publisher Kluwer Academic Publishers en_US
dc.relation.ispartof Journal of Supercomputing en_US
dc.relation.publicationcategory Makale - Uluslararası Hakemli Dergi - Kurum Öğretim Elemanı en_US
dc.rights info:eu-repo/semantics/closedAccess en_US
dc.scopus.citedbyCount 2
dc.subject Heterogeneity en_US
dc.subject Libraries en_US
dc.subject OpenCL en_US
dc.subject Parallelism en_US
dc.subject Portability en_US
dc.subject Programmability en_US
dc.title Developing Adaptive Multi-Device Applications With the Heterogeneous Programming Library en_US
dc.type Article en_US
dspace.entity.type Publication
relation.isAuthorOfPublication 14914cc2-2a09-46be-a429-12ef3a6f5456
relation.isAuthorOfPublication.latestForDiscovery 14914cc2-2a09-46be-a429-12ef3a6f5456
relation.isOrgUnitOfPublication fd8e65fe-c3b3-4435-9682-6cccb638779c
relation.isOrgUnitOfPublication.latestForDiscovery fd8e65fe-c3b3-4435-9682-6cccb638779c

Files