A generic parallel pattern interface for stream and data processing. (29th May 2017)
- Record Type:
- Journal Article
- Title:
- A generic parallel pattern interface for stream and data processing. (29th May 2017)
- Main Title:
- A generic parallel pattern interface for stream and data processing
- Authors:
- del Rio Astorga, David
Dolz, Manuel F.
Fernández, Javier
García, J. Daniel - Other Names:
- Carretero Jesus guestEditor.
Garcia‐Blas Javier guestEditor.
Nakano Koji guestEditor.
Mueller Peter guestEditor.
Grosu Daniel guestEditor.
Zheng Sheng guestEditor.
Xu Li guestEditor.
Xu Zheng guestEditor.
Yen Neil guestEditor.
Sugumaran Vijayan guestEditor. - Abstract:
- Summary: 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 proposesGRPPI, 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 onSummary: 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 proposesGRPPI, 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. … (more)
- Is Part Of:
- Concurrency and computation. Volume 29:Number 24(2017)
- Journal:
- Concurrency and computation
- Issue:
- Volume 29:Number 24(2017)
- Issue Display:
- Volume 29, Issue 24 (2017)
- Year:
- 2017
- Volume:
- 29
- Issue:
- 24
- Issue Sort Value:
- 2017-0029-0024-0000
- Page Start:
- n/a
- Page End:
- n/a
- Publication Date:
- 2017-05-29
- Subjects:
- high‐level API -- parallel pattern -- parallel programming framework -- stream processing
Parallel processing (Electronic computers) -- Periodicals
Parallel computers -- Periodicals
004.35 - Journal URLs:
- http://onlinelibrary.wiley.com/ ↗
- DOI:
- 10.1002/cpe.4175 ↗
- Languages:
- English
- ISSNs:
- 1532-0626
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - 3405.622000
British Library DSC - BLDSS-3PM
British Library STI - ELD Digital store - Ingest File:
- 5422.xml