一种基于多元细粒度特征回归分析的服务器功耗建模方法

专利2024-12-14  19



1.本发明涉及一种基于多元细粒度特征回归分析的服务器功耗建模方法,属于绿色计算技术领域。


背景技术:

2.信息技术的飞速发展带来了对硬件基础设施的海量需求,其中服务器是为信息应用提供算力的基本硬件形态。然而,随着服务器个体性能的不断增强以及服务器数量的不断增多,服务器及其集群的功耗问题日益突出,不仅带来了高昂的电力支出,也导致了碳排放增加等环境问题。为了监控和管理服务器的功耗,研究人员分别从硬件和软件层面提出了功耗优化方法,包括:动态电源管理、能效感知的任务调度等。上述功耗优化方法通常需要掌握服务器本身的功耗特性,特别是在若干个服务器组成的集群中,如何根据不同服务器的功耗特性进行全局任务调度已成为降低集群整体功耗的有效手段。因此,服务器功耗建模不仅可以刻画其电力输入与算力输出的基本关系,精确的功耗模型也可以作为上层功耗优化方法的坚实基础。
3.现有的服务器功耗建模方法通常是选取能够表征硬件使用程度的硬件计数器作为自变量,通过在服务器上运行基准功耗测试集程序并外接功率测量仪,测得的功耗值作为因变量,再通过数据分析的方法获得自变量和因变量的拟合关系,作为该服务器的功耗模型。典型的功耗测试方法如标准性能评估机构spec提供的测试工具,它通过在服务器上运行java操作指令其按固定步长地进入到不同的cpu使用率状态,记录相应的功耗值,从而可以获得基于cpu使用率的服务器功耗模型。然而,采用单一硬件特征刻画服务器功耗变化的规律,粒度粗放,易产生较大误差,不利于提升功耗模型的精度。因此,如何通过更丰富的硬件特征指标构建更精确的服务器功耗模型是一个亟待解决的问题。
4.公开(公告)号为cn113961413a的专利《服务器功耗测试方法和装置》提供了一种服务器功耗测试方法及装置,先根据待测服务器的硬件信息和资源使用信息计算压力测试时的模型加载参数,再根据这些参数对服务器资源进行加压,并压力加载中实时监控服务器cpu、磁盘i/o总带宽和网络i/o总带宽中至少一项的资源利用率,最后利用该资源利用率与对应的功耗测量值构建服务器的功耗模型。该方法虽然考虑了除cpu以外的其他资源使用情况与服务器的功耗变化关系,但所选用的硬件特征依然较为单一,难以表征服务器的整体工况,同样存在spec功耗测试中功耗模模型精确度低的问题。
5.公开(公告)号为cn112269715a的专利《服务器功耗测方法及相关设备》提供了在配置有非易失性内存nvm虚拟化平台服务器的功耗测试方法和相关设备,通过预设功耗测试脚本对被测服务器及其下辖 nvm进行压力测试,并对其内存带宽进行监控,通过监控结果测算服务器功耗与nvm带宽的关联关系作为功耗模型。该方法所针对的应用场景方面具有一定限制,且仍采用了基于内存带宽的单一指标,同样存在功耗模型不精确的问题。
6.上述专利的最终目标是通过观测硬件计数器与服务器功耗测量值之间的关系,获得服务器的功耗模型,从而实现对服务器功耗的评估和预测。现有技术存在如下问题:(1)
所观测的硬件计数器指标较少,不利于刻画服务器复杂的运行时工况;(2)基准测试集应用程序类型单一,难以覆盖服务器不同的功耗区间;(3)构建功耗模型所采用的特征指标相对固定,没有考虑不同服务器之间的差异性。


技术实现要素:

