US2014013055A1PendingUtilityA1
Ensuring causality of transactional storage accesses interacting with non-transactional storage accesses
Est. expiryJul 6, 2032(~6 yrs left)· nominal 20-yr term from priority
G06F 9/466G06F 12/0813G06F 12/0842G06F 12/0831
48
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
A data processing system implements a weak consistency memory model for a distributed shared memory system. The data processing system concurrently executes, on a plurality of processor cores, one or more transactional memory instructions within a memory transaction and one or more non-transactional memory instructions. The one or more non-transactional memory instructions include a non-transactional store instruction. The data processing system commits the memory transaction to the distributed shared memory system only in response to enforcement of causality of the non-transactional store instruction with respect to the memory transaction.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method, comprising:
in a data processing system implementing a weak consistency memory model for a distributed shared memory system, concurrently executing on a plurality of processor cores one or more transactional memory instructions within a memory transaction and one or more non-transactional memory instructions, wherein the one or more non-transactional memory instructions include a non-transactional store instruction; and committing the memory transaction to the distributed shared memory system of the data processing system only in response to enforcement of causality of the non-transactional store instruction with respect to the memory transaction.
2 . The method of claim 1 , wherein:
the data processing system includes a system fabric that distributes memory access requests to the shared distributed memory system; the memory transaction includes a transactional load instruction that reads a value stored to the distributed shared memory system by the non-transactional store instruction; the method further includes snooping, on the system fabric, a store request corresponding to the non-transactional store instruction and snooping, on the system fabric, a read request corresponding to the transactional load instruction; and the committing includes:
in response to snooping the read request while the store request is pending, preventing the memory transaction from committing until the store request is no longer pending.
3 . The method of claim 2 , wherein preventing the memory transaction from committing includes providing a retry response to a request on the system fabric to commit the memory transaction.
4 . The method of claim 1 , wherein the committing further includes committing the memory transaction only in response to an invalidation necessitated by a memory update of a transactional store instruction among the one or more transactional memory instructions in the memory transaction having fully propagated throughout the distributed shared memory system.
5 . The method of claim 1 , and further comprising:
in response to detecting a conflict for the memory transaction, refraining from committing the transaction to the distributed shared memory system.
6 . The method of claim 5 , and further comprising:
in response to detecting a conflict for the memory transaction, refraining from executing one or more instructions in the memory transaction and invoking execution of a fail handler.
7 . The method of claim 1 , and further comprising controlling commitment of the memory transaction by one or more lower level store-in cache memories in the distributed shared memory system.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.