Browse Prior Art Database

A Methodology for Adaptive Cache Size Management using Set-Associative Metrics

IP.com Disclosure Number: IPCOM000013472D
Original Publication Date: 2003-Jun-18
Included in the Prior Art Database: 2003-Jun-18
Document File: 3 page(s) / 63K

Publishing Venue

IBM

Abstract

Described is an adaptive methodology for adjusting cache sizes for optimum application execution, with a specific focus on set-associative metrics.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 3

  A Methodology for Adaptive Cache Size Management using Set-Associative Metrics

With the emerging increases in memory capacity, a pressing issue to address is how to effectively utilize available memory for optimal performance. There are many alternatives to consider when addressing this issue. For example, increased user space, increased cache and translation lookaside buffer (TLB) sizes (particularly for software controlled caches), increased kernel space, increased kernel buffer size, increased user space, etc. The solution space for this issue is enormous; however, the focus of this invention is an adaptive methodology for adjusting cache sizes for optimum application execution, with a specific focus on set-associative metrics.

Described is a methodology for transparent adaptive cache size management. Metrics, such as the set miss window and the cacheline reaccess window, are used to adjust the size of the cache for optimal utilization of memory resources and for increasing application execution efficiency. This is not unique to a specific type of cache (i.e., processor cache, disk cache, web cache), for it is useful in any cache design. There are several studies and inventions that focus on adaptive cache management issues. For example, Nicolaescu, et. al. [1], examined mechanisms for adjusting the size of a victim cache using compiler assistance.

The methodology disclosed is distinct from other adaptive cache management processes. It focuses on adapting the size of the cache for efficient utilization of memory resources in a user-transparent manner, without the assistance of a compiler. It uses set-associative metrics as a means for this size adaptation.

The cache size is adjusted, based upon the reference behavior of the workloads, when using a set associative-cache. The methodology is described as follows:

A set miss is an event in which a warm cache miss occurs within a specific set, in a set-associative cache. A set miss window is defined as the number of 1) cache accesses to a specific set in the cache, or 2) cache accesses in general, between set misses.

If a cacheline is replaced within a set within the cache, then the cacheline reaccess window is defined as the number of times any cache line within the set is accessed, after the specific cacheline is replaced, before the specific cache line is accessed again.

Assume a low set miss window threshold, set_mwl. If the set miss window (calculated after a transient warm up process), is less than or equal to set_mwl, then the size of the cache is increased by a granular size, if the available memory is >= this granular size. The size...