01.12.2012 Views

Architecture of Computing Systems (Lecture Notes in Computer ...

Architecture of Computing Systems (Lecture Notes in Computer ...

Architecture of Computing Systems (Lecture Notes in Computer ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Autonomic Workload Management for Multi-core Processor <strong>Systems</strong> 55<br />

Fig. 3. Generation <strong>of</strong> the <strong>in</strong>itial rule set<br />

R(O T )<br />

1.0<br />

0.0<br />

-1.0<br />

O T−1 2<br />

O T<br />

O T−1<br />

1.0<br />

Fig. 4. Reward function<br />

objective function, which evaluates all available monitor signals to determ<strong>in</strong>e how<br />

well the system is currently function<strong>in</strong>g. First, a delta value is calculated for each<br />

monitor signal to <strong>in</strong>dicate how close that signal is to its optimal value (low values are<br />

desirable):<br />

δ frequency ∝ frequency<br />

(2)<br />

workload<br />

utilization<br />

( 100 − utilization)<br />

δ ∝ %<br />

(3)<br />

δ ∝ workload − workload<br />

(4)<br />

local<br />

average<br />

The function used for each <strong>of</strong> these values is determ<strong>in</strong>ed by the designer, and expresses<br />

the designer’s optimization goal. For this paper, we would like each CPU to<br />

have as low a frequency as possible, which keeps the power consumption <strong>of</strong> the system<br />

low (voltage is automatically scaled <strong>in</strong> relation to the frequency). Likewise, we<br />

want the CPU utilization to be as high as possible, so that no process<strong>in</strong>g cycles are<br />

wasted <strong>in</strong> an idle loop. F<strong>in</strong>ally, the workload <strong>of</strong> all CPUs should be similar to avoid<br />

temperature hot spots and to ensure similar ag<strong>in</strong>g across all components. Depend<strong>in</strong>g<br />

on the available monitor signals and the designer’s optimization goals, other delta<br />

functions may be chosen.<br />

Comb<strong>in</strong><strong>in</strong>g the <strong>in</strong>dividual delta functions is accomplished by a simple weight<strong>in</strong>g<br />

scheme, which yields the system’s objective function:<br />

f objective = w1<br />

⋅δ<br />

frequency + w2<br />

⋅δ<br />

utilization<br />

+ w3<br />

⋅δ<br />

workload (5)<br />

The weights can be chosen accord<strong>in</strong>g to which optimization goal is most important;<br />

for this paper each delta function is weighted equally.<br />

Although the objective function provides a value <strong>in</strong>dicat<strong>in</strong>g how well the system<br />

is perform<strong>in</strong>g at some <strong>in</strong>stant <strong>in</strong> time, <strong>in</strong> order to determ<strong>in</strong>e the worth <strong>of</strong> a certa<strong>in</strong><br />

rule we need to calculate a reward R that compares the objective value sampled<br />

before and after the rule was applied. As shown <strong>in</strong> Figure 4, if the previous objective<br />

value OT-1 is larger than the new objective value OT, <strong>in</strong>dicat<strong>in</strong>g that the system<br />

has gotten closer to its optimal state, a positive reward is chosen based on the magnitude<br />

<strong>of</strong> the change. Otherwise, a negative reward is returned. This reward is then<br />

used to update the fitness <strong>of</strong> the applied rule, which allows the LCT to make use <strong>of</strong><br />

past experience when determ<strong>in</strong><strong>in</strong>g which rule should be applied dur<strong>in</strong>g similar<br />

situations <strong>in</strong> the future.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!