摘要

随着云计算技术的快速发展,数据中心的数量大幅增加,随之而来的能源消耗问题逐渐成为研究的热点之一。针对服务器能耗优化问题,提出了一种数据中心服务器能耗优化算法(ECOXG)。首先利用Linux终端监控命令和功耗仪收集服务器各部件的资源占用信息和能耗等数据,并对其进行数据预处理,得到资源利用率。其次,将资源利用率串联构造成向量形式的时间序列,用于训练多个门控循环单元(Multi-GRU)负载预测模型,并根据预测结果对服务器进行模拟降频,得到降频后的负载数据。然后将服务器的资源利用率与相同时刻的能耗数据结合,用于训练极限梯度提升(XGBoost)能耗预测模型。最后将降频后的负载数据输入到训练后的XGBoost模型中,预测出降频后的服务器能耗。通过对6台物理服务器实际资源利用率数据的实验表明,与卷积神经网络(CNN)、长短期记忆网络(LSTM)、CNN-GRU和CNN-LSTM模型相比,ECOXG在均方根误差(RMSE)上分别降低了50.9%、31.0%、32.7%、22.9%;同时,与LSTM、CNN-GRU和CNN-LSTM模型相比,ECOXG在训练时间上分别节省了43.2%、47.1%、59.9%。实验结果表明,ECOXG算法能够在服务器能耗预测和能耗优化方面提供一定的理论基础,且在误差和运行效率方面明显优于对比算法。此外,模拟降频后的服务器能耗已明显低于真实能耗,且在服务器的利用率较低时降耗效果显著。