Patent ID: 9239798
Filing Date: 2016-01-19
CPC Classification: G06F,Y02D

Claim Text:
1. A method for arbitrary cancelation of speculative prefetches in a processor system, comprising: receiving a first set of memory commands from a first requestor that is a first processor or a first cache that is local to the first processor, wherein the first cache is associated with a first prefetch unit for generating speculative prefetches for the first cache; evaluating each received memory command to identify whether the received memory command is a speculative prefetch; applying a first set of arbitrary policies to the speculative prefetches received from the first set of memory commands to select one or more of the received speculative prefetches to cancel, wherein the first set of arbitrary policies is arranged to reduce memory accesses to a shared memory that is memory resource that is at a lower-level hierarchy than the first requestor; canceling the selected speculative prefetches and sending a cancelation notification of each canceled speculative prefetch to a first prefetch unit that is local to the first processor; and wherein the first prefetch unit regenerates a memory command in response to the cancelation notification when a demand fetch has an address that hits a memory line or portion of a memory line that is associated with the cancelation notification, wherein the demand fetch is received by the first prefetch unit after the generation of the speculative prefetch for which the cancelation notification was generated.