System, method and computer program product for executing a cache replacement algorithm
First Claim
1. A computer processor comprising:
- an instruction processor for processing instructions in a running program;
a cache comprising two or more cache levels including a level one (L1) cache level and one or more higher cache levels, each cache level comprising one or more cache lines and having an associated directory having one or more directory entries;
a useful indicator within one or more of said directory entries and associated with a particular cache line, each useful indicator being set to provide an indication that the associated cache line contains one or more instructions that are required by the running program and cleared to provide lack of such an indication; and
a cache line fetch mechanism which utilizes the useful indicators to suppress prefetches from the higher cache levels to the L1 cache.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, method and computer program product for executing a cache replacement algorithm. A system includes a computer processor having an instruction processor, a cache and one or more useful indicators. The instruction processor processes instructions in a running program. The cache includes two or more cache levels including a level one (L1) cache level and one or more higher cache levels. Each cache level includes one or more cache lines and has an associated directory having one or more directory entries. A useful indicator is located within one or more of the directory entries and is associated with a particular cache line. The useful indicator is set to provide an indication that the associated cache line contains one or more instructions that are required by the running program and cleared to provide lack of such an indication.
-
Citations
20 Claims
-
1. A computer processor comprising:
-
an instruction processor for processing instructions in a running program; a cache comprising two or more cache levels including a level one (L1) cache level and one or more higher cache levels, each cache level comprising one or more cache lines and having an associated directory having one or more directory entries; a useful indicator within one or more of said directory entries and associated with a particular cache line, each useful indicator being set to provide an indication that the associated cache line contains one or more instructions that are required by the running program and cleared to provide lack of such an indication; and a cache line fetch mechanism which utilizes the useful indicators to suppress prefetches from the higher cache levels to the L1 cache. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of executing a cache replacement algorithm, the method comprising:
-
determining placement of a selected cache line in a cache that comprises two or more cache levels including a L1 cache and one or more higher level cache levels, each cache level comprising a plurality of cache lines and having an associated directory having a plurality of directory entries corresponding to the cache lines, the directory entries including useful indicators and the determining responsive to a useful indicator associated with the selected cache line; suppressing prefetches from the higher cache levels to the L1 cache when the useful indicator is set to zero indicating that the cache line is not useful; placing prefetches from the higher cache levels to the L1 cache when the useful indicator is set to one indicating that the cache line is useful; and updating one or more of the useful indicators in response to a system event. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer program product for executing a cache replacement algorithm, the computer program product comprising:
-
a storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for facilitating a method comprising; determining placement of a selected cache line in a cache that comprises two or more cache levels including a L1 cache and one or more higher level cache levels, each cache level comprising a plurality of cache lines and having an associated directory having a plurality of directory entries corresponding to the cache lines, the directory entries including useful indicators and the determining responsive to a useful indicator associated with the selected cache line; suppressing prefetches from the higher cache levels to the L1 cache when the useful indicator is set to zero indicating that the cache line is not useful; placing prefetches from the higher cache levels to the L1 cache when the useful indicator is set to one indicating that the cache line is useful; and updating one or more of the useful indicators in response to a system event. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification