当前位置: X-MOL 学术ACM J. Emerg. Technol. Comput. Syst. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
On Providing OS Support to Allow Transparent Use of Traditional Programming Models for Persistent Memory
ACM Journal on Emerging Technologies in Computing Systems ( IF 2.1 ) Pub Date : 2020-06-23 , DOI: 10.1145/3388637
J. Hyun Kim 1 , Young Je Moon 1 , Hyunsub Song 1 , Jay H. Park 1 , Sam H. Noh 1
Affiliation  

The advent of persistent memory (PM) into our everyday computing environment is now imminent. New programming models and algorithms based on these models are being developed for such systems. However, current models require programs to be rewritten with persistence related primitives such as clflush and clwb or at least recompiled so that persistent mechanisms can be automatically inserted. This is a burden to program developers. Furthermore, executing legacy programs as-is can lead to application and system inconsistencies as unexpected faults occur. In this article, we propose µSnap, an operating system support that is based on checkpointing that allows legacy applications to be executed as-is without compromising consistency in systems that deploy PM. We implement a prototype of µSnap in the Linux kernel version 4.3.3, and measure and quantify the effect of µSnap for a wide range of applications. We find that µSnap incurs overhead for application execution compared to applications run without any notion of persistency, but that the overhead can be controlled to be minimal by appropriately setting the checkpointing interval. We argue that the benefit for paying this small cost can be tremendous in the sense that one can transparently guarantee the consistency of all legacy software written under the traditional programming model.

中文翻译:

关于提供操作系统支持以允许透明地使用持久内存的传统编程模型

持久内存 (PM) 即将出现在我们的日常计算环境中。正在为此类系统开发基于这些模型的新编程模型和算法。然而,当前的模型需要使用与持久性相关的原语(如 clflush 和 clwb)重写程序,或者至少重新编译,以便可以自动插入持久性机制。这对程序开发人员来说是一个负担。此外,按原样执行遗留程序可能会在发生意外故障时导致应用程序和系统不一致。在本文中,我们提出了 µSnap,这是一种基于检查点的操作系统支持,它允许遗留应用程序按原样执行,而不会影响部署 PM 的系统的一致性。我们在 Linux 内核版本 4.3.3 中实现了 µSnap 的原型,并测量和量化 µSnap 对各种应用的影响。我们发现,与在没有任何持久性概念的情况下运行的应用程序相比,µSnap 会产生应用程序执行的开销,但可以通过适当设置检查点间隔将开销控制为最小。我们认为,支付这一小额成本的好处可能是巨大的,因为人们可以透明地保证在传统编程模型下编写的所有遗留软件的一致性。
更新日期:2020-06-23
down
wechat
bug