Run-time Adaptive Cache Management( PostScript version, PDF version)
Teresa Johnson
Phd thesis, Department of Electrical and Computer Engineering, University of Illinois, Urbana, IL, May 1998
The growing disparity between processor and memory performance has made
cache misses increasingly expensive. Additionally, data and instruction
caches are not always used efficiently, resulting in large numbers of cache
misses. Therefore, the importance of cache performance improvements at each
level of the memory hierarchy will continue to grow. For numeric programs
there are several known compiler techniques for optimizing data cache
performance. However, integer (non-numeric) programs often have irregular
access patterns that are more difficult for the compiler to optimize.
In the past, cache management techniques such as cache bypassing were
implemented manually at the machine-language-programming level.
As the available chip area grows, it makes sense to spend more resources
to allow intelligent control over the cache management.
The objective of this dissertation is to improve cache effectiveness,
taking advantage of the growing chip area, utilizing run-time
adaptive cache management techniques, and optimizing both performance
and cost of implementation. Specifically, the aim is to increase
cache effectiveness for integer programs. This dissertation proposes
a microarchitecture scheme where the hardware determines data
placement within the cache hierarchy based on dynamic referencing behavior.
This scheme is fully compatible with existing instruction set architectures.
This dissertation also examines the theoretical upper bounds on the cache hit
ratio that the proposed techniques can provide, for several integer
applications. Then, detailed trace-driven simulations of several integer
applications are used to show that the implementations described in this
dissertation can achieve performance close to that of the upper bound.
[ IMPACT Main Page |
Team Members |
Publications |
Software |
FAQ ]