Information Technology Reference
In-Depth Information
appealing as an adaptive technique, in reality it is harder to control than AMC. Besides, there
is nothing in the AMC (or its control-theory extension) to preclude finer, per-cache-line,
adaptivity although something like this has not been evaluated as yet. Conversely, control in
the per-cache-line adaptive scheme could be improved by establishing a feedback loop similar
to that of AMC.
5.2.4 Decay in the L2
The generational behavior of cache lines, upon which cache decay is based, is readily apparent
in the L1. Unfortunately, this is not so in the L2, where it is obscured by the L1 filtering of the
accesses. In reality, the L2 observes the behavior of the L1 misses .
The typical generational behavior for a cache line is to experience a flurry of accesses—
with short inter-access times—when it is first brought into the cache, followed by a long dead
time until it is replaced. The situation in the L2 is different. In the absence of a conflict (in the
L1), only a single access to a cache line, at a time, is visible in the L2: the one that transfers the
cache line to the L1. No more accesses are visible in the L2 until the cache line is replaced in
the L1. The next L2 access corresponds to a new L1 generation. In the case of a conflict, the
L2 observes accesses at random points in a cache line's generation as a result of two different
generations elbowing each other out of the L1 while still in their live times.
The end result is that the decay intervals in the L2 must be very large for the technique to
work reliably without significant performance degradation. The initial studies concluded that
cache decay works well in the L2 using such large-decay intervals (of the order of 1M cycles).
However, this could be attributed more to the easy fit of the benchmarks in large L2s (leaving
ample empty space which can be turned off) rather than to the accuracy of the technique in
determining dead lines. With a scaled-down L2, decay is stressed to provide a good turn-off
ratio for a reasonable performance loss.
A better adaptive decay for L2 : Abella, Gonzalez, Vera, and O'Boyle exposed the problems
in the L2 and proposed a new technique to turn off unused L2 lines [ 1 ].Thegoalistofind
an appropriate method to dynamically adjust the decay interval for the L2. Abella et al. make
a key observation: the inter-access time—the time between two accesses to the same cache
line—in the L2 seems to depend on the number of accesses to the cache line. Thus, the decay
interval for each cache line needs to change as the cache line is accessed. The actual behavior of
the inter-access times, as a function of the number of accesses to a cache line, depends on the
application and needs to be captured at run-time. The implementation details can be found in
[ 1 ].
Although this technique carries significant book-keeping overhead, its benefits more than
make up for it. The decay interval as a function of the number of accesses to a cache line is
much more effective than the very large static decay intervals typically needed in the L2 to avoid
Search WWH ::




Custom Search