Published March 9, 2018 | Version v1
Dataset Open

High-Level and Productive Stream Parallelism for Dedup, Ferret, and Bzip2

  • 1. Dalvan
  • 2. Renato B.
  • 3. Marco
  • 4. Luiz Gustavo

Description

Parallel programming has been a challenging task for application programmers. Stream processing is an application domain present in several scientific, enterprise, and financial areas that lack suitable abstractions to exploit parallelism.
Our goal is to assess the feasibility of state-of-the-art frameworks/libraries (Pthreads, TBB, and FastFlow) and the SPar domain-specific language for real-world streaming applications (Dedup, Ferret, and Bzip2) targeting multi-core architectures. SPar was specially designed to provide high-level and productive stream parallelism abstractions, supporting programmers with standard C++-11 annotations. For the experiments, we implemented three streaming applications. We discussed SPar’s programmability advantages compared to the frameworks in terms of productivity and structured parallel programming. The results demonstrate that SPar improves productivity and provides the necessary features to achieve similar performances compared to the state-of-the-art.

Files

all.zip

Files (811.3 kB)

Name Size Download all
md5:d6dc1b977f9a0050866b9109c23eeea1
811.3 kB Preview Download

Additional details

Funding

RePhrase – REfactoring Parallel Heterogeneous Resource-Aware Applications - a Software Engineering Approach 644235
European Commission