arrow
Return

A parallel programming assessment for stream processing applications on multi-core systems

delete2023-03-01
delete7
PRE
AI
G
Gabriella Andrade
D
Dalvan Griebler *
R
Rodrigo Pereira dos Santos
L
Luiz Gustavo Fernandes
DOI:10.1016/j.csi.2022.103691delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Multi-core systems are any computing device nowadays and stream processing applications are becoming recurrent workloads, demanding parallelism to achieve the desired quality of service. As soon as data, tasks, or requests arrive, they must be computed, analyzed, or processed. Since building such applications is not a trivial task, the software industry must adopt parallel APIs (Application Programming Interfaces) that simplify the exploitation of parallelism in hardware for accelerating time-to-market. In the last years, research efforts in academia and industry provided a set of parallel APIs, increasing productivity to software developers. However, a few studies are seeking to prove the usability of these interfaces. In this work, we aim to present a parallel programming assessment regarding the usability of parallel API for expressing parallelism on the stream processing application domain and multi-core systems. To this end, we conducted an empirical study with beginners in parallel application development. The study covered three parallel APIs, reporting several quantitative and qualitative indicators involving developers. Our contribution also comprises a parallel programming assessment methodology, which can be replicated in future assessments. This study revealed important insights such as recurrent compile-time and programming logic errors performed by beginners in parallel programming, as well as the programming effort, challenges, and learning curve. Moreover, we collected the participants' opinions about their experience in this study to understand deeply the results achieved.
Keywords:
Parallel software
Parallel computing systems
Programming productivity
Programming effort
Stream parallelism
Programming usability

Journal

C
Computer Standards and Interfaces
IF:
3.1
Papers:
2.3K
Citations:
2.0K

Organization

P
pontificia universidade catolica do rio grande do sul
Scholars:
4.2K
Papers: 2.4K
Citations: 2