Containment Domains C++ API  0.1
Containment Domains C++ API v0.1
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Groups Pages
Containment Domains

Table of Contents

Containment Domains API v0.1 (C++)

Kyushick Lee, Jinsuk Chung, Song Zhang, Seong-Lyong Gong, Derong Liu, Mattan Erez
March 2014
Print version available at

The purpose of this document is to describe a CD API for programming CD-enabled applications. A complete discussion of the semantics of containment domains is out of scope of this document; the latest version of the semantics is available at

Containment Domains Overview

Containment domains (CDs) are a new approach that achieves low-overhead resilient and scalable execution (see CDs abandon the prevailing one-size-fits-all approach to resilience and instead embrace the diversity of application needs, resilience mechanisms, and the deep hierarchies expected in exascale hardware and software. CDs give software a means to express resilience concerns intuitively and concisely. With CDs, software can preserve and restore state in an optimal way within the storage hierarchy and can efficiently support uncoordinated recovery. In addition, CDs allow software to tailor error detection, elision (ignoring some errors), and recovery mechanisms to algorithmic and system needs.

Write a more significant introduction and put sections for what are currently modules

For now, the documentation is organized around the following "modules", which can also be accessed through the "Modules" tab on the HTML docs.

This research was, in part, funded by the U.S. Government with partial support from the Department of Energy under Awards DE-SC0008671 and DE-SC0008111. The views and conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of the U.S. Government.