一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种持久性内存测试评估方法、装置及存储介质与流程

2022-07-30 06:48:51 来源:中国专利 TAG:


1.本发明涉及持久性内存测试领域,尤其涉及一种持久性内存测试评估方法、装置及存储介质。


背景技术:

2.内存作为服务器不可或缺的部件,研究其性能表现具有重要意义。持久性内存(persistent memory)为允许程序像内存一样可直接按字节寻址进行数据访问,而其存储的内容是非易失性的存储器。持久性内存能使系统具有更短的启动时间,更快地访问大型内存数据集的速度,并且降低系统的总拥有成本(tco)。
3.当前行业内,持久性内存被配置为memory模式时的测试方法,仍是沿用测试普通内存性能的方式,即通过stream或mlc工具测量最大带宽。测试原理:即设定固定长度的数组,对其进行数组的复制、数组的尺度变换、数组的矢量求和、数组的复合矢量求和等操作,并测试出内存的最大带宽。由于持久性内存的非易失性,其性能表现与普通内存存在很大差异。当持久性内存被配置为memory模式时,普通内存(ddr)被视为l4缓存,而持久性内存作为内存使用。设备系统进行数据读写时,cpu需先访问ddr,若ddr的磁盘数据缓存(buffer)容量能完全命中,则数据可直接返回至cpu;若ddr的磁盘数据缓存容量不够大、数据不能完全命中,则剩余部分数据需再继续访问持久性内存。现有的内存性能测试方法默认的磁盘数据缓存大小约为100m,该值大于cpu的l1、l2、l3三级缓存,可保证数据读写时能从cpu传递给ddr,而持久性内存作内存使用时,ddr被当作l4缓存,此时大部分数据在cpu和ddr之间传递,仅小部分可通过持久性内存,此时测得的带宽更趋近于ddr的带宽,而无法反应持久性内存的性能表现。因此,采用传统测试普通内存性能的方法无法很好测试持久性内存的性能。


技术实现要素:

