SharP: Towards Programming Extreme-Scale Systems with Hierarchical Heterogeneous Memory
Abstract
The pre-exascale systems are expected to have a significant amount of hierarchical and heterogeneous on-node memory, and this trend of system architecture in extreme-scale systems is expected to continue into the exascale era. Along with hierarchical-heterogeneous memory, the system typically has a high-performing network and a compute accelerator. This system architecture is not only effective for running traditional High Performance Computing (HPC) applications (Big-Compute), but also running data-intensive HPC applications and Big-Data applications. As a consequence, there is a growing desire to have a single system serve the needs of both Big-Compute and Big-Data applications. Though the system architecture supports the convergence of the Big-Compute and Big-Data, the programming models have yet to evolve to support either hierarchical-heterogeneous memory systems or the convergence. In this work, we propose and develop the programming abstraction called SHARed data-structure centric Programming abstraction (SharP) to address both of these goals, i.e., provide (1) a simple, usable, and portable abstraction for hierarchical-heterogeneous memory and (2) a unified programming abstraction for Big-Compute and Big-Data applications. To evaluate SharP, we implement a Stencil benchmark using SharP, port QMCPack, a petascale-capable application, and adapt Memcached ecosystem, a popular Big-Data framework, to use SharP, and quantify the performance andmore »
- Authors:
- Publication Date:
- Research Org.:
- Oak Ridge National Lab. (ORNL), Oak Ridge, TN (United States). Oak Ridge Leadership Computing Facility (OLCF)
- Sponsoring Org.:
- USDOE Office of Science (SC)
- OSTI Identifier:
- 1567459
- DOE Contract Number:
- AC05-00OR22725
- Resource Type:
- Conference
- Resource Relation:
- Conference: 2017 46th International Conference on Parallel Processing Workshops (ICPPW)
- Country of Publication:
- United States
- Language:
- English
- Subject:
- 97 MATHEMATICS AND COMPUTING; Computer Science; Engineering
Citation Formats
Venkata, Manjunath Gorentla, Aderholdt, Ferrol, and Parchman, Zachary. SharP: Towards Programming Extreme-Scale Systems with Hierarchical Heterogeneous Memory. United States: N. p., 2017.
Web. doi:10.1109/ICPPW.2017.32.
Venkata, Manjunath Gorentla, Aderholdt, Ferrol, & Parchman, Zachary. SharP: Towards Programming Extreme-Scale Systems with Hierarchical Heterogeneous Memory. United States. https://doi.org/10.1109/ICPPW.2017.32
Venkata, Manjunath Gorentla, Aderholdt, Ferrol, and Parchman, Zachary. Tue .
"SharP: Towards Programming Extreme-Scale Systems with Hierarchical Heterogeneous Memory". United States. https://doi.org/10.1109/ICPPW.2017.32.
@article{osti_1567459,
title = {SharP: Towards Programming Extreme-Scale Systems with Hierarchical Heterogeneous Memory},
author = {Venkata, Manjunath Gorentla and Aderholdt, Ferrol and Parchman, Zachary},
abstractNote = {The pre-exascale systems are expected to have a significant amount of hierarchical and heterogeneous on-node memory, and this trend of system architecture in extreme-scale systems is expected to continue into the exascale era. Along with hierarchical-heterogeneous memory, the system typically has a high-performing network and a compute accelerator. This system architecture is not only effective for running traditional High Performance Computing (HPC) applications (Big-Compute), but also running data-intensive HPC applications and Big-Data applications. As a consequence, there is a growing desire to have a single system serve the needs of both Big-Compute and Big-Data applications. Though the system architecture supports the convergence of the Big-Compute and Big-Data, the programming models have yet to evolve to support either hierarchical-heterogeneous memory systems or the convergence. In this work, we propose and develop the programming abstraction called SHARed data-structure centric Programming abstraction (SharP) to address both of these goals, i.e., provide (1) a simple, usable, and portable abstraction for hierarchical-heterogeneous memory and (2) a unified programming abstraction for Big-Compute and Big-Data applications. To evaluate SharP, we implement a Stencil benchmark using SharP, port QMCPack, a petascale-capable application, and adapt Memcached ecosystem, a popular Big-Data framework, to use SharP, and quantify the performance and productivity advantages. Additionally, we demonstrate the simplicity of using SharP on different memories including DRAM, High-bandwidth Memory (HBM), and non-volatile random access memory (NVRAM).},
doi = {10.1109/ICPPW.2017.32},
url = {https://www.osti.gov/biblio/1567459},
journal = {},
number = ,
volume = ,
place = {United States},
year = {2017},
month = {8}
}