Voting data prefetch engine
First Claim
1. An apparatus comprising:
- a prefetch buffer for a cache;
first and second prefetch predictors; and
a voter coupled to select a prefetch address from one of the prefetch predictors based on prediction efficacies thereof and to prefetch data corresponding to the selected prefetch address into the prefetch buffer.
2 Assignments
0 Petitions
Accused Products
Abstract
A voter provided in combination with a plurality of prefetch predictors provides improved prefetch performance. In one embodiment, the voter determines which of the prefetch predictors is making more accurate predictions, and uses predictions of the more effective prefetch predictor to prefetch data into a buffer for use in satisfying cache misses. A voting prefetch engine advantageously improves cache performance, and therefore processor performance, by reducing cache misses more than cache misses would be reduced by operation an individual prefetch predictor. Stride predictor-type and stream predictor-type prefetch predictors may be provided in combination with a prefetch buffer and voter to provide improved data cache performance in a high-performance processor.
163 Citations
40 Claims
-
1. An apparatus comprising:
-
a prefetch buffer for a cache; first and second prefetch predictors; and a voter coupled to select a prefetch address from one of the prefetch predictors based on prediction efficacies thereof and to prefetch data corresponding to the selected prefetch address into the prefetch buffer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. An apparatus comprising:
-
a first prefetch predictor coupled to receive a memory address presented to a cache memory, and to predict based thereupon, a first prefetch address; a second prefetch predictor coupled to receive a memory address supplied by the cache memory to a memory subsystem, and to predict based thereupon, a second prefetch address; a prefetch buffer coupled between the cache memory and the memory subsystem to receive prefetched data from the memory subsystem and to provide the prefetched data to the cache if a correspondence exists between a cache miss memory addresses and the prefetched data; and a voter coupled to receive the first and the second prefetch addresses, the voter being responsive to prediction efficacy feedback, and in response thereto, being selective for one of the first and the second prefetch addresses for supply to the memory subsystem. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A method comprising:
-
predicting a first prefetch address using a first prediction strategy; predicting a second prefetch address using a second prediction strategy; and selecting from among the first and the second prefetch addresses based on respective prediction efficacies for the first and the second prediction strategies. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40)
-
Specification