Exploring Checkpointing and Closed Nesting in Distributed Transactional Memory

Alexandru Turcu, Roberto Palmieri, Binoy Ravindran · 2013

Checkpointing and closed nesting are mechanisms typically used for implementing partial roll-back in transactional systems. Closed nesting limits the amount of work to redo on an abort by allowing sub-transactions to abort and retry independently from their parents. Checkpointing goes further and allows a transaction to be rolled back to any previous point where a checkpoint was saved. Checkpointing thus enables very fine-grained rollbacks. In this paper we focus on understanding the performance considerations of closed nesting and checkpointing in Distributed Transactional Memory (DTM). We extend an existing DTM algorithm, TFA, with support for the two partial rollback models, and implement it in the Hyflow2 opensource DTM framework for the JVM. We then perform a thorough evaluation to determine their behavior, implementation overheads, and favorable conditions.

Read the paper · More papers on PaperTik