Patent ID: 9274971
Filing Date: 2016-03-01
CPC Classification: G06F,Y02D

Claim Text:
1. A method for exchanging data in a system that includes a main processor in communication with an active memory device, the method comprising: receiving, at a processing element in the active memory device, an instruction from the main processor; receiving, at the processing element, a store request from a thread running on the main processor, the store request specifying a memory address associated with the processing element; storing a value provided in the store request in a queue in the processing element, the storing comprising storing the value in a queue entry identified by a processor head pointer, wherein the processor head pointer moves to a subsequent entry after storing the value in the queue entry; and performing, by the processing element, the instruction using the value from the queue, wherein storing the value and performing the instruction, in an out-of-order exchange of the data between the processing element and the main processor, are synchronized based on tags assigned to corresponding data, the tags identifying a location of the corresponding data; wherein receiving the store request from the thread running on the main processor further comprises receiving a store request from the main processor that bypasses all system cache before it is received by the processing element, and wherein data subject to the store request is exchanged directly between a register in the main processor and the queue in the processing element.