Exploring stream parallel patterns in distributed MPI environments

被引:7
作者
Lopez-Gomez, Javier [1 ]
Fernandez Munoz, Javier [1 ]
del Rio Astorga, David [1 ]
Dolz, Manuel F. [2 ]
Daniel Garcia, J. [1 ]
机构
[1] Univ Carlos III Madrid, Avda Univ 30, Leganes 28911, Spain
[2] Univ Jaume 1, Avda Sos Baynat S-N, Castellon de La Plana 12071, Spain
关键词
Parallel patterns; Stream processing; Distributed patterns; C plus plus programming; Generic programming;
D O I
10.1016/j.parco.2019.03.004
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
In recent years, the large volumes of stream data and the near real-time requirements of data streaming applications have exacerbated the need for new scalable algorithms and programming interfaces for distributed and shared-memory platforms. To contribute in this direction, this paper presents a new distributed MPI back end for GRPPI, a C++ high-level generic interface of data-intensive and stream processing parallel patterns. This back end, as a new execution policy, supports distributed and hybrid (distributed+shared-memory) parallel executions of the Pipeline and Farm patterns, where the hybrid mode combines the MPI policy with a GRPPI shared-memory one. These patterns internally leverage distributed queues, which can be configured to use two-sided or one-sided MPI primitives to communicate items among nodes. A detailed analysis of the GOP! MPI execution policy reports considerable benefits from the programmability, flexibility and readability points of view. The experimental evaluation of two different streaming applications with different distributed and shared-memory scenarios reports considerable performance gains with respect to the sequential versions at the expense of negligible GRPPI overheads. (C) 2019 Elsevier B.V. All rights reserved.
引用
收藏
页码:24 / 36
页数:13
相关论文
共 33 条
[1]  
Alba Enrique, 2007, International Journal of Innovative Computing and Applications, V1, P74, DOI 10.1504/IJICA.2007.013403
[2]  
Aldinucci M, 2013, LECT NOTES COMPUT SC, V7640, P47, DOI 10.1007/978-3-642-36949-0_7
[3]  
Allen ST., 2015, Storm Applied: Strategies for real-time event processing
[4]  
[Anonymous], STRUCTURED PARALLEL
[5]  
[Anonymous], 2001, Parallel programing in OpenMP, DOI DOI 10.5555/355074
[6]  
Cappello F., 2000, P IEEE ACM SC2000 C, P12
[7]  
Ciechanowicz P., 2009, ERCIS WORKING PAPERS, V7
[8]  
Ciechanowicz P., 2009, WORKING PAPERS, V7
[9]   A generic parallel pattern interface for stream and data processing [J].
del Rio Astorga, David ;
Dolz, Manuel F. ;
Fernandez, Javier ;
Daniel Garcia, J. .
CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2017, 29 (24)
[10]   SkePU 2: Flexible and Type-Safe Skeleton Programming for Heterogeneous Parallel Systems [J].
Ernstsson, August ;
Li, Lu ;
Kessler, Christoph .
INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2018, 46 (01) :62-80