7.为解决上述问题,本发明提供一种基于多元细粒度特征回归分析的服务器功耗建模方法。
8.首先,对服务器的cpu、内存、磁盘和网络中与功耗相关的硬件特征指标进行提取;接着,运行cpu密集型、i/o密集型、网络密集型三种不同类型应用程序并记录上述硬件特征指标值和服务器功耗测量值;然后,利用主成分分析法分析各个特征指标对服务器功耗的贡献度,从而确定参与功耗建模的特征指标;最后,通过回归分析构建所确定的特征与功耗之间的关系模型,完成服务器功耗建模。与现有技术相比,本方法充分利用了与服务器功耗相关的多元细粒度特征,回归分析建模方法具有简单高效、预测准确率高的优点。
9.为实现上述目的,本发明采取的技术方案是:一种基于多元细粒度特征回归分析的服务器功耗建模方法,包括如下步骤:
10.本发明公开了一种基于多元细粒度特征回归分析的服务器功耗建模方法,包括如下步骤:
11.步骤(1)特征收集:对服务器中与硬件资源使用程度相关的特征进行提取和统计,形成功耗建模待选特征集合;
12.步骤(2)压力测试:服务器运行cpu密集型、i/o密集型和网络密集型三种不同类型的压力测试应用程序,记录步骤(1)收集特征的值和服务器的功耗测量值;
13.步骤(3)特征筛选:利用主成分分析法对各个特征对服务器功耗的贡献率进行分析,依据贡献率对特征进行筛选;
14.步骤(4)模型训练:基于步骤(3)选择的特征和服务器功耗测量值,采用回归分析的方法构建所选特征与服务器功耗的关系模型,完成服务器功耗建模。
15.本发明进一步改进在于:
16.所述步骤(1)中针对服务器的主要硬件,包括:cpu、内存、磁盘和网络,选取其与功耗相关的特征指标,形成功耗建模待选硬件特征指标集。
17.本发明进一步改进在于:
18.步骤(21)记录服务器空闲时的功耗,并通过压力测试获得服务器的最大功耗,作为该服务器功耗值的区间范围;
19.步骤(22)运行cpu密集型、i/o密集型和网络密集型三种类型应用程序,使其尽可能多地覆盖服务器的不同工作状态和不同功耗值,记录所述待选特征指标集的特征值和服务器对应的功耗测量值。
20.本发明进一步改进在于:所述步骤(3)包括以下步骤:
21.步骤(31)对收集到的特征值和功耗数据进行主成分分析,得出各个特征对功耗的贡献率;
22.步骤(32)利用所得出的功耗特征贡献率,按从高到低的顺序选取一定数量的特征指标作为功耗建模的特征,实现特征降维。
23.本发明进一步改进在于:
24.所述步骤(4)包括以下步骤:
25.步骤(41)根据功耗模型的应用场景,综合考虑模型精度和预测效率,选择合适的回归模型;
26.步骤(42)利用所述步骤(3)中收集的特征值和功耗测量值,拟合生成服务器的功耗模型函数。
27.本发明提供一种基于多元细粒度特征回归分析的服务器功耗建模方法,具有以下有益效果:
28.(1)采用丰富的特征集刻画服务器的运行时工况。服务器不同硬件通常会有相关的硬件计数器指标来表征其使用程度等,但单一的指标难以刻画服务器的整体运行时状态。通过采用丰富的硬件指标特征集,可以从多个维度刻画服务器的当前工况,有利于更准确地表征服务器使用状态与功耗之间的变化关系。
29.(2)通过多类型基准测试程序覆盖服务器不同功耗区间。采用 cpu密集型、i/o密集型和网络密集型的基准测试程序对服务器进行压力测试,一方面更接近真实场景的应用程序,另一方面多类型的测试程序可以使得服务器覆盖更多的功耗区间,从而获得更真实、更丰富的训练数据,有利于提升服务器功耗模型的精确度。
30.(3)表征功耗变化的硬件特征指标具有灵活性。该方法没有采用预设固定的特征指标集,而是采用“初选+筛选”的方式针对待测服务器确定功耗建模的特征集,筛选依据为相关特征与功耗变化的关联程度,从理论上有力地保证了参与功耗建模特征的针对性和可靠性。
附图说明
31.图1为服务器功耗建模方法总体示意图;
32.图2为服务器功耗建模基本步骤示意图。
具体实施方式
33.下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向,词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。
34.本发明所述的一种基于多元细粒度特征回归分析的服务器功耗建模方法,需要搭建测试平台,包括:待测服务器、功率分析仪和基准测试集三个要素,如图1所示。
35.其中,待测服务器是本方法的功耗建模对象;功率分析仪用于测量服务器的实际功耗,遵循功率计量的相关电气规范外接到待测服务器;基准测试集包含本发明所述的能够覆盖服务器功耗区间的cpu密集型、i/o密集型和网络密集型应用程序。通过运行基准测试集测试,记录服务器硬件指标值和对应的功耗测量值,可以获得若干组数据,再通过本发明所述方法对这些数据进行处理和训练,最终获得多元回归的服务器功耗模型。
36.具体步骤如图2所示,包括特征收集、压力测试、特征筛选和模型训练四个步骤。
37.步骤1.特征收集步骤负责收集与功耗建模相关的特征,为将与功耗模型相关的特
征进行提取,本发明考虑了服务器主要的硬件子系统。假设p
system
是服务器的整体功耗,那么可以将整体功耗建模为 p
system
=p
cpu
+p
memory
+p
disk
+p
network
+δ。其中,p
cpu
是 cpu子系统的功耗,p
memory
是内存子系统的功耗,p
disk
是磁盘子系统的功耗,p
network
是网络子系统的功耗,δ是其他服务器组件的功耗;然后,将服务器各个组件与功耗可能相关的特征进行梳理,按照各个子系统进行分类,如表1所示。需要说明的是,这些特征指标与相关的采集工具相关,这些工具有些是服务器操作系统自带,有些是第三方提供,因此它们的具体含义和数量并不固定。而在特征收集过程中并不对这些硬件特证做出特别限制,表1是在li nux操作系统环境下部分相关特征。
38.表1服务器子系统功耗特征指标
39.40.[0041][0042]
步骤2.压力测试步骤负责通过运行cpu密集型、i/o密集型和网络密集型基础测试集程序尽可能多地覆盖服务器的不同工作状态和功耗区间。假设通过前一步骤收集到了m项特征,分别记作x1,x2,

