CONTROLLING ATOMIC UPDATES OF INDEXES USING HARDWARE TRANSACTIONAL MEMORY
First Claim
1. A system comprising:
- at least one hardware device processor; and
a computer-readable storage medium storing executable instructions that, when executed, cause one or more of the at least one hardware device processor to;
control a transformation of a current state of one or more entries in a mapping table to an updated state of the entries in the mapping table in a latch-free manner by initiating an atomic multi-word compare-and-swap (MWCAS) operation on a plurality of words using a hardware transactional memory (HTM) resident in the device processor, the MWCAS operation using hardware primitive operations of the HTM, the one or more mapping table entries associated with a lock-free index of a database.
1 Assignment
0 Petitions
Accused Products
Abstract
A current state of one or more entries in a mapping table that are associated with latch-free updates of a data structure that uses indirection mapping tables is accessed. A transformation of the current state of the one or more entries in the mapping table to a transformed state of the entries in the mapping table, is controlled. The controlling includes initiating an atomic multi-word compare-and-swap (MWCAS) operation on a plurality of words using a hardware transactional memory (HTM) resident in a device processor, and the MWCAS operation is performed using hardware primitive operations of the HTM, via the device processor. A transformation of a current state of the data structure to an updated state of the data structure, is controlled, via the transformation of the current state of the one or more entries in the mapping table to the transformed state of the entries in the mapping table.
27 Citations
20 Claims
-
1. A system comprising:
-
at least one hardware device processor; and a computer-readable storage medium storing executable instructions that, when executed, cause one or more of the at least one hardware device processor to; control a transformation of a current state of one or more entries in a mapping table to an updated state of the entries in the mapping table in a latch-free manner by initiating an atomic multi-word compare-and-swap (MWCAS) operation on a plurality of words using a hardware transactional memory (HTM) resident in the device processor, the MWCAS operation using hardware primitive operations of the HTM, the one or more mapping table entries associated with a lock-free index of a database. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method comprising:
controlling a transformation of a first state of one or more entries in a mapping table to a second state of the entries in the mapping table that are associated with latch-free updates that are associated with a data structure that uses an indirection mapping table that includes the mapping table, the controlling including initiating an atomic multi-word compare-and-swap (MWCAS) operation on a plurality of words using a hardware transactional memory (HTM) resident in a device processor, the MWCAS operation performed using hardware primitive operations of the HTM, via the device processor. - View Dependent Claims (17)
-
18. A computer program product comprising a computer-readable storage medium storing executable instructions that when executed by at least one processor cause at least one computing device to:
-
access a current state of one or more entries in a mapping table that are associated with latch-free updates of a data structure that uses an indirection mapping table for lock freedom; control a transformation of the current state of the one or more entries in the mapping table to a transformed state of the entries in the mapping table, the controlling including initiating an atomic multi-word compare-and-swap (MWCAS) operation on a plurality of words using a hardware transactional memory (HTM) resident in a device processor, the MWCAS operation performed using hardware primitive operations of the HTM, via the device processor; and control a transformation of a current state of the data structure to an updated state of the data structure, via the transformation of the current state of the one or more entries in the mapping table to the transformed state of the entries in the mapping table. - View Dependent Claims (19, 20)
-
Specification