Principles of Memory-Centric Programming for High Performance Computing

Principles of Memory-Centric Programming for High Performance Computing
复制标题

高性能计算的以内存为中心的编程原理

DOI:
10.1145/3145617.3158212
复制
发表时间:
2017
期刊:
MCHPC'17 Proceedings of the Workshop on Memory Centric Programming for HPC
影响因子:
--
通讯作者:
Sun, Xian-He
Sun, Xian-He
中科院分区:
--
文献类型:
--
作者:
Yan, Yonghong;Brightwell, Ron;Sun, Xian-He

文献摘要

参考文献

被引文献

相似文献

内存墙挑战——CPU速度和内存速度之间日益增长的差距——一直是计算领域最关键、最长期的挑战之一。对于高性能计算,实现并行应用程序高效执行的编程通常需要更多的调优和优化工作,以改进数据和内存访问,而不是管理并行性。由于采用了3d堆叠存储器、非易失性随机存取存储器(NVRAM)和混合软件和硬件缓存等新存储器技术和架构,存储器层次结构变得更加深入和多样化,使情况进一步复杂化。作者认为,提升以内存为中心的编程概念,与以计算为中心或以数据为中心的编程范式相关,以利用前所未有的和不断提升的现代内存系统是很重要的。以内存为中心的编程是指通过可移植编程抽象和api向程序员公开硬件内存系统及其层次结构的概念和技术,其中可能包括DRAM和NUMA区域、共享和私有缓存、便签本、3-D堆叠内存、非易失性内存和远程内存。这些接口试图改善程序员和系统软件之间的对话,并在数据移动方面支持编译器优化、运行时适应和硬件重新配置,这些都超出了使用现有并行编程api所能实现的范围。在本文中,我们概述了以内存为中心的编程概念和高性能计算原理。
The memory wall challenge -- the growing disparity between CPU speed and memory speed -- has been one of the most critical and long-standing challenges in computing. For high performance computing, programming to achieve efficient execution of parallel applications often requires more tuning and optimization efforts to improve data and memory access than for managing parallelism. The situation is further complicated by the recent expansion of the memory hierarchy, which is becoming deeper and more diversified with the adoption of new memory technologies and architectures such as 3D-stacked memory, non-volatile random-access memory (NVRAM), and hybrid software and hardware caches.The authors believe it is important to elevate the notion of memory-centric programming, with relevance to the compute-centric or data-centric programming paradigms, to utilize the unprecedented and ever-elevating modern memory systems. Memory-centric programming refers to the notion and techniques of exposing hardware memory system and its hierarchy, which could include DRAM and NUMA regions, shared and private caches, scratch pad, 3-D stacked memory, non-volatile memory, and remote memory, to the programmer via portable programming abstractions and APIs. These interfaces seek to improve the dialogue between programmers and system software, and to enable compiler optimizations, runtime adaptation, and hardware reconguration with regard to data movement, beyond what can be achieved using existing parallel programming APIs. In this paper, we provide an overview of memory-centric programming concepts and principles for high performance computing.
DOI: 10.1109/ipdpsw.2017.141
发表时间: 2017-05
期刊: 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)
影响因子: --
作者:
S. Salehian;Jiawen Liu;Yonghong Yan
通讯作者: S. Salehian;Jiawen Liu;Yonghong Yan
DOI: 10.1109/pmmp.1993.315548
发表时间: 1993-09
期刊: Proceedings of Workshop on Programming Models for Massively Parallel Computers
影响因子: --
作者:
B. Alpern;Larry Carter;J. Ferrante
通讯作者: B. Alpern;Larry Carter;J. Ferrante
并行和分布式计算的抽象机器模型
DOI: --
发表时间: 1996
期刊:
影响因子: --
作者:
M. Kara;J. Davy;D. Goodeve;J. M. Nash
通讯作者: J. M. Nash
HOMP:基于高度并行加速器的系统中并行循环和数据的自动分配
DOI: 10.1109/ipdps.2017.99
发表时间: 2017
期刊: 2017 IEEE International
影响因子: --
作者:
Yan, Yonghong;Liu, Jiawen;Cameron, Kirk W.;Umar, Mariam
通讯作者: Umar, Mariam
DOI: --
发表时间: 1997
期刊: Proceedings 11th International Parallel Processing Symposium
影响因子: --
作者:
S. Nemawarkar;G. Gao
通讯作者: G. Gao