CN101470660A - 通过子系统效能基准发生器进行系统测试的方法 - Google Patents
通过子系统效能基准发生器进行系统测试的方法 Download PDFInfo
- Publication number
- CN101470660A CN101470660A CNA2007101606841A CN200710160684A CN101470660A CN 101470660 A CN101470660 A CN 101470660A CN A2007101606841 A CNA2007101606841 A CN A2007101606841A CN 200710160684 A CN200710160684 A CN 200710160684A CN 101470660 A CN101470660 A CN 101470660A
- Authority
- CN
- China
- Prior art keywords
- module
- processing unit
- reference generator
- measured
- subsystem
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
一种通过子系统效能基准发生器进行系统测试的方法,用以在Linux系统中测试单一模块的效能。子系统效能基准发生器产生初始的效能测试参数,并依此测试参数设定待测模块的存储器占用空间、中央处理器占用率、及输出输入效能。设定测试参数后,通过效能测试工具测试整体Linux系统效能。之后,再以子系统效能基准发生器产生另一效能测试参数,并据以设定待测模块后再进行系统效能测试。通过该方法动态调整待测模块的各项效能值设定,再进行整体系统效能测试。得以精确的找出效能瓶颈问题点,提高系统测试的可靠度。
Description
技术领域
本发明关于一种系统测试方法,且特别是涉及一种通过子系统效能基准发生器进行系统测试的方法。
背景技术
在Linux系统核心(kernel)中存在许多系统模块,当中包括系统层(内核级)的系统模块,或用户为实现某一功能而编写的功能模块。当Linux系统开机执行时,通过将这些系统模块或功能模块载入Linux系统核心,才可运行这些系统模块或功能模块(以下简称为模块)所提供的功能。这些模块载入Linux系统后所占用的存储器空间、CPU占用率等将直接影响到整个Linux系统的效能:若编写的模块占用过多CPU资源或存储器空间,则将会影响到Linux系统中其余的模块可模拟的系统资源,进而影响到整体系统效率,或影响指派存储器空间的成功率。因此,当模块编写完成时,需进一步测试模块载入系统时的系统效能。一般的作法是在模块载入Linux系统核心后,测试整个系统的稳定度,观看载入模块前后Linux系统的执行效率是否因此下降,或导致占用CPU资源的现象。然而,如何测试载入的模块则为相当棘手的问题。原因在于某一Linux系统载入该模块可稳定运行并不保证在其他系统同样可正常运行,以及硬件环境有限及测试条件复杂的原因,可能导致无法让载入的模块在全速(满载)模式运行。
由于各个模块运行状况不同,所以测得的效能数据仅表示当前状态下该系统的效能,并不能代表指定模块的实际效能值。同时,亦不能有效地找出整个系统的效能瓶颈所在,例如是否为输出输入(I/O)问题、或存在存储器管理缺陷等问题。由此可见,目前效能测试并不能精确地检验出受测试模块的实际效能。另外,由于Linux系统中多个模块之间有可能存在系统资源使用上的相依性问题,单一模块效能可能直接影响其他模块效能,这无疑的更增加测试模块效能的复杂度。
发明内容
鉴于上述测试系统模块复杂度高,且不能精准检验出影响系统效能表现的变量,本发明的目的在于提出一种通过子系统效能基准发生器进行系统测试的方法,以子系统效能基础发生器模拟待测模块所处的各种不同软件执行环境的各项效能,借以精确的测试待测模块在不同效能环境下的效能表现,从而可以精确掌握不同环境下,影响整体系统效能的变量,以准确检验待测模块的各项效能表现。
为实现上述目的,本发明包括以下步骤:首先,初始化子系统效能基准发生器的效能测试参数。接着,子系统效能基准发生器依据效能测试参数分配待测模块的存储器占用空间、中央处理器占用率、以及输出输入往返时间。之后,通过效能测试工具对Linux系统进行存储器、中央处理器及输出输入的效能测试。然后,子系统效能基准发生器根据效能测试的测试结果修改效能测试参数;最后,依据修改后的效能测试参数,以效能测试工具再次进行测试,并记录效能测试结果。
依照本发明的较佳实施例所述的通过子系统效能基准发生器进行系统测试的方法,其中初始化基准子系统的步骤包括通过人机界面设定效能测试参数以及用户需求参数,所述的效能测试参数或用户需求参数可以是存储器占用空间、中央处理器占用率、以及输出输入效能。
依照本发明的较佳实施例所述的通过子系统效能基准发生器进行系统测试的方法,其中对Linux系统进行存储器测试的步骤更包括:依据效能测试参数设定待测模块的存储器占用空间;取得Linux系统的存储器空间剩余状况;若Linux系统的存储器空间剩余状况,未满足效能测试参数中的存储器占用空间,则返回错误信息;若Linux系统的存储器空间剩余状况,满足效能测试参数中的存储器占用空间,则进一步判断待测模块的存储器占用空间满足用户需求参数:
若待测模块的存储器占用空间未满足用户需求参数,则通过子系统效能基准发生器调增存储器占用空间配置,并再次进行系统测试。
依照本发明的较佳实施例所述的通过子系统效能基准发生器进行系统测试的方法,其中对Linux系统进行中央处理器的效能测试的步骤包括:依据效能测试参数设定待测模块的中央处理器占用率;取得Linux系统的中央处理器占用率状况;若Linux系统的中央处理器占用率大于用户需求参数的中央处理器占用率,则返回错误信息;若Linux系统的中央处理器占用率未大于效能测试参数的中央处理器占用率,则进一步判断Linux系统的中央处理器占用率满足用户需求参数的中央处理器占用率:
若待测模块的中央处理器占用率未满足用户需求参数,则通过子系统效能基准发生器调增待测模块的中央处理器占用率,并再次进行系统测试。
依照本发明的较佳实施例所述的通过子系统效能基准发生器进行系统测试的方法,其中对Linux系统进行输出输入的效能测试的步骤包括:计算单位时间内待测模块的输出输入效能;若Linux系统的输出输入效能未满足用户需求参数的输出输入效能值,则返回该错误信息;若Linux系统的输出输入效能满足用户需求参数的输出输入效能值,则进一步判断待测模块的输出输入效能值设定已达用户需求参数的输出输入效能值:
若待测模块之输出输入效能未满足用户需求参数,则通过子系统效能基准发生器调增待测模块之输出输入效能,并再次进行系统测试。
由上所述,本发明的通过子系统效能基准发生器进行系统测试的方法通过子系统效能基础发生器模拟待测模块的效能设定,例如存储器占用空间、中央处理器的占用率,并于设置待测模块工作参数后,以效能测试工具进行整体系统效能测试。若发现整体效能未合乎用户需求时,则通过调校单一效能测试参数并再次进行整体系统测试,借以精确找出此待测模块的在不同执行环境的效能表现。
下面结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。其内容足以使任何本领域技术人员了解本发明的技术内容并据以实施,且根据本说明书所公开的内容及附图,任何本领域技术人员可轻易地理解本发明相关的目的及优点。
附图说明
图1为通过子系统效能基准发生器进行系统测试的方法流程图;
图2为本发明较佳实施例的通过子系统效能基准发生器进行系统测试的系统架构图;
图3为本发明较佳实施例的对存储器占用空间进行效能测试的流程图;
图4为本发明较佳实施例的对中央处理器占用率进行效能测试的流程图;
图5为本发明较佳实施例的对输出输入效能进行效能测试的流程图。
其中,附图标记
200 Linux系统
210 网际网络小型电脑系统界面模块
220 小型电脑系统界面模块
230 子系统效能基础发生器
240 文件镜像备份模块
250 效能测试工具
260 硬盘
具体实施方式
为了更进一步说明本发明特征及技术内容,请参阅以下有关本发明的详细说明与附图,然而所附附图仅提供参考与说明用,并非用来对本发明加以限制。
图1为通过子系统效能基准发生器进行系统测试的方法流程图。请参照图1,有别于以往系统模块测试仅将待测模块置入Linux系统,进行整体性能测试。在本实施例中,子系统效能基准发生器模拟待测模块所处各种不同的软件执行环境的效能值,例如该待测模块在某一执行环境的存储器占用空间、中央处理器占用率、以及I/O效能等,借以精确的测试待测模块在不同效能环境下的效能表现,从而可以掌握不同环境下,影响整体系统效能的变量。在本实施例中,通过子系统效能基准发生器进行系统测试的方法的各步骤如下:
首先,初始化子系统效能基准发生器的效能测试参数(步骤S110)。接着,子系统效能基准发生器依据效能测试参数,模拟待测模块的存储器占用空间、中央处理器占用率、以及输出输入效能(步骤S120)。之后,通过效能测试工具对Linux系统进行存储器、中央处理器及输出输入的效能测试(步骤S130)。然后,子系统效能基准发生器根据效能测试的测试结果修改效能测试参数(步骤S140);最后,依据修改后的效能测试参数,以效能测试工具再次进行测试,并记录效能测试结果(步骤S150)。
其中,前述初始化基准子系统的步骤更包括通过一个人机界面设定效能测试参数以及用户需求参数,此效能测试参数及用户需求参数包括有存储器占用空间、中央处理器占用率、以及输出输入效能等三项变量(效能参数)。另外,所述输出输入效能则是依据单位时间内,Linux系统的待测模块所发送的数据封包数量或发送的数据封包大小;所述中央处理器占用率算式为:
中央处理器占用率=特定进程总时间/所有进程总时间。
图2为本发明较佳实施例的通过子系统效能基准发生器进行系统测试的系统架构图。请参照图2,在本实施例中,例如对电脑的Linux系统200中的任一待测模块进行测试。Linux系统200包括多个系统模块,例如网际网络小型电脑系统界面(iSCSI)模块210、小型电脑系统界面(SCSI)模块220、子系统效能基础发生器230、文件镜像备份(Mirror)模块240、以及硬盘260。通过外接效能测试工具250,得以测出电脑系统的各项效能,例如CPU占用率、输出输入(I/O)效能、存储器占用空间等。在本实施例中,待测模块例如为Mirror模块240,当欲测量Mirror模块240在不同情况下的效能表现时,通过子系统效能基础发生器230改变Mirror模块240的各项测试效能,再以效能测试工具250进行测试。举例来说,当以效能测试工具250进行整体系统测试时,子系统效能基础发生器230以时间延迟的手段控制Mirror模块240的I/O速率,以模拟Mirror模块240以较低的传输速度进行I/O测试。
以下将说明本发明的以子效能基准发生器实现三种效能参数进行效能测试的步骤。图3为本发明较佳实施例的对存储器占用空间进行效能测试的流程图。请参照图3,首先,初始化子系统效能基准发生器(步骤S302),子系统效能基准发生器读入预定的效能测试参数,以设定待测模块的存储器占用空间。在一些实施例中,子系统效能基准发生器更触发产生一个人机界面,用以供输入效能测试参数,或输入用户需求参数。若测试参数设定未完成(步骤S304的否)则等待用户输入(步骤S306);若完成测试参数设定(步骤S304的是),则以子系统效能基准发生器初始化待测模块(本实施例例如为Mirror模块)的存储器占用空间需求设定(步骤S308)。之后,调用系统指令以取得Linux系统的存储器空间剩余状况(步骤S310)。若剩余的存储器空间小于用户需求(步骤S312的是),则表示Linux系统无足够空间执行待测模块,此时向用户反馈提示信息(或错误信息)“子系统无法满足用户需求”(步骤S314)。若Linux系统剩余的存储器空间,可满足效能测试参数中的存储器需求空间,则通过系统调用分配待测模块的存储器空间(步骤S316)。待分配待测模块使用的存储器空间后,调用系统指令查看Linux系统剩余的存储器空间(步骤S318),并以前述的效能测试工具进行整体Linux系统的存储器使用状态测试。此时,进一步确认待测模块的存储器占用空间,是否满足用户需求参数(步骤S320):若待测模块的存储器占用空间未满足用户需求参数,则再次通过子系统效能基准发生器调增存储器占用空间配置,并再次进行系统测试(步骤S324);反之,若满足用户需求(步骤S320的是),则向用户反馈提示信息“完成待测模块的存储器分配”。
图4为本发明较佳实施例的对中央处理器占用率进行效能测试的流程图。请参照图4,同样的,需先初始化子系统效能基准发生器(步骤S402),并判断测试参数是否设定完成(步骤S404),若未完成则等待用户输入(步骤S406);反之,则由子系统效能基准发生器初始化待测模块的中央处理器占用率(步骤S408),其可依据预先设置的效能测试参数设定,或通过人机界面由测试者输入。之后,调用系统指令取得Linux系统的中央处理器占用率状况(步骤S410)。若系统中央处理器占用率大于用户要求(步骤S412的是),则向用户提报“子系统无法满足需求”的错误信息(步骤S414);反之,以子系统效能基准发生器设置待测模块的中央处理器占用率(步骤S416),并调用系统指令查看Linux系统的中央处理器占用率状况(步骤S418)。之后,再进一步判断Linux系统的中央处理器占用率,是否满足先前设定的用户需求参数(步骤S420):若满足,则向用户反馈提示信息(步骤S422);反之,则通过子系统效能基准发生器调增待测模块的中央处理器占用率,并再次进行系统测试(步骤S424)。
图5为本发明较佳实施例的对输出输入效能进行效能测试的流程图。请参照图5,同前述对存储器或中央处理器进行测试的方式,需先初始化子系统效能基准发生器(步骤S502),并判断测试参数设定是否完成(步骤S504):若未完成则等待用户输入(步骤S506);若完成,则以子系统效能基准发生器初始化待测模块的输出输入设定(步骤S508)。之后,以外接的效能测试工具,对整体Linux系统进行输出输入测试;并计算待测模块的输出输入效能(步骤S510)。若系统输出输入效能低于用户需求参数的输出输入效能值(步骤S512的是),则表示子系统无法满足用户需求,此时返回错误信息给用户反馈(步骤S514);反之,若Linux系统的输出输入效能满足用户需求参数的输出输入效能值,则进一步判断待测模块的输出输入效能值设定已达用户需求参数的输出输入效能值。若待测模块的输出输入效能未满足该用户需求参数,则通过子系统效能基准发生器调增待测模块的输出输入效能值,并再次进行整体系统的输出输入效能测试(步骤S516)。如此,通过子系统效能基准发生器动态改变效能参数,即可测试出整体效能值,并精确的反映受测试的某一模块的各项参数的效能表现,缩短开发时间,并得以精确的发现效能瓶颈所在(例如明确该待测模块在何等输出输入力度会发生中断错误)。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (9)
1.一种通过子系统效能基准发生器进行系统测试的方法,用以在Linux系统中测试某一模块效能,其特征在于,包括以下步骤:
初始化一子系统效能基准发生器的一效能测试参数;
该子系统效能基准发生器依据该效能测试参数为一待测模块进行一测试参数设定,该测试参数设定包括存储器占用空间、中央处理器占用率、以及输出输入效能;
通过一效能测试工具对该Linux系统进行存储器、中央处理器及输出输入效能进行测试;
该子系统效能基准发生器根据该待测模块的测试结果,调整该待测模块的该测试参数设定;
依据修改后的该测试参数设定,以该效能测试工具再次进行测试;以及
记录该效能测试结果。
2.根据权利要求1所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,初始化该基准子系统的该步骤包括通过一人机界面设定该效能测试参数以及一用户需求参数。
3.根据权利要求2所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,该效能测试参数选自于由存储器占用空间、中央处理器占用率、以及输出输入效能所组成的集合之一。
4.根据权利要求2所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,该用户需求参数选自于由存储器占用空间、中央处理器占用率、以及输出输入效能所组成的集合之一。
5.根据权利要求1所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,该输出输入效能选自于由单位时间内发送的数据封包数量、及单位时间内发送的数据封包大小所组成的集合之一。
6.根据权利要求1所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,该中央处理器占用率算式系为:
中央处理器占用率=特定进程总时间/所有进程总时间。
7.根据权利要求1所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,对该Linux系统进行存储器测试的步骤更包括:
依据该效能测试参数设定该待测模块的存储器占用空间;
取得该Linux系统的存储器空间剩余状况;
若该Linux系统的存储器空间剩余状况,未满足该效能测试参数中的存储器占用空间,则返回一错误信息;以及
若该Linux系统的存储器空间剩余状况,满足该效能测试参数中的存储器占用空间,则进一步判断该待测模块的存储器占用空间满足该用户需求参数:
若该待测模块的存储器占用空间未满足该用户需求参数,则通过该子系统效能基准发生器调增存储器占用空间配置,并再次进行系统测试。
8.根据权利要求7所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,对该Linux系统进行中央处理器的效能测试的步骤包括:
依据该效能测试参数设定该待测模块的中央处理器占用率;
取得该Linux系统的中央处理器占用率状况;
若该Linux系统的中央处理器占用率大于该用户需求参数的中央处理器占用率,则返回该错误信息;以及
若该Linux系统的中央处理器占用率未大于该效能测试参数的中央处理器占用率,则进一步判断该Linux系统的中央处理器占用率满足该用户需求参数的中央处理器占用率:
若该待测模块的中央处理器占用率未满足该用户需求参数,则通过该子系统效能基准发生器调增该待测模块的中央处理器占用率,并再次进行系统测试。
9.根据权利要求7所述的通过子系统效能基准发生器进行系统测试的方法,其特征在于,对该Linux系统进行输出输入的效能测试的步骤包括:
计算一单位时间W内,该待测模块的输出输入效能;
若该Linux系统的输出输入效能未满足该用户需求参数的输出输入效能值,则返回该错误信息;以及
若该Linux系统的输出输入效能满足该用户需求参数的输出输入效能值,则进一步判断该待测模块的输出输入效能值设定已达该用户需求参数的输出输入效能值:
若该待测模块的输出输入效能未满足该用户需求参数,则通过该子系统效能基准发生器调增该待测模块的输出输入效能,并再次进行系统测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101606841A CN101470660A (zh) | 2007-12-29 | 2007-12-29 | 通过子系统效能基准发生器进行系统测试的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101606841A CN101470660A (zh) | 2007-12-29 | 2007-12-29 | 通过子系统效能基准发生器进行系统测试的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101470660A true CN101470660A (zh) | 2009-07-01 |
Family
ID=40828142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007101606841A Pending CN101470660A (zh) | 2007-12-29 | 2007-12-29 | 通过子系统效能基准发生器进行系统测试的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101470660A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104778114A (zh) * | 2015-04-30 | 2015-07-15 | 北京奇虎科技有限公司 | 分析应用响应性能的方法、装置和终端 |
CN108255712A (zh) * | 2017-12-29 | 2018-07-06 | 曙光信息产业(北京)有限公司 | 数据系统的测试系统和测试方法 |
CN111400115A (zh) * | 2020-03-08 | 2020-07-10 | 苏州浪潮智能科技有限公司 | 一种基于jbod存储设备效能测试的提升方法及系统 |
-
2007
- 2007-12-29 CN CNA2007101606841A patent/CN101470660A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104778114A (zh) * | 2015-04-30 | 2015-07-15 | 北京奇虎科技有限公司 | 分析应用响应性能的方法、装置和终端 |
CN108255712A (zh) * | 2017-12-29 | 2018-07-06 | 曙光信息产业(北京)有限公司 | 数据系统的测试系统和测试方法 |
CN108255712B (zh) * | 2017-12-29 | 2021-05-14 | 曙光信息产业(北京)有限公司 | 数据系统的测试系统和测试方法 |
CN111400115A (zh) * | 2020-03-08 | 2020-07-10 | 苏州浪潮智能科技有限公司 | 一种基于jbod存储设备效能测试的提升方法及系统 |
CN111400115B (zh) * | 2020-03-08 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 一种基于jbod存储设备测试的效能提升方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220129288A1 (en) | Method and apparatus for determining the capacity of an application cluster | |
US6678625B1 (en) | Method and apparatus for a multipurpose configurable bus independent simulation bus functional model | |
CN107547261B (zh) | 云平台性能测试方法及装置 | |
CN103092751B (zh) | 一种云环境下基于用户行为模型的web应用性能测试系统 | |
CN105278876A (zh) | 一种固态硬盘的数据擦除方法及装置 | |
CN102567166B (zh) | 一种显卡测试方法及测试系统 | |
CN107861691B (zh) | 一种多控存储系统的负载均衡方法和装置 | |
CN105630683B (zh) | 一种云测试体系架构 | |
CN102866950A (zh) | 一种虚拟服务器的性能测试方法以及测试工具 | |
CN112133357B (zh) | 一种eMMC的测试方法及装置 | |
CN102737727B (zh) | 双倍速率同步动态随机存储器稳定性测试的方法及系统 | |
CN115757066A (zh) | 硬盘性能测试方法、装置、设备、存储介质和程序产品 | |
CN101470660A (zh) | 通过子系统效能基准发生器进行系统测试的方法 | |
CN117033003B (zh) | 基于SystemVerilog的内存管理方法、电子设备和介质 | |
CN108572914B (zh) | 一种生成用于压力测试的日志的方法及装置 | |
US20070233449A1 (en) | Simulation of hierarchical storage systems | |
Mittal et al. | Cloud testing-the future of contemporary software testing | |
US20110161716A1 (en) | Systems, methods, and apparatuses for providing access to real time information | |
US8819174B2 (en) | Information processing system, information processing method, and storage medium | |
CN114090357A (zh) | 一种硬盘性能测试方法、装置、电子设备及存储介质 | |
CN111143327B (zh) | 一种数据处理方法及装置 | |
CN111949504A (zh) | 一种压力测试方法、装置及介质 | |
US20090228241A1 (en) | System testing method through subsystem performance-based generator | |
CN112596869B (zh) | 延时模型的构建方法及装置、电子设备及存储介质 | |
CN116909825B (zh) | 固态硬盘性能测试预处理及稳态验证的自动化测试方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090701 |