浅谈数据中心优化问题中资源利用率的预测

服务器 数据中心
随着数据量的不断膨胀,数据中心市场规模呈指数级增长。其中,新加坡作为东南亚的数据中心枢纽,占该地区数据中心 60%以上的市场份额,年增长率为10%[1]。 由于新加坡的数据中心密度高、体量大,其2012年的耗电量占2012年全能电量总消耗的7%,相比之下同年美国的数据中心电量消耗仅为2%。

随着数据量的不断膨胀,数据中心市场规模呈指数级增长。其中,新加坡作为东南亚的数据中心枢纽,占该地区数据中心 60%以上的市场份额,年增长率为10%[1]。 由于新加坡的数据中心密度高、体量大,其2012年的耗电量占2012年全能电量总消耗的7%,相比之下同年美国的数据中心电量消耗仅为2%。此外,新加坡属热带气候、常年高温,更增加了数据中心的运维难度和成本。根据文献[2]中的研究结果估计,新加坡有潜力大幅度提高数据中心的能效。若采用恰当的技术,到2030年能累计节省60亿新币的能源成本。

[[237796]]

因此,优化数据中心、提高能效是我们研究项目的最终目的。我们提出了面向IT子系统的Thermal-aware 任务调度:在考虑IT相关特征的同时,也把温度及功耗 (room-level、rack-level、server-level) 作为影响我们任务分配的关键所在,从而节省能源同时又不损失计算性能。与传统方法不同,我们选择利用DRL的算法来寻找***的控制策略。如图1所示,在DRL算法中,我们的目标environment(如数据中心) 处于某一个状态(state,如CPU利用率、温度、功耗等) 。此状态下,agent通过某种策略对目标环境施加一个动作(action,如分配新任务给某个服务器)使得environment的state发生变化,而新的state将作为选择下一次action的关键因素。为有效衡量该次action的优劣,我们引入reward(如平均温度、功耗、热点数量、平均CPU使用量等)的概念。如reward大,那么该action未来被选择的概率就大,反之则小。DRL算法通过agent和environment之间的迭代互动,来达到优化控制策略的目的。

图1 Outline of the DRL algorithm in our project

但将算法的训练过程部署到实际的数据中心中是不现实的,风险太大。因此,我们利用从真实数据中心(National Supercomputing Centre Singapore)采集到的数据,采用深度学习的方法,构建一个模拟真实数据中心的environment,并利用该environment来训练和测试DRL算法。在数据中心IT设备的众多特征中,CPU利用率是其中最为关键的,因为CPU的利用率是影响服务器功耗和温度的主要因素。我们采用LSTM[3]算法来对CPU利用率进行预测,从而精确模拟利用率和负载变化之间的复杂关系。LSTM是一种时间递归神经网络,非常适合用来处理和预测时间连续数据。如图2所示,前三个time step的和作为LSTM网络的输入,其中和分别为time step 的CPU利用率和被占用core数。我们的目标数据中心,拥有16个rack,每个rack配备72个计算服务器。根据实验结果显示(如图3所示), 预测模型的MAE(Mean Absolute Error)为0.397861%。

图2 LSTM for predicting CPU utilization

图3 Result of prediction of CPU utilization (Blue: predicted, Red: real)

在我们的研究项目中,目标数据中心的所有服务器都是HPC(High Performance Computer),向用户提供复杂、高强度的计算服务(如生物DNA匹配、地理环境模拟、气候环境模拟等)。因此,用户向数据中心申请core并开始执行计算任务后,CPU的利用率变化幅度小。我们必须强调这是预测模型能得到高预测精度的重要原因之一。但这并不意味这在所有情况下,CPU利用率都稳定。例如,根据Google公开的workload trace[4],在提供类似web service和存储服务时,CPU的利用率是很不稳定。如图4所示。

图4 Examples of the CPU utilization from Google

一般情况下,相似的任务类型会有近似的特性,比如CPU利用率的变化。因此,我们可以把CPU utilization的采样作为特征值,对所有任务进行聚类,把CPU利用率变化特性相似的任务作为一类。如图5所示,同一类任务,拥有相似的CPU利用率的变化曲线。因此,针对每一类任务,我们都可以利用LSTM来训练一个预测模型,从而达到精确预测的目的(测试结果如图6所示)。

图5 CPU utilizations of the tasks in the same cluster

图6 The result of prediction of CPU utilization based on clustering

对CPU利用率的预测,不仅可用来建立DRL的训练环境模型,还能利用到其他启发式的传统数据中心任务调度优化算法中。此外,如能采集到用户ID、任务类型、任务是否多线程等数据的话,更能提高该方法的可行性和预测精度。

参考文献

[1] Singapore is top data center hub in SE Asia: report.

[2] Green Data Cetnre Technology Roadmap, 2014.

[3] F. A. Gers, J. Schmidhuber, and F. Cummins. Learning to Forget: Continual Prediction with LSTM. Neural Computation, 12(10): 2451-2471, 2000.

[4] C. Reiss, J. Wilkes, J. L. Hellerstein, “Google-cluster traces:format+schema”, Google Inc., White Paper, November 2011.

责任编辑:武晓燕 来源: 南洋理工CAP组
相关推荐

2015-09-07 11:54:25

云计算数据中心资源利用

2021-02-03 09:26:49

数据中心基础设施能源

2012-10-11 10:21:33

数据中心CPU利用率服务器效率

2012-05-16 10:51:16

数据中心诟病

2022-11-07 13:59:05

Android插件化框架

2015-10-15 09:09:38

Oracle数据库华为

2013-04-02 09:15:40

服务器虚拟化

2012-11-07 15:07:30

VMware虚拟化

2018-05-17 09:13:15

数据中心阻碍优化

2015-07-10 11:05:04

SDNNFV数据中心

2022-11-29 11:33:30

戴尔

2009-10-13 09:34:26

数据中心布线

2017-04-12 11:02:50

Apache Meso资源利用容器

2012-05-08 15:04:12

Platform

2023-04-04 09:22:50

LinuxCPU命令

2017-08-25 15:56:54

Linuxproc文件系统CPU利用率

2022-07-01 10:53:05

KubernetesLinux工具

2011-03-17 13:54:42

查询参数SQL语句利用率

2018-02-09 05:02:48

数据中心网络架构VL2

2018-11-21 14:27:54

VxLAN数据中心局域网
点赞
收藏

51CTO技术栈公众号