Department: Computer Science & Engineering
Faculty Advisor(s): Steven Swanson

Primary Student
Name: Trevor Scott Bunker
Email: tbunker@ucsd.edu
Phone: 801-380-1058
Grad Year: 2016

Student Collaborators
Joel Coburn, jdcoburn@cs.ucsd.edu

Systems that provide powerful transaction mechanisms typically rely on complex protocols such as ARIES-style logging or shadow paging that were designed with slow, disk-based storage systems in mind. The emerging class of fast, byte-addressable, non-volatile memory (NVM) technologies (e.g., phase change memories, spin-torque MRAMs, and the memristor), however, present performance characteristics very different from both disks and flash-based SSDs. This project addresses the problem of implementing application-level transactions in fast NVM-based storage systems. We evaluate the features that a system like ARIES must provide and the architectural decisions that optimize it for disk but make it a poor fit for NVM-based storage. We propose a new set of IO primitives, implemented in hardware in a prototype storage array, that provide visibly-logged multi-part atomic write operations, acting as a building block for full ACID transactions. The hardware architecture provides atomicity, durability, and high performance by leveraging the enormous internal bandwidth and high degree of parallelism that NVMs provide. Our software driver presents a simplified interface that lets the application manage log space, making atomic writes scalable and transparent. We demonstrate that the overhead of multi-part atomic writes is minimal compared to normal writes, and our hardware provides large speedups for transactional updates to hash tables, b-trees, and large graphs. Finally, we show that redesigning ARIES-style logging and shadow paging to leverage our hardware transaction support for fast NVMs improve their performance by up to 3.7x while reducing software complexity.

Related Links:

  1. http://nvsl.ucsd.edu/moneta/

« Back to Posters or Search Results