Browse Prior Art Database

A Methodology for Size Adjustment in Adaptive Cache Size Management

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

Publishing Venue

IBM

Abstract

Disclosed is an adaptive methodology for determining size adjustments for adaptive caches for optimum application execution.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 3

A Methodology for Size Adjustment in Adaptive Cache Size Management

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 determining size adjustments for adaptive caches for optimum application execution.

Described is a transparent methodology for calculating the upward or downward cache size adjustment in adaptive cache management. The primary metric used is a count of the number of times the access gap between two cache accesses is a given value. The access gap is the difference between the actual cache line number accessed by the current request and the line number accessed by the previous request. This metric is therefore based upon spatial locality and history (details are described below).

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 here is distinct from other adaptive cache management inventions in that it focuses on calculating the upward or downward adjustment in the size of a cache, for adaptive cache size management, in a user-transparent manner, and without the assistance of a compiler.

1

Page 2 of 3

lin e 0 lin e 1 lin e 2 lin e 3

lin e 1 6 3 8 2 line 16383

.

.

lin e 6 4 line 65

.

.

ca ch e

lin e 0

line 1 lin e 2 line 3 lin e 4 lin e 5

line 126 line 127

.

.

se t 0

se t 1

se t 2

se t 6 3

mai n memor y

mai n memory addr ess

8 6 4

ta g se t word

Figure 1. Mapping Main Memory into a 2-Way Set-Associate Cache.

Granular size adjustment for cache. The upward or downward adjustment of the cache size is an adaptive process, as described below. Consider a main memory, which may be composed of several cache lines. Also...