Shared Memory Parallelism in Modern C plus plus and HPX

被引:0
|
作者
Diehl, Patrick [1 ,2 ]
Brandt, Steven R. [1 ]
Kaiser, Hartmut [1 ]
机构
[1] Louisiana State Univ, Ctr Computat & Technol, Baton Rouge, LA 70803 USA
[2] Louisiana State Univ, Dept Phys & Astron, Baton Rouge, LA 70803 USA
基金
美国国家科学基金会;
关键词
C plus; HPX; parallel libraries and programming language standards; Parallelism;
D O I
10.1007/978-3-031-32316-4_3
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Parallel programming remains a daunting challenge, from the struggle to express a parallel algorithm without cluttering the underlying synchronous logic, to describing which devices to employ in a calculation, to correctness. Over the years, numerous solutions have arisen, many of them requiring new programming languages, extensions to programming languages, or the addition of pragmas. Support for these various tools and extensions is available to a varying degree. In recent years, the C++ standards committee has worked to refine the language features and libraries needed to support parallel programming on a single computational node. Eventually, all major vendors and compilers will provide robust and performant implementations of these standards. Until then, the HPX library and runtime provides cutting edge implementations of the standards, as well as proposed standards and extensions. Because of these advances, it is now possible to write high performance parallel code without custom extensions to C++. We provide an overview of modern parallel programming in C++, describing the language and library features, and providing brief examples of how to use them.
引用
收藏
页码:27 / 38
页数:12
相关论文
共 50 条
  • [1] Shared Memory Parallelism in Modern C++ and HPX
    Diehl P.
    Brandt S.R.
    Kaiser H.
    [J]. SN Computer Science, 5 (5)
  • [2] Integration of CUDA Processing within the C plus plus library for parallelism and concurrency (HPX)
    Diehl, Patrick
    Seshadri, Madhavan
    Heller, Thomas
    Kaiser, Hartmut
    [J]. PROCEEDINGS OF 2018 IEEE/ACM 4TH INTERNATIONAL WORKSHOP ON EXTREME SCALE PROGRAMMING MODELS AND MIDDLEWARE (ESPM2 2018), 2018, : 19 - 28
  • [3] Accelerating LULESH using HPX - the C plus plus Standard Library for Parallelism and Concurrency
    Singanaboina, Srinivas Yadav
    Wei, Weile
    Seiras, Isidoros Tsaousis
    Syskakis, Panagiotis
    Richardson, Bradley
    Cook, Brandon
    Kaiser, Hartmut
    [J]. PRACTICE AND EXPERIENCE IN ADVANCED RESEARCH COMPUTING 2024, PEARC 2024, 2024,
  • [4] Analyzing C plus plus Stream Parallelism in Shared-Memory when Porting to Flink and Storm
    Hoffmann, Renato B.
    Fae, Leonardo G.
    Manssour, Isabel H.
    Griebler, Dalvan
    [J]. 2023 INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING WORKSHOPS, SBAC-PADW, 2023, : 46 - 53
  • [5] Parallelism in C plus plus Programs Targeting Objects
    Barve, Amit
    Khomane, Sneha
    Kulkarni, Bhagyashree
    Katare, Shubhangi
    Ghadage, Sonali
    [J]. 2017 IEEE INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTING, COMMUNICATION AND CONTROL (ICAC3), 2017,
  • [6] Towards Superior Software Portability with SHAD and HPX C plus plus Libraries
    Wu, Nanmiao
    Castellana, Vito Giovanni
    Kaiser, Hartmut
    [J]. PROCEEDINGS OF THE 19TH ACM INTERNATIONAL CONFERENCE ON COMPUTING FRONTIERS 2022 (CF 2022), 2022, : 251 - 257
  • [7] Parallelism in C plus plus using Sequential Communicating Processes
    Paduraru, Ciprian
    Melemciuc, Marius-Constantin
    [J]. 2018 17TH INTERNATIONAL SYMPOSIUM ON PARALLEL AND DISTRIBUTED COMPUTING (ISPDC), 2018, : 157 - 163
  • [8] Assessing and discovering parallelism in C plus plus code for heterogeneous platforms
    del Rio Astorga, David
    Sotomayor, Rafael
    Miguel Sanchez, Luis
    Garcia Blas, Javier
    Calderon, Alejandro
    Fernandez, Javier
    [J]. JOURNAL OF SUPERCOMPUTING, 2018, 74 (11): : 5674 - 5689
  • [9] DSParLib: A C plus plus Template Library for Distributed Stream Parallelism
    Loff, Junior
    Hoffmann, Renato B.
    Pieper, Ricardo
    Griebler, Dalvan
    Fernandes, Luiz G.
    [J]. INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2022, 50 (5-6) : 454 - 485
  • [10] Quantum plus plus : A modern C plus plus quantum computing library
    Gheorghiu, Vlad
    [J]. PLOS ONE, 2018, 13 (12):