Patent ID: 8051250

Claim:
A system for pushing data, the system comprising: at least one processor; consumers of data; an instruction queue to store computer-executable instructions waiting to be executed, wherein the instructions are instructions of the consumers during operation of the consumers in the system, the instructions being different from requests for data; a source node to store a coherent copy of a block of data; and a push engine executable on the at least one processor and configured to determine, based on accessing the instruction queue during operation of the consumers, a next consumer of the block of data from among the consumers, the determination being made in the absence of the push engine detecting a request for the block of data from the next consumer, the push engine configured to cause the source node to push the block of data to a memory associated with the next consumer to reduce latency of the next consumer accessing the block of data, wherein the push engine is configured to base the determination of the next consumer on an identifier associated with a particular one of the instructions waiting to be executed in the instruction queue.