Hardware Atomic Transactions in Non-Volatile Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems face challenges in achieving durable and atomic transactions in non-volatile memory, particularly in ensuring data consistency and reducing software overhead, especially in the presence of power failures and across multiple processors and memory controllers.

Innovation Solution

The implementation of hardware primitives and extensions that allow for persistent atomic updates and recovery in non-volatile data storage, using a two-phase commit protocol and staging buffers to manage writes and ensure data consistency without relying on heavy-weight logging or Copy-on-Write mechanisms, enabling direct access to non-volatile memory and decoupling write tracking from processor page granularity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If heavy-weight logging or Copy-on-Write mechanisms are used to ensure data consistency in non-volatile memory, then reliability is improved, but device complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsoftware overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the complexity of logging and Copy-on-Write mechanisms from the system, replacing them with hardware-supported atomic transactions. The hardware apparatus directly manages durability and atomicity at the memory level, removing the need for software-based logging overhead while maintaining data consistency across power failures and memory controller failures.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces software-based consistency mechanisms (logging, Copy-on-Write) with hardware-based atomic transaction support. The memory controller and memory device work together to provide atomic commit semantics, substituting mechanical software operations with electrical hardware-level transaction management that is inherently more efficient and less complex.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Adaptability or versatility

If distributed transactions across multiple processors and memory controllers are implemented, then adaptability is improved, but reliability deteriorates due to coordination overhead and failure points

Engineering Contradiction:
Improvedistributed transaction supportVSAvoidtransaction durability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the distributed transaction system into independent atomic units at the hardware level. Each memory transaction is marked with atomicity boundaries and can be independently committed or rolled back, allowing distributed transactions across multiple processors and memory controllers to be coordinated through simple hardware signals rather than complex software protocols.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces hardware intermediaries (atomic transaction markers, commit logs in memory) that mediate between multiple processors and memory controllers. These hardware structures provide a common coordination mechanism that ensures all participants in a distributed transaction either commit or rollback together, maintaining reliability without software overhead.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If direct access to non-volatile memory is enabled, then speed is improved, but data durability worsens without hardware-supported transaction mechanisms

Engineering Contradiction:
Improvememory access speedVSAvoiddata durability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent merges the speed advantages of direct non-volatile memory access with the durability guarantees of atomic transactions by integrating hardware support directly into the memory subsystem. The memory controller and memory device are enhanced to recognize and enforce atomic transaction boundaries, allowing fast direct access while automatically ensuring durability through hardware-enforced commit semantics.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10203910B2Hardware apparatuses and methods for distributed durable and atomic transactions in non-volatile memory
Publication Date: 2019.02.12 INTEL CORP
  • US10203910B2 patent drawing
  • US10203910B2 patent drawing
  • US10203910B2 patent drawing

AI summary

Hardware apparatuses and methods for distributed durable and atomic transactions in non-volatile memory are described. In one embodiment, a hardware apparatus includes a hardware processor, a plurality of hardware memory controllers for each of a plurality of non-volatile data storage devices, and a plurality of staging buffers with a staging buffer for each of the plurality of hardware memory controllers, wherein each of the plurality of hardware memory controllers are to: write data of a data set that is to be written to the plurality of non-volatile data storage devices to their staging buffer, send confirmation to the hardware processor that the data is written to their staging buffer, and write the data from their staging buffer to their non-volatile data storage device on receipt of a commit command.