Publication: A Generic Parallel Pattern Interface for Stream and Data Processing
dc.affiliation.dpto | UC3M. Departamento de Informática | es |
dc.affiliation.grupoinv | UC3M. Grupo de Investigación: Arquitectura de Computadores, Comunicaciones y Sistemas | es |
dc.contributor.author | Río Astorga, David del | |
dc.contributor.author | Dolz Zaragoza, Manuel Francisco | |
dc.contributor.author | Fernández Muñoz, Javier | |
dc.contributor.author | García Sánchez, José Daniel | |
dc.contributor.funder | European Commission | en |
dc.contributor.funder | Ministerio de Economía y Competitividad (España) | es |
dc.date.accessioned | 2023-10-18T07:48:30Z | |
dc.date.available | 2023-10-18T07:48:30Z | |
dc.date.issued | 2017-05-01 | |
dc.description.abstract | Current parallel programming frameworks aid developers to a great extent in implementing applications that exploit parallel hardware resources. Nevertheless, developers require additional expertise to properly use and tune them to operate efficiently on specific parallel platforms. On the other hand, porting applications between different parallel programming models and platforms is not straightforward and demands considerable efforts and specific knowledge. Apart from that, the lack of high-level parallel pattern abstractions, in those frameworks, further increases the complexity in developing parallel applications. To pave the way in this direction, this paper proposes GRPPI, a generic and reusable parallel pattern interface for both stream processing and data-intensive C++ applications. GRPPI accommodates a layer between developers and existing parallel programming frameworks targeting multi-core processors, such as C++ threads, OpenMP and Intel TBB, and accelerators, as CUDA Thrust. Furthermore, thanks to its high-level C++ application programming interface and pattern composability features, GRPPI allows users to easily expose parallelism via standalone patterns or patterns compositions matching in sequential applications. We evaluate this interface using an image processing use case and demonstrate its benefits from the usability, flexibility, and performance points of view. Furthermore, we analyze the impact of using stream and data pattern compositions on CPUs, GPUs and heterogeneous configurations. | en |
dc.description.sponsorship | This work has been partially supported by the EU project ICT 644235 “REPHRASE: REfactoring Parallel Heterogeneous Resource-aware Applications” and the Spanish “Ministerio de Economía y Competitividad” under the grant TIN2016-79673-P “Towards Unification of HPC and Big Data Paradigms.” | en |
dc.format.extent | 12 | es |
dc.identifier.bibliographicCitation | Del Rio Astorga, D., Dolz, M. F., Fernández, J. & García, J. D. (2017). A generic parallel pattern interface for stream and data processing. Concurrency and Computation: Practice and Experience, 29(24). | en |
dc.identifier.doi | https://doi.org/10.1002/cpe.4175 | |
dc.identifier.issn | 1532-0626 | |
dc.identifier.publicationfirstpage | 1 | es |
dc.identifier.publicationissue | 24, e4175 | es |
dc.identifier.publicationlastpage | 12 | es |
dc.identifier.publicationtitle | Concurrency and Computation: Practice and Experience | en |
dc.identifier.publicationvolume | 29 | es |
dc.identifier.uri | https://hdl.handle.net/10016/38618 | |
dc.identifier.uxxi | AR/0000020225 | |
dc.language.iso | eng | en |
dc.publisher | Wiley | en |
dc.relation.projectID | info:eu-repo/grantAgreement/EC/644235 | es |
dc.relation.projectID | Gobierno de España. TIN2016-79673-P | es |
dc.rights | © 2017 The Authors. Concurrency and Computation: Practice and Experience Published by John Wiley & Sons, Ltd | en |
dc.rights | Atribución 3.0 España | * |
dc.rights.accessRights | open access | en |
dc.rights.uri | http://creativecommons.org/licenses/by/3.0/es/ | * |
dc.subject.eciencia | Informática | es |
dc.subject.eciencia | Telecomunicaciones | es |
dc.subject.other | High-level api | en |
dc.subject.other | Parallel pattern | en |
dc.subject.other | Parallel programming framework | en |
dc.subject.other | Stream processing | en |
dc.title | A Generic Parallel Pattern Interface for Stream and Data Processing | en |
dc.type | research article | * |
dc.type.hasVersion | VoR | * |
dspace.entity.type | Publication |
Files
Original bundle
1 - 1 of 1