一种ARM服务器的压力测试方法、装置、设备及介质与流程

文档序号:28740362发布日期:2022-02-07 21:49阅读:525来源:国知局
一种ARM服务器的压力测试方法、装置、设备及介质与流程
一种arm服务器的压力测试方法、装置、设备及介质
技术领域
1.本发明涉及服务器技术领域,特别涉及一种arm服务器的压力测试方法、装置、设备及介质。


背景技术:

2.在现有技术中,在对arm(advanced risc machines,先进的risc机器)服务器进行压力测试时,往往会针对arm服务器中的cpu(central processing unit,中央处理器)、内存、硬盘、bmc(baseboard management controller,基板管理控制器)和gpu(graphics processing unit,图形处理器)等器件进行压力测试,并且,在对这些器件进行压力测试时,一般是对arm服务器中的cpu、内存、硬盘、bmc和gpu逐个进行测试。此种测试方式不仅耗费时间长、测试效率低下,而且,在arm服务器的使用过程中,上述器件往往是并行使用的。很显然,如果只是对上述器件作单项压力测试,就无法模拟出arm服务器的真实使用场景,这样就会导致arm服务器无法发现其内部所存在的性能缺陷以及兼容性等问题。目前,针对上述技术问题,还没有较为有效的解决办法。


技术实现要素:

