CS740: Computer Architecture, Fall 2000

Prefetching Set Hints

Project Proposal

Group Info:

Project Webpage:

Project Description:

Our project explores the placement of prefetched data lines into set-associative cache. Some types of data have very poor locality - it is accessed only once. An example of this type of data would be streaming multimedia data. Prefetches of these data could evict data that have very good locality and cause future cache misses.

With prefetching set hint, data with poor locality can be forced to occupy only a subset of the cache, while data with good locality resides in another part of the cache. Therefore, prefetching the data with poor locality would only evict other data of the same type. Another appeal of this idea is that it introduces very little change to the memory architecture. This is a possible low-cost solution to handling data that have poor locality.

To implement this idea, we will partition a cache, implement the logic that decides whether a piece of data has good or poor locality, and add the hardware that remembers the type data for future predictions.

Our goal is to show whether this idea is useful in increasing cache performance. We plan on running a benchmark suite on the modified simulator, as well as real applications on real machines.

(On a side, we think it may also be interesting to see how this idea compares with an alternative: prefetch data having poor locality to the secondary cache rather than to the primary one. Exploring this may be outside the scope of this class project.)

Logistics:

1