可靠内存区的语言支持
分布式、并行与集群计算
2016-11-24 v2 编程语言
软件工程
摘要
高性能计算(HPC)系统中实现百亿亿次计算能力的路径受到现有软件技术无法适应超级计算系统架构快速演进的挑战。功耗限制驱动系统设计包含日益异构的架构和多样化的内存技术与接口。未来系统也预期会经历更高的错误率,使得应用程序将不再能假设底层机器的正确行为。为使科学界成功扩展其应用,并利用百亿亿次系统的能力,我们需要软件策略,提供显式管理系统错误恢复力(resilience)的机制,以及未来 HPC 系统复杂内存层次中的引用局部性。在先前工作中,我们引入了显式可靠内存区的概念,称为 havens。使用 havens 的内存管理通过基于区域的内存分配方法支持可靠性管理。Havens 支持创建健壮的内存区域,其弹性行为由基于软件的保护方案保证。本文中,我们通过类型注解提出对 havens 的语言支持,使程序 havens 的结构更显式且便于 HPC 程序员使用。我们描述了扩展的基于 haven 的内存管理模型如何实现,并演示了基于语言的注解如何影响共轭梯度求解器应用的恢复力。
引用
@article{arxiv.1611.02823,
title = {Language Support for Reliable Memory Regions},
author = {Saurabh Hukerikar and Christian Engelmann},
journal= {arXiv preprint arXiv:1611.02823},
year = {2016}
}
备注
The 29th International Workshop on Languages and Compilers for Parallel Computing