3.有鉴于此,本发明的目的在于提供一种arm服务器的压力测试方法、装置、设备及介质,以在能够快速发现arm服务器中所存在的性能缺陷以及兼容性等问题。其具体方案如下:
4.一种arm服务器的压力测试方法,包括:
5.当arm服务器开机进入linux系统时,则对所述arm服务器中的所有硬盘进行预设时长的压力测试;其中,所述预设时长为根据所述arm服务器的属性特征所设定的测试时长;
6.在所有硬盘启动压力测试的第一时长后,对所述arm服务器中的所有gpu进行所述预设时长的压力测试;
7.在所有gpu启动压力测试的第二时长后,对所述arm服务器中的bmc进行所述预设时长的压力测试;
8.在所述bmc启动压力测试的第三时长后,对所述arm服务器中的cpu进行所述预设时长的压力测试;其中,所述第一时长、所述第二时长和所述第三时长为能够模拟所述arm服务器进入实际测试环境所设定的时长;
9.查询所述arm服务器的内存在当前运行状态下所剩余的目标空间资源,并对所述目标空间资源进行所述预设时长的压力测试;
10.获取所述arm服务器在进入压力测试后的目标负载信息,并根据所述目标负载信息对所述arm服务器的性能进行分析。
11.优选的,所述对所述arm服务器中的所有硬盘进行预设时长的压力测试的过程,包括:
12.利用fio工具对所述arm服务器中的所有硬盘进行所述预设时长的压力测试。
13.优选的,所述对所述arm服务器中的所有gpu进行所述预设时长的压力测试的过程,包括:
14.利用nvqual对所述arm服务器中的所有gpu进行所述预设时长的压力测试。
15.优选的,所述对所述arm服务器中的bmc进行所述预设时长的压力测试的过程,包括:
16.在所述预设时长内利用ipmitool以预设频率读取所述bmc的运行信息,以对所述arm服务器中的所述bmc进行所述预设时长的压力测试。
17.优选的,所述对所述arm服务器中的cpu进行所述预设时长的压力测试的过程,包括:
18.利用sysbentch对所述arm服务器中的所述cpu进行所述预设时长的压力测试。
19.优选的,所述查询所述arm服务器的内存在当前运行状态下所剩余的目标空间资源的过程,包括:
20.利用free-m查询所述arm服务器的所述内存在当前运行状态下所剩余的所述目标空间资源。
21.优选的,所述获取所述arm服务器在进入压力测试后的目标负载信息的过程,包括:
22.利用vmstat获取所述arm服务器在进入压力测试后的所述目标负载信息。
23.相应的,本发明还公开了一种arm服务器的压力测试装置,包括:
24.硬盘测试模块,用于当arm服务器开机进入linux系统时,则对所述arm服务器中的所有硬盘进行预设时长的压力测试;其中,所述预设时长为根据所述arm服务器的属性特征所设定的测试时长;
25.gpu测试模块,用于在所有硬盘启动压力测试的第一时长后,对所述arm服务器中的所有gpu进行所述预设时长的压力测试;
26.bmc测试模块,用于在所有gpu启动压力测试的第二时长后,对所述arm服务器中的bmc进行所述预设时长的压力测试;
27.cpu测试模块,用于在所述bmc启动压力测试的第三时长后,对所述arm服务器中的cpu进行所述预设时长的压力测试;其中,所述第一时长、所述第二时长和所述第三时长为能够模拟所述arm服务器进入实际测试环境所设定的时长;
28.内存测试模块,用于查询所述arm服务器的内存在当前运行状态下所剩余的目标空间资源,并对所述目标空间资源进行所述预设时长的压力测试;
29.性能分析模块,用于获取所述arm服务器在进入压力测试后的目标负载信息,并根据所述目标负载信息对所述arm服务器的性能进行分析。
30.相应的,本发明还公开了一种arm服务器的压力测试设备,包括:
31.存储器,用于存储计算机程序;
32.处理器,用于执行所述计算机程序时实现如前述所公开的一种arm服务器的压力测试方法的步骤。
33.相应的,本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前述所公开的一种arm服务器
的压力测试方法的步骤。
34.可见,在本发明中,当arm服务器开机进入linux系统时,首先是对arm服务器中的所有硬盘进行预设时长的压力测试,并在所有硬盘启动压力测试的第一时长后,对arm服务器中的所有gpu进行预设时长的压力测试;在所有gpu启动压力测试的第二时长后,对arm服务器中的bmc进行预设时长的压力测试,并在bmc启动压力测试的第三时长后,对arm服务器中的cpu进行预设时长的压力测试;之后,再查询arm服务器的内存在当前运行状态下所剩余的目标空间资源,并对目标空间资源进行预设时长的压力测试;最后,获取arm服务器在进入压力测试后的目标负载信息,并根据目标负载信息对arm服务器的性能进行分析。相较于现有技术而言,由于该方法能够模拟arm服务器的真实使用场景,所以,利用该方法就可以快速地发现arm服务器中所存在的性能缺陷以及兼容性等问题。相应的,本发明所提供的一种arm服务器的压力测试装置、设备及介质,同样具有上述有益效果。
附图说明
35.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
36.图1为本发明实施例所提供的一种arm服务器的压力测试方法的流程图;
37.图2为本发明实施例所提供的一种arm服务器的压力测试装置的结构图;
38.图3为本发明实施例所提供的一种arm服务器的压力测试设备的结构图。
具体实施方式
39.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
40.请参见图1,图1为本发明实施例所提供的一种arm服务器的压力测试方法的流程图,该方法包括:
41.步骤s11:当arm服务器开机进入linux系统时,则对arm服务器中的所有硬盘进行预设时长的压力测试;
42.其中,预设时长为根据arm服务器的属性特征所设定的测试时长;
43.步骤s12:在所有硬盘启动压力测试的第一时长后,对arm服务器中的所有gpu进行预设时长的压力测试;
44.步骤s13:在所有gpu启动压力测试的第二时长后,对arm服务器中的bmc进行预设时长的压力测试;
45.步骤s14:在bmc启动压力测试的第三时长后,对arm服务器中的cpu进行预设时长的压力测试;
46.其中,第一时长、第二时长和第三时长为能够模拟arm服务器进入实际测试环境所设定的时长;
47.步骤s15:查询arm服务器的内存在当前运行状态下所剩余的目标空间资源,并对目标空间资源进行预设时长的压力测试;
48.步骤s16:获取arm服务器在进入压力测试后的目标负载信息,并根据目标负载信息对arm服务器的性能进行分析。
49.在本实施例中,是提供了一种arm服务器的压力测试方法,利用该方法来对arm服务器进行压力测试时,能够快速地发现arm服务器中所存在的性能缺陷以及兼容性等问题。
50.在该方法中,当arm服务器开机进入linux系统时,首先是对arm服务器中的所有硬盘进行预设时长的压力测试,其中,预设时长为根据arm服务器的属性特征所设定的测试时长。具体的,如果arm服务器中硬盘的数量为b,对每一个硬盘进行4k读写,那么在对arm服务器中的所有硬盘进行压力测试时,就需要启动4*b个线程;在所有硬盘启动压力测试的第一时长后,对arm服务器中的所有gpu进行预设时长的压力测试。具体的,如果arm服务器中gpu的数量为c,那么对c个gpu同时进行压力测试,就需要启动c个线程。
51.在所有gpu启动压力测试的第二时长后,对arm服务器中的bmc进行预设时长的压力测试,并在bmc启动压力测试的第三时长后,对arm服务器中的cpu进行预设时长的压力测试。具体的,如果arm服务器中cpu的核数为a,bmc启动压力测试的线程数量为3个,那么,cpu启动压力测试所需要启动的线程数量即为:a-4*b-c-3。
52.当arm服务器中的所有硬盘、所有gpu以及bmc均启动压力测试之后,此时为了对arm服务器中的内存进行压力测试,则需要查询得到arm服务器的内存在当前运行状态下所剩余的目标空间资源,并对目标空间资源进行预设时长的压力测试。具体的,可以根据实际情况的需要按照目标空间资源的占用比例来对目标空间资源进行预设时长的压力测试。比如:可以将目标空间资源的占用比例设置为90%,或者是其它数值。
53.当目标空间资源进入压力测试之后,arm服务器中较为常见的硬件就已经均进入压力测试状态,在此状态下,就相当于模拟了arm服务器在实际应用中所遇到的真实使用场景,此时,再获取arm服务器在进入压力测试之后的目标负载信息,就可以根据目标负载信息准确地评估出arm服务器的工作性能。
54.需要说明的是,在实际应用中,可以将预设时长设置为3个小时,也即,将arm服务器的压力测试时间设置为3小时。并且,还可以将第一时长、第二时长和第三时长均设置为1分钟,此处第一时长、第二时长和第三时长的设置目的一方面是为了保证arm服务器中硬盘、gpu和bmc在稳定运行的情况下能够继续后续流程的执行,保证arm服务器中的cpu能够准确计算出各个器件在进行压力测试时所启动的线程数量,另一方面也是为了模拟arm服务器的实际测试环境。当然,在实际应用中,还可以将预设时长、第一时长、第二时长以及第三时长设置为其它数值,只要能够保证设置的数值可以模拟arm服务器的实际使用场景即可。
55.可以理解的是,相较于现有技术而言,通过本实施例所提供的压力测试方法就相当于是对arm服务器中的硬盘、gpu、bmc、cpu和内存同时进行了压力测试,这样就可以模拟arm服务器的真实使用场景,所以,利用该方法就可以准确地发现arm服务器中所存在的性能缺陷以及兼容性等问题。并且,当对arm服务器中的硬盘、gpu、bmc、cpu和内存同时进行压力测试时,就可以显著降低在对arm服务器进行压力测试时所需要的测试时长。很显然,通过本实施例所提供的方法就可以快速地发现arm服务器中所存在的性能缺陷以及兼容性等
问题。
56.可见,在本实施例中,当arm服务器开机进入linux系统时,首先是对arm服务器中的所有硬盘进行预设时长的压力测试,并在所有硬盘启动压力测试的第一时长后,对arm服务器中的所有gpu进行预设时长的压力测试;在所有gpu启动压力测试的第二时长后,对arm服务器中的bmc进行预设时长的压力测试,并在bmc启动压力测试的第三时长后,对arm服务器中的cpu进行预设时长的压力测试;之后,再查询arm服务器的内存在当前运行状态下所剩余的目标空间资源,并对目标空间资源进行预设时长的压力测试;最后,获取arm服务器在进入压力测试后的目标负载信息,并根据目标负载信息对arm服务器的性能进行分析。相较于现有技术而言,由于该方法能够模拟arm服务器的真实使用场景,所以,利用该方法就可以快速地发现arm服务器中所存在的性能缺陷以及兼容性等问题。
57.基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述步骤:对arm服务器中的所有硬盘进行预设时长的压力测试的过程,包括:
58.利用fio工具对arm服务器中的所有硬盘进行预设时长的压力测试。
59.能够想到的是,因为fio工具是一个命令行工具,不仅测试流程简单,而且,fio工具还能够支持不同类型的文件操作,所以,当利用fio工具来对arm服务器中的所有硬盘进行测试时,就可以相对提高测试人员在对arm服务器中硬盘进行压力测试时的便捷性。
60.基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述步骤:对arm服务器中的所有gpu进行预设时长的压力测试的过程,包括:
61.利用nvqual对arm服务器中的所有gpu进行预设时长的压力测试。
62.由于nvqual是一款开源的测试工具,在实际操作过程中,测试人员经常使用nvqual来对gpu进行压力测试,所以,在本实施例中,当利用nvqual来对gpu进行压力测试时,就可以进一步提高人们在对arm服务器中的所有gpu进行压力测试时的普适性。
63.基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述步骤:对arm服务器中的bmc进行预设时长的压力测试的过程,包括:
64.在预设时长内利用ipmitool以预设频率读取bmc的运行信息,以对arm服务器中的bmc进行预设时长的压力测试。
65.由于ipmitool是一种能够用在linux系统下的ipmi(intelligent platform management interface,智能平台管理接口)平台管理工具,通过ipmitool可以读取得到bmc中的运行信息。因此,基于ipmitool所具有的这一属性特征,就可以在预设时长内利用ipmitool以预设频率读取bmc的运行信息,这样就相当于是对bmc进行了压力测试。
66.具体的,在实际应用中,可以将预设时长设置为3小时,将预设频率设置为1min/次。也即,在3小时的测试时间内,使用ipmitool每隔1min读取1次bmc的运行信息。
67.基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述步骤:对arm服务器中的cpu进行预设时长的压力测试的过程,包括:
68.利用sysbentch对arm服务器中的cpu进行预设时长的压力测试。
69.可以理解的是,因为sysbentch是一个模块化的、跨平台的多线程基准测试工具,测试人员在利用sysbentch对arm服务器中的cpu进行测试时,可以根据测试需要灵活编写自己的业务逻辑脚本,所以,当利用sysbentch来对arm服务器中的cpu进行压力测试时,就可以对cpu进行更为灵活的测试。
70.基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述步骤:查询arm服务器的内存在当前运行状态下所剩余的目标空间资源的过程,包括:
71.利用free-m查询arm服务器的内存在当前运行状态下所剩余的目标空间资源。
72.因为free-m是linux系统中自带的命令工具,通过调用free-m就能够清楚直观在linux系统中查看到arm服务器中内存的使用情况,所以,当利用free-m来查询arm服务器中内存在当前运行状态下所剩余的目标空间资源时,就可以进一步提高测试人员在对内存剩余资源进行查询时的效率。
73.基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述步骤:获取arm服务器在进入压力测试后的目标负载信息的过程,包括:
74.利用vmstat获取arm服务器在进入压力测试后的目标负载信息。
75.可以理解的是,由于vmstat是linux系统中最常见的监控工具,利用vmstat可以展现出arm服务器中的各种负载信息,包括:arm服务器中内核线程、虚拟内存、硬盘、io(input output,输入输出)读写情况以及cpu的统计信息。因此,当利用vmstat来获取arm服务器在进入压力测试后的目标负载信息时,不仅可以保证目标负载信息的准确性,而且,也可以保证获取得到目标负载信息的可靠性。
76.请参见图2,图2为本发明实施例所提供的一种arm服务器的压力测试装置的结构图,该压力测试装置包括:
77.硬盘测试模块21,用于当arm服务器开机进入linux系统时,则对arm服务器中的所有硬盘进行预设时长的压力测试;其中,预设时长为根据arm服务器的属性特征所设定的测试时长;
78.gpu测试模块22,用于在所有硬盘启动压力测试的第一时长后,对arm服务器中的所有gpu进行预设时长的压力测试;
79.bmc测试模块23,用于在所有gpu启动压力测试的第二时长后,对arm服务器中的bmc进行预设时长的压力测试;
80.cpu测试模块24,用于在bmc启动压力测试的第三时长后,对arm服务器中的cpu进行预设时长的压力测试;其中,第一时长、第二时长和第三时长为能够模拟arm服务器进入实际测试环境所设定的时长;
81.内存测试模块25,用于查询arm服务器的内存在当前运行状态下所剩余的目标空间资源,并对目标空间资源进行预设时长的压力测试;
82.性能分析模块26,用于获取arm服务器在进入压力测试后的目标负载信息,并根据目标负载信息对arm服务器的性能进行分析。
83.本发明实施例所提供的一种arm服务器的压力测试装置,具有前述所公开的一种arm服务器的压力测试方法所具有的有益效果。
84.请参见图3,图3为本发明实施例所提供的一种arm服务器的压力测试设备的结构图,该压力测试设备包括:
85.存储器31,用于存储计算机程序;
86.处理器32,用于执行计算机程序时实现如前述所公开的一种arm服务器的压力测试方法的步骤。
87.本发明实施例所提供的一种arm服务器的压力测试设备,具有前述所公开的一种arm服务器的压力测试方法所具有的有益效果。
88.相应的,本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如前述所公开的一种arm服务器的压力测试方法的步骤。
89.本发明实施例所提供的一种计算机可读存储介质,具有前述所公开的一种arm服务器的压力测试方法所具有的有益效果。
90.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
91.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
92.以上对本发明所提供的一种arm服务器的压力测试方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1