Processor cache management with software input via an intermediary
First Claim
Patent Images
1. A method of cache management in a computer system, the method comprising:
- receiving, from an upper layer of software of the computer system, an access behavior description at an intermediary between the upper layer of software and a processor subsystem of the computer system, the access behavior description comprising an indication of how items of a working set are going to be accessed by the upper layer of software when the upper layer of software is executed by the processor subsystem;
determining, by the intermediary, a cache usage management hint based upon a cache configuration of the processor subsystem and the access behavior description specifying a stream access pattern, the cache usage management hint preventing items of the working set from being cached in caches larger than a smallest cache larger than a window corresponding to the stream access pattern; and
providing, by the intermediary, the cache usage management hint to the processor subsystem for consideration by the processor subsystem when performing cache management for at least one cache.
2 Assignments
0 Petitions
Accused Products
Abstract
Software assists a processor subsystem in making cache replacement decisions by providing an intermediary with information regarding how instructions and/or data of a working set are expected to be used and accessed by the software. The intermediary uses this information along with its knowledge of system requirements, policy and the cache configuration to determine cache usage and management hints for the working sets. The cache usage and management hints are passed by the intermediary to the processor subsystem.
-
Citations
20 Claims
-
1. A method of cache management in a computer system, the method comprising:
-
receiving, from an upper layer of software of the computer system, an access behavior description at an intermediary between the upper layer of software and a processor subsystem of the computer system, the access behavior description comprising an indication of how items of a working set are going to be accessed by the upper layer of software when the upper layer of software is executed by the processor subsystem; determining, by the intermediary, a cache usage management hint based upon a cache configuration of the processor subsystem and the access behavior description specifying a stream access pattern, the cache usage management hint preventing items of the working set from being cached in caches larger than a smallest cache larger than a window corresponding to the stream access pattern; and providing, by the intermediary, the cache usage management hint to the processor subsystem for consideration by the processor subsystem when performing cache management for at least one cache. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A processor subsystem comprising:
-
at least one processor; an intermediary configured to determine a cache usage management hint based upon a cache configuration of the processor subsystem and an access behavior description specifying a stream access pattern of how items of a working set are going to be accessed by an upper layer of software, the cache usage management hint preventing items of the working set from being cached in caches larger than a smallest cache larger than a window corresponding to the stream access pattern; one or more caches configured to store items of working sets; and a tracking component configured to track performance events within the processor subsystem. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer readable device comprising computer executable instructions that when executed via a processor on a computer system perform a method comprising:
-
receiving, from an upper layer of software of the computer system, an access behavior description at an intermediary between the upper layer of software and a processor subsystem of the computer system, the access behavior description comprising an indication of how items of a working set are going to be accessed by the upper layer of software when the upper layer of software is executed by the processor subsystem; determining, by the intermediary, a cache usage management hint based upon a cache configuration of the processor subsystem and the access behavior description specifying a stream access pattern, the cache usage management hint preventing items of the working set from being cached in caches larger than a smallest cache larger than a window corresponding to the stream access pattern; and providing, by the intermediary, the cache usage management hint to the processor subsystem for consideration by the processor subsystem when performing cache management for at least one cache. - View Dependent Claims (19, 20)
-
Specification