ATOMIC TRANSACTIONS TO NON-VOLATILE MEMORY
First Claim
1. A processing device comprising:
- an interface to a non-volatile storage medium; and
a first functional unit to perform a plurality of instructions associated with an atomic transaction, wherein the plurality of instructions are to update data at a set of addresses in the non-volatile storage medium atomically, wherein the first functional unit is operable to;
perform a first instruction to create the atomic transaction that declares a size of the data to be updated atomically,perform a second instruction to start execution of the atomic transaction; and
perform a third instruction to commit the atomic transaction to the set of addresses in the non-volatile storage medium, wherein the updated data is not visible to other functional units of the processing device until the atomic transaction is complete.
1 Assignment
0 Petitions
Accused Products
Abstract
Durable atomic transactions for non-volatile media are described. A processor includes an interface to a non-volatile storage medium and a functional unit to perform instructions associated with an atomic transaction. The instructions are to update data at a set of addresses in the non-volatile storage medium atomically. The functional unit is operable to perform a first instruction to create the atomic transaction that declares a size of the data to be updated atomically. The functional unit is also operable to perform a second instruction to start execution of the atomic transaction. The functional unit is further operable to perform a third instruction to commit the atomic transaction to the set of addresses in the non-volatile storage medium, wherein the updated data is not visible to other functional units of the processing device until the atomic transaction is complete.
29 Citations
25 Claims
-
1. A processing device comprising:
-
an interface to a non-volatile storage medium; and a first functional unit to perform a plurality of instructions associated with an atomic transaction, wherein the plurality of instructions are to update data at a set of addresses in the non-volatile storage medium atomically, wherein the first functional unit is operable to; perform a first instruction to create the atomic transaction that declares a size of the data to be updated atomically, perform a second instruction to start execution of the atomic transaction; and perform a third instruction to commit the atomic transaction to the set of addresses in the non-volatile storage medium, wherein the updated data is not visible to other functional units of the processing device until the atomic transaction is complete. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
creating, by a first functional unit of a processing device, an atomic transaction that declares a size of data to be updated atomically, wherein execution of the atomic transaction comprises a plurality of instructions to update the data at a set of addresses in a non-volatile storage medium; performing the atomic transaction; committing the atomic transaction to the set of addresses in the non-volatile storage medium, wherein the updated data is not visible to other functional units of the processing device until the atomic transaction is complete. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A non-transitory machine-readable storage medium including data that, when accessed by a processor, cause the processor to perform operations comprising:
-
creating, by a first functional unit of a processing device, an atomic transaction that declares a size of data to be updated atomically, wherein execution of the atomic transaction comprises a plurality of instructions to update the data at a set of addresses in a non-volatile storage medium, wherein the non-volatile storage medium is byte-addressable; performing the atomic transaction; and committing the atomic transaction to the set of addresses in the non-volatile storage medium, wherein the updated data is not visible to other functional units of the processing device until the atomic transaction is complete.
-
Specification