A parallel runtime framework for communication intensive stream applications

被引:0
|
作者
Muralidharan, Servesh [1 ]
Casey, Kevin [2 ]
Gregg, David [1 ]
机构
[1] Univ Dublin Trinity Coll, Lero, Dublin 2, Ireland
[2] Dublin City Univ, Lero & Sch Comp, Dublin 9, Ireland
关键词
Streaming model; data parallelism; clusters;
D O I
10.1109/TrustCom.2013.142
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Stream applications are often limited in their performance by their underlying communication system. A typical implementation relies on the operating system to handle the majority of network operations. In such cases, the communication stack, which was not designed to handle tremendous amounts of data, acts as a bottleneck and restricts the performance of the application. In this paper, we propose a parallel runtime framework that integrates the communication operations with stream applications, and provides a common parallel processing engine that can execute both the communication and computation operations in parallel on multicore processors. We place an emphasis on the low-level details required to implement such a framework, but also provide some guidelines on how an application programmer can employ the framework. Our runtime system uses a set of operations represented as filters to perform the relevant computations on the data stream. Filters that handle the application specific operations are categorized as computation filters and those that transform data to and from network devices are classified as communication filters. Computation filters are designed by the user and are specific to the application. Communication filters are provided by the runtime system and are built using system software that allows direct access to network hardware. Such system software allows the network operations to be performed by the runtime system in parallel, leading to better communication performance. Applications that are designed for this framework are built by constructing application specific computation filters and then connecting them to the communication filters provided by the runtime system. This abstracts the low-level programming of network adapters and protocols by the application developer, making it easier to build stream applications that take advantage of the improved communication performance. Moreover, by dynamically replicating and statically scheduling such filters on the given multicore architecture, it is possible for the runtime system to process multiple data streams in parallel. We are able to parallelize stream applications and achieve speedups of more than a factor of eight in all the applications we tested. The results show that our system scales to as many parallel processes as there are cores on our computer, and achieves speedups of more than a factor of ten in some cases compared to sequential implementations.
引用
收藏
页码:1179 / 1187
页数:9
相关论文
共 50 条
  • [21] Modeling runtime behavior in framework-based applications
    Mitchell, Nick
    Sevitsky, Gary
    Srinivasan, Harini
    ECOOP 2006 - OBJECT-ORIENTED PROGRAMMING, PROCEEDINGS, 2006, 4067 : 429 - 451
  • [22] SunwayMR: A distributed parallel computing framework with convenient data-intensive applications programming
    Wu, Renke
    Huang, Linpeng
    Yu, Peng
    Zhou, Haojie
    FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2017, 71 : 43 - 56
  • [23] Autonomic runtime system for large scale parallel and distributed applications
    Yang, JM
    Chen, HP
    Kim, YU
    Hariri, S
    Parashar, M
    UNCONVENTIONAL PROGRAMMING PARADIGMS, 2005, 3566 : 297 - 311
  • [24] Runtime prediction of parallel applications with workload-aware clustering
    Park, Ju-Won
    Kim, Eunhye
    JOURNAL OF SUPERCOMPUTING, 2017, 73 (11): : 4635 - 4651
  • [25] Runtime prediction of parallel applications with workload-aware clustering
    Ju-Won Park
    Eunhye Kim
    The Journal of Supercomputing, 2017, 73 : 4635 - 4651
  • [26] An energy efficient and runtime-aware framework for distributed stream computing systems
    Sun, Dawei
    Cui, Yijing
    Wu, Minghui
    Gao, Shang
    Buyya, Rajkumar
    FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2022, 136 : 252 - 269
  • [27] Runtime support for changing communication model in large scale applications
    Budau, V
    Bernard, G
    PROCEEDINGS OF THE INTERNATIONAL WORKSHOP ON CHALLENGES OF LARGE APPLICATIONS IN DISTRIBUTED ENVIRONMENTS, 2003, : 106 - 112
  • [28] AMRZone: A Runtime AMR Data Sharing Framework For Scientific Applications
    Zhang, Wenzhao
    Tang, Houjun
    Harenberg, Steve
    Byna, Surendra
    Zou, Xiaocheng
    Devendran, Dharshi
    Martin, Daniel F.
    Wu, Kesheng
    Dong, Bin
    Klasky, Scott
    Samatova, Nagiza F.
    2016 16TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID), 2016, : 116 - 125
  • [29] MPI-RCDD: A Framework for MPI Runtime Communication Deadlock Detection
    Hong-Mei Wei
    Jian Gao
    Peng Qing
    Kang Yu
    Yan-Fei Fang
    Ming-Lu Li
    Journal of Computer Science and Technology, 2020, 35 : 395 - 411
  • [30] Arax: A Runtime Framework for Decoupling Applications from Heterogeneous Accelerators
    Paylidakis, Manos
    Mayridis, Stelios
    Chazapis, Antony
    Vasiliadis, Giorgos
    Bilas, Angelos
    PROCEEDINGS OF THE 13TH SYMPOSIUM ON CLOUD COMPUTING, SOCC 2022, 2022, : 1 - 15