Information Technology Reference
In-Depth Information
The second factor, the time it takes to wake up a powered-down functional unit,
depends on the capacitance that needs to be recharged when power is restored. The
wake up factor determines the performance impact of the technique. The more often a
functional unit is not ready when it is needed, the worse the performance impact. Thus,
to minimize the negative performance impact, one has to power-down a functional unit
the least number of times possible. This is the most pessimistic scenario that assumes
that there is no advance warning that a functional unit might be needed. If an advance
warning were available, the wake up time could be hidden resulting in little or no
performance penalty.
Finally, the decay interval determines the idle periods that are “selected” for powering
down the functional unit. A very small decay interval powers down a functional unit
even in very short idle periods; but this can be more damaging than beneficial depending
on the other two timing factors. In contrast, a large decay interval filters out the short
idle periods and powers down the functional unit only in larger idle periods.
Different types of functional units differ on the first two factors but also in the behavior
of their idle periods. In general, the larger the capacitance of a functional unit, the larger the
break-even point and the wake up time. Floating point functional units tend to have a wide
range of idle periods (in SPEC-FP 2000). Although their short idle periods are more numerous
than their longer ones, most idle cycles are due to the longer periods by virtue of their size. In
this case, a long decay interval skips the short idle periods, and selects only the large ones. This
minimizes the number of times the functional units are unavailable because they are powered
down while still benefiting by having the functional unit powered down for a significant part of
the time. Overall, this technique can power-down the floating point units for 28% of the time
with only minimal performance penalty (less than 2%) for the SPEC FP 2000.
Things are much harder with the integer functional units. These are used much more
often—for instance, loads that need address arithmetic are issued every four or five instructions.
This means that the bulk of the idle periods are short. Longer idle periods are rare and basically
appear after L2 misses where the processor may be starved of integer operations. The end result
is that the integer functional units can only be powered-down for a few percent of their time
(6-8%) without significantly harming the performance. Too small a decay interval increases the
power-down time but hurts performance, whereas a longer decay interval fails to capture the
numerous small idle periods, but, on the other hand, does not allow too many chances to catch
the functional units in their sleep.
Event guided power-gating : To improve power-gating, especially for the integer functional
units, Hu et al. propose using various events as clues to upcoming idleness of the functional
units. For example, upsetting events such as L2 misses, instruction cache misses, or branch
Search WWH ::




Custom Search