xm。在linux操作系统中可以通过sysstate工具收集,它包含了监测系统性能和效率的一组工具,可收集包括cpu使用率、硬盘和网络吞吐量数据等近百种数据。这些数据可以通过日志记录在本地或通过 redf i sh、sys l og等方式被第三方读取。在记录上述特征值的同时,记录功率分析仪的功耗值数据p,可使用带有通信功能的功率分析仪,将功率数据上送到服务器或由第三方汇总。运行n组基准测试程序将同步产生n组形如(p:x1,x2,

xm)的数据,特征值数据和功耗值数据可以通过时间戳的进行数据时间对齐。
[0043]
步骤3.特征筛选步骤通过主成分分析方法选择有限数量个最能表征功耗模型的
特征,具体步骤如下:
[0044]
(31)数据的标准化处理。需要采用标准差的方法来对各样本的特征指标进行标准化处理:假设第i组测试样本数据中的j个特征的取值为a
ij
,将其转换为标准化指标利用下面的公式求得:
[0045][0046]
其中,为第j个样本的方差;为第j个样本的均值;为标准化特征变量。
[0047]
(32)相关系数矩阵r=(r
ij
)m×m,其中r
ij
为第i个特征指标与第j个特征指标的相关系数,具体计算方式如下:
[0048][0049]
(33)矩阵r的特征值和特征向量的计算。求解特征方程 |λi-r|=0,得到按大小排序的特征值λ1≥λ2…
≥λm≥0,求出λi对应的特征向量u1,u2,

um,其中uj=(u
1j
,u
2j
,
…umj
)
t
,由特征向量组成的m个新的指标变量为:
[0050][0051]
其中,y1是第一主成分,y2是第二主成分,ym是第m个主成分。
[0052]
(34)选择k(k《m)个主成分。计算特征值λj(j=1,2,

,m) 的信息贡献率和累计贡献率。主成分yi的信息贡献率的信息贡献率主成分y1,y2,

yk的累积贡献率当αk接近于1时,则选择前k个指标变量作为主成分替代原来的m个功耗特征指标。
[0053]
步骤4.模型训练步骤使用多元回归方法建立筛选后的特征与功耗值的关联关系,具体包括如下步骤:
[0054]
(41)选择合适的回归模型。前一步骤筛选出了k个硬件指标,形成了形如(p1:x
11
,x
12
,

x
1k
),(p2:x
21
,x
22
,

x
2k
),

, (pn:x
n1
,x
n2
,

x
nk
)的n组样本数据。下面可根据筛选后的特征数量以及功耗值的变化规律,选择合适的多元回归模型。例如,若样本数据满足多重弹性模型关系,即可选择形如下面的关系函数作为模型
[0055][0056]
其中,β0,β1,

βk是回归系数,∈为随机误差。
[0057]
需要说明的是,回归模型的种类繁多,可以在选择阶段考虑多个候选模型,并通过
模型测试的方法选择最合适的模型,模型测试的方法包括但不限于计算模型预测值与实际测量值的误差平方和。
[0058]
(42)模型参数求解。根据n组样本数据采用已有工具如matlab 等求解回归系数、随机误差等模型相关参数,并对模型的拟合度进行评估。
[0059]
通过上述过程,可获得一种基于多元细粒度特征回归分析的服务器功耗模型,在进行功耗预测时,将服务器当前的相关硬件指标值代入模型进行计算,即得到服务器的功耗预测值。
[0060]
本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。

