Patent ID: 8874844

Claim:
A computer-implemented method for preparing and storing data in a cache coupled to multiple clients and to an external memory, the method comprising: producing a write request including intermediate data for storage in a dynamically sized buffer that is shared between the multiple clients and configured to store multiple different types of data, wherein the dynamically sized buffer resides within the cache, the cache is configured to store data belonging to a first eviction class that is associated with raster-operations-unit-data, a second eviction class that is associated with texture data, and a dynamically sized buffer eviction class, the dynamically sized buffer is configured to store only data belonging to the dynamically sized buffer eviction class, and the dynamically sized buffer is configured to store intermediate data produced by a graphics processing cluster; aligning the intermediate data to correspond with an address that is aligned to a cache line boundary to produce aligned intermediate data; specifying the dynamically sized buffer eviction class for the aligned intermediate data, wherein the dynamically sized buffer eviction class indicates that data stored in the cache that is both evictable and belonging to either the first eviction class or the second eviction class should be evicted from the cache before the aligned intermediate data is evicted from the cache; and outputting the write request including the aligned intermediate data with an indication of the dynamically sized buffer eviction class.