Pressing demands for less power consumption of processors while delivering higher performance
levels have put an extra attention on efficiency of the systems. Efficient management
of resources in the current computing systems, given their increasing number of entities and
complexity, requires accurate predictive models that can easily adapt to system and application
changes. Through performance monitoring counter (PMC) events, in modern processors, a vast
amount of information can be obtained from the system. This thesis provides a methodology
to efficiently choose such events for power modeling purposes. In addition, exploiting the
time-dependence of the data measured through PMCs and multi-meters, we build predictive
multivariate time-series models that estimate the run-time power consumption of a system. In
particular, we find an autoregressive moving average with exogenous inputs (ARMAX) model
that is combined with a recursive least squares (RLS) algorithm as a good candidate for such
purposes.
Many of the available estimation or prediction models avoid using the metrics that are
affected by the changes of the processor frequency. This thesis proposes a method to mitigate
the impact of frequency scaling in a run-time model on power and PMC metrics. This method is
based on a practical Gaussian approximation. Different segments of the trend of a metric that
are associated with different frequencies are scaled and offset into a zero mean unit variance
signal. This is an attempt to transform the variable frequency trend into a weakly stationary
time-series. Using this approach, we have shown that power estimation of a system using PMCs
can be done in a variable frequency environment.
We extend the ARMAX-RLS model to predict the near future power consumption and
PMCs of different applications in a variable frequency environment. The proposed method is
adaptive, independent of the system and applications. We have shown that a run-time per core
or aggregate system PMC event prediction, multiple-steps ahead of time, is feasible using an
ARMAX-RLS model. This is crucial for progressing from the reactive power and performance
management methods to more proactive algorithms.