4.为了解决上述技术问题或者至少部分地解决上述技术问题,本发明一种持久性内存测试评估方法、装置及存储介质。
5.第一方面,本技术提供一种持久性内存测试评估方法,包括:在预设的模仿不同应用场景的多个测试环境中利用内存延迟检查器测试系统标准带宽,并在测试标准带宽的过程中抓取命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率;其中,每个测试环境的环境属性包括磁盘数据缓存容量属性,所述磁盘数据缓存容量属性的取值范围大于系统ddr总容量,且小于系统ddr总容量与持久性内存总容量之和;利用全部测试环境下的标准带宽、命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率构建性能标准表;
6.基于运行内存性能测试脚本进行内存性能测试获得的测试命中率、测试ddr读速率、测试ddr写速率、测试持久性内存读速率、测试持久性内存写速率匹配性能标准表得到性能标准表中相应的标准带宽,分析基于运行内存性能测试脚本得到的测试带宽和标准带
宽,判断持久性内存测试是否达标。
7.更进一步地,测试环境的环境属性包括:磁盘数据缓存容量属性、pattern属性和traffic属性;其中,所述pattern属性的属性值包括随机和序列,所述traffic属性的属性值包括r、w2、w3。
8.更进一步地,对于所述磁盘数据缓存容量属性,在其取值范围内按设定步长取n个磁盘数据缓存容量的属性值;将所取的n个磁盘数据缓存容量的属性值,组合pattern属性所有的属性值和traffic属性的所有属性值形成预设的模仿不同应用场景的多个测试环境。
9.更进一步地,在预设的模仿不同应用场景的多个测试环境中利用内存延迟检查器测试系统标准带宽包括:
10.对全部测试环境进行遍历,逐一得到每个测试环境中的环境属性的属性值;
11.内存延迟检查器按每次遍历得到环境属性的属性值对系统执行预设时长的有负载延迟测试;
12.获取有负载延迟测试过程中的系统带宽作为标准带宽。
13.更进一步地,验证标准带宽是否反应持久性内存性能:获取有负载延迟测试过程中的ddr带宽ddrbw,ddr命中率hr,持久性内存带宽pmbw;
14.((1-hr)*ddrbw hr*pmbw)/ddrbw*pmbw计算系统验证带宽;
15.若标准带宽小于(1 k)验证带宽且大于(1-k)验证带宽,则判断标准带宽反应持久性内存性能,其中,k为误差系数。
16.更进一步地,标准带宽乘以预设的小于1的比例系数得到最低带宽阈值,测试带宽大于最低带宽阈值时判断持久性内存测试达标。
17.更进一步地,测试带宽大于标准带宽,或测试带宽相比标准带宽的比重大于预设的占比阈值,则判断持久性内存测试达标。
18.更进一步地,将所述性能标准表配置存储于性能标准库中,在性能标准库创建基于测试命中率、测试ddr读速率、测试ddr写速率、测试持久性内存读速率、测试持久性内存写速率匹配性能标准表得到性能标准表中相应的标准带宽查询接口。
19.第二方面,本技术提供一种持久性内存测试的装置,包括:存储单元、处理单元、总线单元以及接口单元,所述存储单元、处理单元和接口单元通过总线单元连接,所述存储单元存储计算机程序,所述处理单元读取执行所述计算机程序所述的持久性内存测试评估方法。
20.第三方面,本技术提供一种实现持久性内存测试的存储介质,所述存储介质存储计算机程序,所述计算机程序被处理器执行时实现所述的持久性内存测试评估方法。
21.本技术提出的一种持久性内存测试评估方法、装置及存储介质具体有以下有益效果:
22.一方面,本发明在预设的模仿不同应用场景的多个测试环境中利用内存延迟检查器测试系统标准带宽,并在测试标准带宽的过程中抓取命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率。测试环境的环境属性中的磁盘数据缓存属性的属性值大于ddr总容量,且小于ddr总容量和持久性内存总容量之和,避免了大部分数据在cpu和ddr之间传递,仅小部分可通过持久性内存处理的情况。本技术测得的带宽能够很好的反应
持久性内存的性能表现。且本技术将不同的磁盘数据缓存属性的属性值,不同的pattern属性的属性值和不同traffic属性的属性值进行组合以模拟不同应用场景。利用全部测试环境下的标准带宽、命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率构建性能标准表。由于基于模拟不同应用场景的全部测试环境的测试数据而得性能标准表,所述性能标准表能够为不同应用场景的内存性能测试提供评估标准。
23.另一方面,基于运行内存性能测试脚本进行内存性能测试获得的测试命中率、测试ddr读速率、测试ddr写速率、测试持久性内存读速率、测试持久性内存写速率匹配性能标准表得到性能标准表中相应的标准带宽。分析基于运行内存性能测试脚本得到的测试带宽和标准带宽,判断持久性内存测试是否达标。
附图说明
24.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
25.图1是本发明实施例提供的一种持久性内存测试评估方法的流程图;
26.图2是本发明实施例提供的在预设的模仿不同应用场景的多个测试环境中利用内存延迟检查器测试系统标准带宽的流程图;
27.图3是本发明实施例提供的一种分析基于运行内存性能测试脚本得到的测试带宽和标准带宽,判断持久性内存测试是否达标的流程图;
28.图4是本发明实施例提供的另一种分析基于运行内存性能测试脚本得到的测试带宽和标准带宽,判断持久性内存测试是否达标的流程图;
29.图5是本发明实施例提供的一种持久性内存测试的装置的示意图。
30.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
31.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
32.下面结合附图对本发明进行说明。
33.参阅图1所示,本发明提供一种持久性内存测试评估方法,包括:
34.s100,在预设的模仿不同应用场景的多个测试环境中利用内存延迟检查器测试系统标准带宽,并在测试标准带宽的过程中抓取命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率。
35.其中,每个测试环境的环境属性包括磁盘数据缓存容量属性、pattern属性和traffic属性。所述磁盘数据缓存容量属性的取值范围大于系统ddr总容量,且小于系统ddr总容量与持久性内存总容量之和;所述pattern属性的属性值包括随机rand和序列seq,所述traffic属性的属性值包括r、w2、w3。
36.参阅图2所示,s100的过程包括:
37.s101,组合不同的磁盘数据缓存容量属性、pattern属性和traffic属性的属性值得到预设的模仿不同应用场景的多个测试环境。具体的,对于所述磁盘数据缓存容量属性,
在其取值范围内按设定步长取n个磁盘数据缓存容量的属性值;将所取的n个磁盘数据缓存容量的属性值,组合pattern属性所有的属性值和traffic属性的所有属性值形成预设的模仿不同应用场景的多个测试环境。pattern属性的所有属性值包括rand和seq,traffic属性的所有属性值包括r、w2、w3,则总共形成2*3*n个测试环境。
38.s102,将全部测试环境的环境属性及其相应的属性值通过设定的数据格式保存于环境属性文件。
39.s103,对环境属性文件中的全部测试环境的环境属性进行遍历,逐一得到每个测试环境中的环境属性的属性值。
40.s104,将每次遍历得到的环境属性的属性值作为内存延迟检查器参数传递到内存延迟检查器中,内存延迟检查器按每次遍历得到环境属性的属性值对系统执行预设时长的有负载延迟测试;具体的,一种可行的预设时长设定为60秒。
41.s105,获取获取有负载延迟测试过程中的系统带宽作为标准带宽。
42.s106,对标准带宽是否反应持久性内存性能进行验证,若否,则重新执行s105,若是,则执行s107。
43.具体实施过程中,对标准带宽是否反应持久性内存性能进行验证的过程包括:
44.获取有负载延迟测试过程中的ddr带宽ddrbw,ddr命中率hr,持久性内存带宽pmbw;具体的,利用处理器监视工具在有负载延迟测试过程中监测ddr带宽、ddr命中率和持久性内存带宽。
45.按如下公式计算系统验证带宽:((1-hr)*ddrbw hr*pmbw)/ddrbw*pmbw。
46.利用系统验证带宽乘以(1 k)得到标准带宽的上限,利用系统验证带宽乘以(1-k)得到标准带宽的下限,从而确定标准带宽的许可范围。一种可行的k如1%。
47.判断标准带宽是否处于许可范围中,是则判断标准带宽反应了持久性内存性能。
48.s107,记录有负载延迟测试过程中标准带宽、命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率。
49.s200,利用全部测试环境下的标准带宽、命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率构建性能标准表。具体实施过程中,对于任一测试环境,按设定的重复测试数执行利用内存延迟检查器测试系统标准带宽的过程;利用全部测试环境下全部测试过程中的标准带宽、命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率的平均值构建性能标准表。将所述性能标准表配置存储于性能标准库中,在性能标准库创建基于测试命中率、测试ddr读速率、测试ddr写速率、测试持久性内存读速率、测试持久性内存写速率匹配性能标准表得到性能标准表中相应的标准带宽查询接口。方便测试机执行内存性能测试脚本进行内存性能测试后将测试数据传递给标准带宽查询接口,从性能标准表中匹配相应的标准带宽。
50.s300,基于运行内存性能测试脚本进行内存性能测试获得的测试命中率、测试ddr读速率、测试ddr写速率、测试持久性内存读速率、测试持久性内存写速率匹配性能标准表得到性能标准表中相应的标准带宽。
51.测试机执行内存性能测试脚本对系统内存性能进行测试,通过处理器监视工具得到测试命中率、测试ddr读速率、测试ddr写速率、测试持久性内存读速率、测试持久性内存写速率,将上述测试数据传递到标准带宽查询接口,标准带宽查询接口利用测试数据匹配
性能标准表得到相应的标准带宽。
52.s400,分析基于运行内存性能测试脚本得到的测试带宽和标准带宽,判断持久性内存测试是否达标。
53.具体实施过程中,参阅图3所示,一种可行的分析基于运行内存性能测试脚本得到的测试带宽和标准带宽,判断持久性内存测试是否达标的方式为:
54.s401,将标准带宽乘以预设的小于1的比例系数,如98%,得到最低带宽阈值。
55.s402,比较测试带宽是否大于最低带宽阈值,是则,执行s403,否则执行s404。
56.s403,判断持久性内存测试达标。
57.s404,判断持久性内存测试不达标。
58.具体实施过程中,参阅图4所示,另一种可行的分析基于运行内存性能测试脚本得到的测试带宽和标准带宽,判断持久性内存测试是否达标的方式为:
59.s410,获取标准带宽。
60.s420,比较测试带宽是否大于标准带宽。是则,执行s430,否则执行s440。
61.s430,判断持久性内存测试达标。
62.s440,求测试带宽相比标准带宽的比重,并比较比重是否大于预设的占比阈值。比重大于预设的占比阈值,则执行s430。若比重小于预设的占比阈值,则执行s450。
63.s450,判断持久性内存测试不达标。
64.实施例2
65.参阅图5所示,本发明实施例提供一种持久性内存测试的装置,包括:存储单元、处理单元、总线单元以及接口单元,所述存储单元、处理单元和接口单元通过总线单元连接,所述存储单元存储计算机程序,所述处理单元读取执行所述计算机程序实现所述的持久性内存测试评估方法。
66.实施例3
67.本发明实施例提供一种实现持久性内存测试的存储介质,所述存储介质存储计算机程序,所述计算机程序被处理器执行时实现所述的持久性内存测试评估方法。
68.一方面,本发明在预设的模仿不同应用场景的多个测试环境中利用内存延迟检查器测试系统标准带宽,并在测试标准带宽的过程中抓取命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率。测试环境的环境属性中的磁盘数据缓存属性的属性值大于ddr总容量,且小于ddr总容量和持久性内存总容量之和,避免了大部分数据在cpu和ddr之间传递,仅小部分可通过持久性内存处理的情况。本技术测得的带宽能够很好的反应持久性内存的性能表现。本技术利用有负载延迟测试过程中的ddr带宽ddrbw,ddr命中率hr,持久性内存带宽pmbw计算系统验证带宽;并通过系统验证带宽验证标准带宽是否能够反应持久性内存性能,从而避免异常的标准带宽构建性能标准表。
69.且本技术将不同的磁盘数据缓存属性的属性值,不同的pattern属性的属性值和不同traffic属性的属性值进行组合以模拟不同应用场景。利用全部测试环境下的标准带宽、命中率、ddr读速率、ddr写速率、持久性内存读速率和持久性内存写速率构建性能标准表。由于基于模拟不同应用场景的全部测试环境的测试数据而得性能标准表,所述性能标准表能够为不同应用场景的内存性能测试提供评估标准。
70.另一方面,基于运行内存性能测试脚本进行内存性能测试获得的测试命中率、测
试ddr读速率、测试ddr写速率、测试持久性内存读速率、测试持久性内存写速率匹配性能标准表得到性能标准表中相应的标准带宽。分析基于运行内存性能测试脚本得到的测试带宽和标准带宽,判断持久性内存测试是否达标。
71.应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
72.在本发明所提供的实施例中,应该理解到,所揭露的结构及方法,可以通过其它的方式实现。例如,以上所描述的结构实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,结构或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
73.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
74.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
75.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
76.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献