Department of Information Technology
Uppsala Architecture Research Team

Interval-based models for run-time DVFS orchestration in superscalar processors

We develop two simple interval-based models for dynamic superscalar processors. These models allow us to: i) predict with great accuracy performance and power consumption under various frequency and voltage combinations and ii) implement targeted DVFS policies at run-time. The models analyze program execution in intervals: steady-state and miss-event intervals. Intervals are signalled by miss events (L2-misses in our case) that upset the "steady state" execution of the program and are ended when the pipeline reaches again a steady state. The first model is fed by an approximation of the stall cycles (the time the processor instruction window is blocked) due to long-latency L2-misses. The second model improves on this approximation using as input the occupancy of the L2's miss-handling registers (MSHRs). Despite their simplicity these models prove to be accurate in predicting the performance (and energy) for any target frequency/voltage setting, yielding average errors of 2.1% and 0.2% respectively.

Besides modelling, we show that the methodology we propose is powerful enough to implement (at run-time) various DVFS
policies: "operate at optimal EDP" or "ED2P," or even "reduce ED2P within specific performance constraints." Approaches based on the two models require minimal hardware cost: two counters for measuring the duration of the steady state and the miss-event intervals and some comparison logic. To validate our methodology we use a cycle-accurate simulator and the benchmarks provided by the SPEC2K suite. Our results indicate that our proposed run-time mechanism is able to orchestrate different DVFS policies with great success yielding negligible errors - bellow 1.5% on average.

Useful instructions issued per cycle in the case of an isolated L2 load miss.
Useful instructions issued per cycle in the case of an isolated L2 load miss.

Updated  2015-01-21 12:41:20 by Vasileios Spiliopoulos.