Using C plus plus AMP to Accelerate HPC Applications on Multiple Platforms

被引:1
|
作者
Lopez, M. Graham [1 ]
Bergstrom, Christopher [2 ]
Li, Ying Wai [3 ]
Elwasif, Wael [1 ]
Hernandez, Oscar [1 ]
机构
[1] Oak Ridge Natl Lab, Comp Sci & Math Div, Oak Ridge, TN 37831 USA
[2] Pathscale Inc, Wilmington, DE USA
[3] Oak Ridge Natl Lab, Natl Ctr Computat Sci, Oak Ridge, TN USA
关键词
HPC; C plus plus for Accelerators; C plus plus AMP; Accelerator programming;
D O I
10.1007/978-3-319-46079-6_38
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Many high-end HPC systems support accelerators in their compute nodes to target a variety of workloads including highperformance computing simulations, big data / data analytics codes and visualization. To program both the CPU cores and attached accelerators, users now have multiple programming models available such as CUDA, OpenMP 4, OpenACC, C++ 14, etc., but some of these models fall short in their support for C++ on accelerators because they can have difficulty supporting advanced C++ features e.g. templating, class members, loops with iterators, lambdas, deep copy, etc. Usually, they either rely on unified memory, or the programming language is not aware of accelerators (e.g. C++ 14). In this paper, we explore a base-language solution called C++ Accelerated Massive Parallelism ( AMP), which was developed by Microsoft and implemented by the PathScale ENZO compiler to program GPUs on a variety of HPC architectures including OpenPOWER and Intel Xeon. We report some prelminary in-progress results using C++ AMP to accelerate a matrix multiplication and quantum Monte Carlo application kernel, examining its expressiveness and performance using NVIDIA GPUs and the PathScale ENZO compiler. We hope that this preliminary report will provide a data point that will inform the functionality needed for future C++ standards to support accelerators with discrete memory spaces.
引用
收藏
页码:563 / 576
页数:14
相关论文
共 50 条
  • [1] Designing HPC libraries in the modern C plus plus world
    Falcou, Joel
    PROCEEDINGS OF THE 2015 INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING & SIMULATION (HPCS 2015), 2015, : 458 - 459
  • [2] Mapping C plus plus AMP to OpenCL/HSA
    Chung, Jack
    Davis, Curtis
    Ramachandran, Jayram
    INTERNATIONAL WORKSHOP ON OPENCL 2015, 2015,
  • [3] Inputs of Aspect Oriented Programming for the Profiling of C plus plus Parallel Applications on Manycore Platforms
    Schweitzer, Pierre
    Mazel, Claude
    Hill, David R. C.
    Carloganu, Cristina
    2014 INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING & SIMULATION (HPCS), 2014, : 793 - 802
  • [4] HPC plus Azure Environment for Bioinformatics Applications
    Sidhu, Amandeep S.
    Balakrishnan, Suresh Reuben
    Dhillon, Sarinder K.
    2013 IEEE INTERNATIONAL CONFERENCE ON BIOINFORMATICS AND BIOMEDICINE (BIBM), 2013,
  • [5] BES plus plus : HPC Profile Open Source C Implementation
    Ruiz-Alvarez, Arkaitz
    Smith, Christopher
    Humphrey, Marty
    2008 9TH IEEE/ACM INTERNATIONAL CONFERENCE ON GRID COMPUTING, 2008, : 41 - +
  • [6] Overview of HPC benchmarks in hybrid hardware platforms (CPUs plus GPUs)
    Espino, Danilo
    Ares, Gerardo
    Pedemonte, Martin
    Ezzatti, Pablo
    PROCEEDINGS OF THE 2016 XLII LATIN AMERICAN COMPUTING CONFERENCE (CLEI), 2016,
  • [7] Evaluating ISO C plus plus Parallel Algorithms on Heterogeneous HPC Systems
    Lin, Wei-Chen
    Deakin, Tom
    McIntosh-Smith, Simon
    2022 IEEE/ACM INTERNATIONAL WORKSHOP ON PERFORMANCE MODELING, BENCHMARKING AND SIMULATION OF HIGH PERFORMANCE COMPUTER SYSTEMS (PMBS), 2022, : 36 - 47
  • [8] Distributed & Heterogeneous Programming in C plus plus for HPC at SC17
    Wong, Michael
    Finkel, Hal
    IWOCL'18: PROCEEDINGS OF THE INTERNATIONAL WORKSHOP ON OPENCL, 2018, : 76 - 82
  • [9] GPU-Accelerated FDTD Simulation of Human Tissue Using C plus plus AMP
    Zhang, Lingze
    Du, Yongxing
    Wu, Daocheng
    2015 31st International Review of Progress in Applied Computational Electromagnetics (ACES) Vol 31, 2015,
  • [10] Genetic Optimisation of C plus plus Applications
    Giavrimis, Rafail
    Butler, Alexis
    Petrescu, Constantin Cezar
    Basios, Michail
    Dash, Santanu Kumar
    2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021, 2021, : 1180 - 1182