OpenMP as runtime for providing high-level stream parallelism on multi-cores

被引:8
|
作者
Hoffmann, Renato B. [1 ]
Loff, Junior [1 ]
Griebler, Dalvan [1 ,2 ]
Fernandes, Luiz G. [1 ]
机构
[1] Pontifical Catholic Univ Rio Grande do Sul PUCRS, Sch Technol, Porto Alegre, RS, Brazil
[2] Tres de Maio Educ Soc Setrem, Lab Adv Res Cloud Comp LARCC, Tres De Maio, Brazil
来源
JOURNAL OF SUPERCOMPUTING | 2022年 / 78卷 / 06期
关键词
Parallel programming; Stream processing; C plus plus; Parallel patterns; Pipeline; Code transformation;
D O I
10.1007/s11227-021-04182-9
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
OpenMP is an industry and academic standard for parallel programming. However, using it for developing parallel stream processing applications is complex and challenging. OpenMP lacks key programming mechanisms and abstractions for this particular domain. To tackle this problem, we used a high-level parallel programming framework (named SPar) for automatically generating parallel OpenMP code. We achieved this by leveraging SPar's language and its domain-specific code annotations for simplifying the complexity and verbosity added by OpenMP in this application domain. Consequently, we implemented a new compiler algorithm in SPar for automatically generating parallel code targeting the OpenMP runtime using source-to-source code transformations. The experiments in four different stream processing applications demonstrated that the execution time of SPar was improved up to 25.42% when using the OpenMP runtime. Additionally, our abstraction over OpenMP introduced at most 1.72% execution time overhead when compared to handwritten parallel codes. Furthermore, SPar significantly reduces the total source lines of code required to express parallelism with respect to plain OpenMP parallel codes.
引用
收藏
页码:7655 / 7676
页数:22
相关论文
共 50 条
  • [1] OpenMP as runtime for providing high-level stream parallelism on multi-cores
    Renato B. Hoffmann
    Júnior Löff
    Dalvan Griebler
    Luiz G. Fernandes
    [J]. The Journal of Supercomputing, 2022, 78 : 7655 - 7676
  • [2] High-level and efficient structured stream parallelism for rust on multi-cores
    Pieper, Ricardo
    Loff, Junior
    Hoffmann, Renato B.
    Griebler, Dalvan
    Fernandes, Luiz G.
    [J]. JOURNAL OF COMPUTER LANGUAGES, 2021, 65
  • [3] High-Level Stream and Data Parallelism in C plus plus for Multi-Cores
    Loff, Junior
    Hoffmann, Renato Barreto
    Griebler, Dalvan
    Fernandes, Luiz Gustavo
    [J]. 25TH BRAZILIAN SYMPOSIUM ON PROGRAMMING LANGUAGES, SBLP 2021, 2021, : 41 - 48
  • [4] Combining stream with data parallelism abstractions for multi-cores
    Loff, Junior
    Hoffmann, Renato B.
    Griebler, Dalvan
    Fernandes, Luiz G.
    [J]. JOURNAL OF COMPUTER LANGUAGES, 2022, 73
  • [5] Seamless Parallelism Management for Video Stream Processing on Multi-Cores
    Vogel, Adriano
    Griebler, Dalvan
    Fernandes, Luiz Gustavo
    Danelutto, Marco
    [J]. PARALLEL COMPUTING: TECHNOLOGY TRENDS, 2020, 36 : 533 - 542
  • [6] Stream Parallelism on the LZSS Data Compression Application for Multi-Cores with GPUs
    Stein, Charles Michael
    Griebler, Dalvan
    Danelutto, Marco
    Fernandes, Luiz Gustavo
    [J]. 2019 27TH EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED AND NETWORK-BASED PROCESSING (PDP), 2019, : 247 - 251
  • [7] Providing high-level self-adaptive abstractions for stream parallelism on multicores
    Vogel, Adriano
    Griebler, Dalvan
    Fernandes, Luiz Gustavo
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2021, 51 (06): : 1194 - 1217
  • [8] Mapping Parallelism to Multi-cores: A Machine Learning Based Approach
    Wang, Zheng
    O'Boyle, Michael F. P.
    [J]. ACM SIGPLAN NOTICES, 2009, 44 (04) : 75 - 84
  • [9] POSTER: High-Level Synthesis of the OpenMP runtime to improve the generation of parallel accelerators
    Gozzi, Giovanni
    Fiorito, Michele
    Curzel, Serena
    Ferrandi, Fabrizio
    [J]. PROCEEDINGS OF THE 20TH ACM INTERNATIONAL CONFERENCE ON COMPUTING FRONTIERS 2023, CF 2023, 2023, : 209 - 210
  • [10] High-Level Stream Parallelism Abstractions with SPar Targeting GPUs
    Rockenbach, Dinei A.
    Griebler, Dalvan
    Danelutto, Marco
    Fernandes, Luiz G.
    [J]. PARALLEL COMPUTING: TECHNOLOGY TRENDS, 2020, 36 : 543 - 552