Patent ID: 7958316
Filing Date: 2011-06-07
Classification: G06F

Abstract:
1. In data processing system comprising a processor, and a memory subsystem with at least one cache, a method comprising: issuing a prefetch request of a first prefetch stream having a first assigned priority to fetch one or more data from the memory subsystem, said first assigned priority being a priority that determines a relative order for scheduling prefetch requests of the first prefetch stream relative to other prefetch requests of other prefetch streams; monitoring a time between the issuance of the prefetch request and the occurrence of at least one trigger event from among (a) a receipt of a processor demand for the data before a completion of the prefetch request and (b) a receipt of the processor demand more than a pre-established minimum time after a return of the data by the prefetch request; dynamically changing the first assigned priority to a second priority when one of the trigger conditions occur, wherein the dynamically changing is implemented only after the receipt of the processor demand more than the pre-established minimum time after a return of the data by the prefetch request has occurred more than a second preset sequential number of times for the first prefetch stream; and subsequently scheduling and issuing a next prefetch request of the first prefetch stream in a priority order indicated by the second priority.