A non-transitory computer readable storage medium storing instructions which, when executed by a computer cause the computer to perform operations comprising: receiving a request for data from a component of a device; determining that the data is a predetermined type of data and that the data should only be stored in a cache at a level no higher than a target cache level; in response to determining that the data is the predetermined type of data and that the data should only be stored in a cache at a level no higher than the target cache level: determining the target cache level which defines a cache level within a cache hierarchy at which to store data that is of the predetermined type of data, the target cache level being lower than a highest cache level in the cache level hierarchy; requesting and receiving the data from a memory that is not a cache of the device; storing the data in a level of the particular cache that is at or below the target cache level in the cache level hierarchy; and storing, in a particular level of the particular cache that is above the target cache level in the cache level hierarchy, the data in a particular cache line of the particular level that is a least recently used cache line identified by a least recently used bit for the particular level in the cache level hierarchy and not updating the least recently used bit so that the least recently used bit does not indicate that the particular cache line has been updated to include the data; and providing the data to the component. receiving a request for data from a component of a device; determining that the data is a predetermined type of data and that the data should only be stored in a cache at a level no higher than a target cache level; in response to determining that the data is the predetermined type of data and that the data should only be stored in a cache at a level no higher than the target cache level: determining the target cache level which defines a cache level within a cache hierarchy at which to store data that is of the predetermined type of data, the target cache level being lower than a highest cache level in the cache level hierarchy; requesting and receiving the data from a memory that is not a cache of the device; storing the data in a level of the particular cache that is at or below the target cache level in the cache level hierarchy; and storing, in a particular level of the particular cache that is above the target cache level in the cache level hierarchy, the data in a particular cache line of the particular level that is a least recently used cache line identified by a least recently used bit for the particular level in the cache level hierarchy and not updating the least recently used bit so that the least recently used bit does not indicate that the particular cache line has been updated to include the data; and determining the target cache level which defines a cache level within a cache hierarchy at which to store data that is of the predetermined type of data, the target cache level being lower than a highest cache level in the cache level hierarchy; requesting and receiving the data from a memory that is not a cache of the device; storing the data in a level of the particular cache that is at or below the target cache level in the cache level hierarchy; and storing, in a particular level of the particular cache that is above the target cache level in the cache level hierarchy, the data in a particular cache line of the particular level that is a least recently used cache line identified by a least recently used bit for the particular level in the cache level hierarchy and not updating the least recently used bit so that the least recently used bit does not indicate that the particular cache line has been updated to include the data; and providing the data to the component.