CPU LOAD PREDICTION
A. Polynomial Fitting
B. One-step-ahead Prediction Strategy
1) Prediction based on Polynomial Fitting.
From our observations we found that 2nd or 3rd order polynomial fitting achieves much better (and the best) fitting effect than the 1st order (linear) fitting
2阶3阶多项式拟合效果更好
1阶线性拟合
3 (V_(T-2), V_(T-1), V_T) or 4 (V_(T-3), V_(T-2), V_(T-1), V_T)
Polynomial fitting function and then use the function value at polynomial the next time point as P_(T+1)
2) Prediction based on Similar Patterns
when the load traces vary smoothly and monotonously,多项式拟合取得好的效果,
遇到拐点就不好使了。
如下图,There are many similar "patterns" in the load traces
We use the value of last turning point(拐点) as the prediction value for the current point, P_(T+1).
We think that next point will be a turning point.
If we can't find a successively increasing series we will predict using a "conservative" strategy: we use V_T as P_(T+1)
For the other cases we also choose a conservative prediction strategy(比较保守的预测) that set the increment (decrement增减) between V_T and P_(T+1) as 0.
步进预测策略
算法预测(V1,V2,...,VT),输入CPU加载路径历史(V1,V2,... VT)
输出P_(T+1),预测V_(T+1)的值。
Begin
if
if V_{T-5}是拐点,在它之前的五个点也相继递减,
则 P_{T+1}=V_{T-5}#直接使用拐点值作为预测结果,结合单调性
else 预测P_{T+1}使用多项式拟合
if V_T是拐点
搜索V_T之前最后一个拐点,使用递增度量VT预测PT+1
if VT-1是拐点
if 最后模式改变方向在五个点之后
使用点递增两步要求最终拐点为VT递增
else PT+1=VT
if VT>VT-1>VT-2>VT-3
IF VT-3>VT-4 PT+1=VT
ELSE P_T+1=VT-(VT-VT-1)
对于其他情况,PT+1=VT
end
3) Multi-steps-ahead Prediction Strategy.多步直接预测
multi-steps-ahead CPU load prediction based on the above one-step-ahead prediction strategy
当我们预测第i步加载P-T+i(i>0),我们使用2)依次预测P-T+1,P-T+1,...,P-T+I-1,then we use the historical load trace and all the predicted load values P-T+i之前的历史信息来预测P-T+i
IV.预测任务运行时间
A.连续时间的任务运行时间估计
t_nom:nominal time
t_exp: we want to predict the expected execution time of the task on the loaded host
当主机上的可用时间在t_nom时到达,给定资源时间函数at(t):
at(t_exp)=t_nom
The available CPU time until time t, at(t) (t > 0), can be expressed as
V(t)为当前加载,可用时间递减同平均负载递增
B. Discrete-time Task Running Time Estimation
Suppose the sample interval is delta, the available time until the ith sample (i delta-th second) in the future can be expressed as:
使用线性插值
the continuous-time signal which represents the available time until t then can be estimated
C. Predict Task Running Time using CPU Load Prediction
We substitute the predicted load signal PT+j for VT+j so that we obtain the
predicted value for ali using (7), and then we calculate the predicted discrete-time available time using (6) and its corresponding continuous-time approximation using (8).
Evaluation results for multi-steps-ahead CPU load prediction
- Choose a random value between 100 ms and 10seconds from a uniform distribution as the nominal time of a task, t_nom.
- Select a CPU load prediction system from our method and AR(16) model.
- Calculate the expected task running time texp using load predictions derived from the above selected load prediction system.
- Calculate the actual task running time t_act on the host with the load measurements in the trace.
- Calculate the prediction error for the selected load prediction system.预测任务执行时间可用于改进动态网格环境中的资源选择和调度,
基于多步进的CPU预测新策略
The results of experiments that we conducted demonstrate that this new prediction strategy outperforms the task running time prediction method using
AR(16) load prediction model.