img

Notice détaillée

On Providing OS Support to Allow Transparent Use of Traditional Programming Models for Persistent Memory

Article Ecrit par: Kim, J. Hyun ; Noh, Sam H. ; Je Moon, Young ; Song, Hyunsub ; Park, Jay H. ;

Résumé: 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.


Langue: Anglais