技术特征:
1.一种基于多元细粒度特征回归分析的服务器功耗建模方法,其特征在于:包括如下步骤:步骤(1)特征收集:对服务器中与硬件资源使用程度相关的特征进行提取和统计,形成功耗建模待选特征集合;步骤(2)压力测试:服务器运行cpu密集型、i/o密集型和网络密集型三种不同类型的压力测试应用程序,记录步骤(1)收集特征的值和服务器的功耗测量值;步骤(3)特征筛选:利用主成分分析法对各个特征对服务器功耗的贡献率进行分析,依据贡献率对特征进行筛选;按从高到低的顺序选取一定数量的特征指标作为功耗建模的特征,实现特征降维;步骤(4)模型训练:基于步骤(3)选择的特征和服务器功耗测量值,采用回归分析的方法构建所选特征与服务器功耗的关系模型,完成服务器功耗建模。2.根据权利要求1所述的一种基于多元细粒度特征回归分析的服务器功耗建模方法,其特征在于:所述步骤(1)中针对服务器的主要硬件,包括:cpu、内存、磁盘和网络,选取其与功耗相关的特征指标,形成功耗建模待选硬件特征指标集。3.根据权利要求1所述的一种基于多元细粒度特征回归分析的服务器功耗建模方法,其特征在于:所述步骤(2)包括以下步骤(21)记录服务器空闲时的功耗,并通过压力测试获得服务器的最大功耗,作为该服务器功耗值的区间范围;步骤(22)运行cpu密集型、i/o密集型和网络密集型三种类型应用程序,使其尽可能多地覆盖服务器的不同工作状态和不同功耗值,记录所述待选特征指标集的特征值和服务器对应的功耗测量值。4.根据权利要求1所述的一种基于多元细粒度特征回归分析的服务器功耗建模方法,其特征在于:所述步骤(3)具体步骤如下:步骤(31)数据的标准化处理;需要采用标准差的方法来对各样本的特征指标进行标准化处理:假设第i组测试样本数据中的j个特征的取值为a
ij
,将其转换为标准化指标利用下面的公式求得:其中,为第j个样本的方差;为第j个样本的均值;为标准化特征变量;步骤(32)相关系数矩阵r=(r
ij
)
m
×
m
,其中r
ij
为第i个特征指标与第j个特征指标的相关系数,具体计算方式如下:
步骤(33)矩阵r的特征值和特征向量的计算;求解特征方程|λi-r|=0,得到按大小排序的特征值λ1≥λ2…
≥λ
m
≥0,求出λ
i
对应的特征向量u1,u2,

u
m
,其中u
j
=(u
1j
,u
2j
,

u
mj
)
t
,由特征向量组成的m个新的指标变量为:其中,y1是第一主成分,y2是第二主成分,y
m
是第m个主成分;步骤(34)选择k(k<m)个主成分;计算特征值λ
j
(j=1,2,

,m)的信息贡献率和累计贡献率;主成分y
i
的信息贡献率主成分y1,y2,

y
k
的累积贡献率当α
k
接近于1时,则选择前k个指标变量作为主成分替代原来的m个功耗特征指标。5.根据权利要求1所述的一种基于多元细粒度特征回归分析的服务器功耗建模方法,其特征在于:所述步骤(4)包括以下步骤:步骤(41)根据功耗模型的应用场景,综合考虑模型精度和预测效率,选择合适的回归模型;步骤(42)利用所述步骤(3)中收集的特征值和功耗测量值,拟合生成服务器的功耗模型函数。

技术总结
本发明提出一种基于多元细粒度特征回归分析的服务器功耗建模方法,考虑了服务器的固有硬件和应用程序的细粒度特征,构建了一种有效的功耗预测模型。首先,对服务器的CPU、内存、磁盘和网络中与功耗相关的硬件特征指标进行提取;接着,运行CPU密集型、I/O密集型、网络密集型三种不同类型应用程序并记录上述硬件特征指标值和服务器功耗测量值;然后,利用主成分分析法分析各个特征指标对服务器功耗的贡献度,从而确定参与功耗建模的特征指标;最后,通过回归分析构建所确定的特征与功耗之间的关系模型,完成服务器功耗建模。与现有技术相比,本方法充分利用了与服务器功耗相关的多元细粒度特征,回归分析建模方法具有简单高效、预测准确率高的优点。预测准确率高的优点。预测准确率高的优点。


技术研发人员:张玉健 刘代富
受保护的技术使用者:东南大学
技术研发日:2022.06.29
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-10908.html

最新回复(0)