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 条
  • [31] ACRE: An Automated Aspect Creator for Testing C plus plus Applications
    Duclos, Etienne
    Le Digabel, Sebastien
    Gueheneuc, Yann-Gael
    Adams, Bram
    PROCEEDINGS OF THE 17TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING (CSMR 2013), 2013, : 121 - 130
  • [32] An improved C plus plus Poisson series processor with its applications
    Lopez Orti, Jose Antonio
    Agost Gomez, Vicente
    Barreda Rochera, Miguel
    COMPUTATIONAL AND MATHEMATICAL METHODS, 2021, 3 (06)
  • [33] Dynamic instrumentation of C plus plus applications on IA-64
    Hundt, R
    Ramasamy, V
    PDPTA'2001: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, 2001, : 1628 - 1633
  • [34] Formal Verification of Object Layout for C plus plus Multiple Inheritance
    Ramananandro, Tahina
    Dos Reis, Gabriel
    Leroy, Xavier
    POPL 11: PROCEEDINGS OF THE 38TH ANNUAL ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES, 2011, : 67 - 79
  • [35] Formal Verification of Object Layout for C plus plus Multiple Inheritance
    Ramananandro, Tahina
    Dos Reis, Gabriel
    Leroy, Xavier
    ACM SIGPLAN NOTICES, 2011, 46 (01) : 67 - 79
  • [36] CCmutator: A Mutation Generator for Concurrency Constructs in Multithreaded C/C plus plus Applications
    Kusano, Markus
    Wang, Chao
    2013 28TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2013, : 722 - 725
  • [37] Evaluation of HPC-Big Data Applications Using Cloud Platforms
    Salaria, Shweta
    Brown, Kevin
    Jitsumoto, Hideyuki
    Matsuoka, Satoshi
    2017 17TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID), 2017, : 1053 - 1061
  • [38] CID: A Compile-time Implementation Decider for Heterogeneous Platforms based on C plus plus Attributes
    Miguel Sanchez, Luis
    del Rio Astorga, David
    Dolz, Manuel F.
    Fernandez, Javier
    2016 INT IEEE CONFERENCES ON UBIQUITOUS INTELLIGENCE & COMPUTING, ADVANCED & TRUSTED COMPUTING, SCALABLE COMPUTING AND COMMUNICATIONS, CLOUD AND BIG DATA COMPUTING, INTERNET OF PEOPLE, AND SMART WORLD CONGRESS (UIC/ATC/SCALCOM/CBDCOM/IOP/SMARTWORLD), 2016, : 1149 - 1156
  • [39] Toward HPC application portability via C plus plus PSTL: the Gaia AVU-GSR code assessment
    Malenza, Giulio
    Cesare, Valentina
    Aldinucci, Marco
    Becciani, Ugo
    Vecchiato, Alberto
    JOURNAL OF SUPERCOMPUTING, 2024, 80 (10): : 14369 - 14390
  • [40] Using OGRE as a Means of Teaching C plus plus Programming
    Johnson, Bruce
    PROCEEDINGS OF THE 49TH ANNUAL ASSOCIATION FOR COMPUTING MACHINERY SOUTHEAST CONFERENCE (ACMSE '11), 2011, : T2 - T2