Mechanisms to accelerate transactions using buffered stores
AssigneeIntel Corporation
InventorsAli-Reza Adl-Tabatabai, Yang Ni, Bratin Saha, Vadim Bassin, Gad Sheaffer, David Callahan, Jan Gray
Life of this patent
Estimating the term…
Abstract
In one embodiment, the present invention includes a method for executing a transactional memory (TM) transaction in a first thread, buffering a block of data in a first buffer of a cache memory of a processor, and acquiring a write monitor on the block to obtain ownership of the block at an encounter time in which data at a location of the block in the first buffer is updated. Other embodiments are described and claimed.
Claims20
A method comprising:
- executing a transactional memory (TM) transaction of an atomic section of code in a first thread within a processor;
- during the TM transaction, buffering a block of data in a first buffer of a cache memory of the processor;
- and
- acquiring a write monitor on the block to obtain ownership of the block at an encounter time in which data at a location of the block in the first buffer is updated.
At least one machine-readable medium comprising one or more instructions that when executed by a processor:
- execute a transactional memory (TM) transaction of an atomic section of code in a first thread;
- during the TM transaction, buffer a block of data in a first buffer of a cache memory of a processor;
- and
- acquire a write monitor on the block to obtain ownership of the block at an encounter time in which data at a location of the block in the first buffer is updated.
A system comprising:
- a processor including a plurality of cores each associated with a first cache memory and a second cache memory;
- and
- a dynamic random access memory (DRAM) coupled to the processor including instructions that enable the processor to execute a transactional memory (TM) transaction of an atomic section of code in a first thread, during the TM transaction, buffer a block of data in a first buffer of the first cache memory, and acquire a write monitor on the block to obtain ownership of the block at an encounter time in which data at a location of the block in the first buffer is updated.
Dependencies are inferred from the claim text.