TRANSACTIONAL MEMORY SUPPORT FOR NON-COHERENT SHARED MEMORY SYSTEMS USING SELECTIVE WRITE THROUGH CACHES
First Claim
1. A method of controlling memory operations in a transactional shared memory system having a plurality of nodes connected through an interconnect network, comprising:
- initiating a memory operation at a first node comprising a first memory controller and a transaction table, wherein the transaction table is configured to store a list of nodes affected by the memory operation;
transmitting a store request signal through the interconnect network to a second node comprising a second memory controller and an access table, wherein the store request signal comprises memory operation data from the first memory controller;
storing memory operation data to the access table in entries corresponding to one or more memory addresses affected by the memory operation;
identifying a memory conflict with one or more nodes in the list of nodes when the one or more memory addresses affected by the memory operation are also affected by one or more conflicting transaction listed in the access table;
transmitting an abort signal from the second node to each of the one or more nodes corresponding to the memory conflict; and
transmitting an intent to commit signal from the first node to the second node.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of controlling memory operations in a transactional shared memory system having a plurality of nodes connected through an interconnect network. The method includes initiating a memory operation at a first node including a first memory controller and a transaction table where the transaction table is configured to store a list of nodes affected by the memory operation, transmitting a store request signal through the interconnect network to a second node including a second memory controller and an access table where the store request signal includes memory operation data from the first memory controller, storing memory operation data to the access table in entries corresponding to one or more memory addresses affected by the memory operation, identifying a memory conflict with one or more nodes in the list of nodes when the one or more memory addresses affected by the memory operation are also affected by one or more conflicting transactions listed in the access table, transmitting an abort signal from the second node to each of the one or more nodes corresponding to the memory conflict, and transmitting an intent to commit signal from the first node to the second node.
-
Citations
20 Claims
-
1. A method of controlling memory operations in a transactional shared memory system having a plurality of nodes connected through an interconnect network, comprising:
-
initiating a memory operation at a first node comprising a first memory controller and a transaction table, wherein the transaction table is configured to store a list of nodes affected by the memory operation; transmitting a store request signal through the interconnect network to a second node comprising a second memory controller and an access table, wherein the store request signal comprises memory operation data from the first memory controller; storing memory operation data to the access table in entries corresponding to one or more memory addresses affected by the memory operation; identifying a memory conflict with one or more nodes in the list of nodes when the one or more memory addresses affected by the memory operation are also affected by one or more conflicting transaction listed in the access table; transmitting an abort signal from the second node to each of the one or more nodes corresponding to the memory conflict; and transmitting an intent to commit signal from the first node to the second node. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of detecting memory conflicts in a transactional shared memory system having a plurality of nodes connected through an interconnect network, comprising:
-
initiating a memory operation at a first node comprising a first memory controller and a transaction table, wherein the transaction table is configured to store a list of nodes affected by the memory operation; transmitting a store request signal through the interconnect network to a second node comprising a second memory controller and an access table, wherein the store request signal comprises memory operation data from the first memory controller; storing the memory operation data to the access table and indexing the memory operation data by memory addresses affected by the memory operation; and identifying a memory conflict with one or more nodes when the memory addresses affected by the memory operation are also affected by one or more conflicting transactions in the access table. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A transactional shared memory system, comprising:
-
a plurality of nodes, each connected through an interconnect network and comprising a memory module; a plurality of memory controllers, each corresponding to one of the plurality of nodes; and a plurality of access tables, each corresponding to one of the plurality of memory controllers and configured to store remote operation data and memory addresses affected by a remote memory operation corresponding to the remote operation data, wherein each of the plurality of memory controllers is configured to detect memory conflicts with one or more of the plurality of nodes. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification