CN116795710A - 实时***的性能评估方法及装置 - Google Patents
实时***的性能评估方法及装置 Download PDFInfo
- Publication number
- CN116795710A CN116795710A CN202310789695.5A CN202310789695A CN116795710A CN 116795710 A CN116795710 A CN 116795710A CN 202310789695 A CN202310789695 A CN 202310789695A CN 116795710 A CN116795710 A CN 116795710A
- Authority
- CN
- China
- Prior art keywords
- real
- time
- delay jitter
- jitter
- performance
- 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
- 238000011156 evaluation Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 31
- 238000004364 calculation method Methods 0.000 claims abstract description 17
- 238000011056 performance test Methods 0.000 claims abstract description 9
- 238000012360 testing method Methods 0.000 claims description 22
- 238000004891 communication Methods 0.000 claims description 9
- 238000005070 sampling Methods 0.000 claims description 5
- 210000001747 pupil Anatomy 0.000 claims 1
- 238000011002 quantification Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 238000012113 quantitative test Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000011158 quantitative evaluation Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请提出一种实时***的性能评估方法及装置,该方法包括:对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量;根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估。本申请采用了三个参数中断延迟抖动、调度延迟抖动和堆栈使用量进行***性能评估,参数较少,评估步骤较为简单,完全定量化,减少人为模糊界定,可在黑盒模式(不知道***源码情况下)进行定量计算,通用性性高,适合实时***以及其软件的评估。
Description
技术领域
本发明涉及实时***评估的技术领域,尤其涉及实时***的性能评估方法及装置、计算设备和计算机可读存储介质。
背景技术
***的性能好坏是一个相对指标,具有可比性,对实际应用中有重要影响。目前公开的***性能评估方案有多种:
a.McCall模型、Boehm模型以及FURPS模型,此3种度量模型方法接近,评价准则里包含多种因素:可移植性,可靠性,有效性,可测试性,人的因素、可理解性、测试和支撑环境等等。但是这些方法包括的大多是定性指标,缺少实时性的定量评估或者只有部分定量评估,量化较难且某些评估参数定量界限模糊,且涉及多种人为主观因数,例如可理解性,可操作性等。
b.ISO 9126模型,此模型是在上述多个模型基础上,总结和归纳,由国际标准化组织(ISO)统一的量化规范,度量的因数包含了上面多个模型的总集合,参数最多,同时存在定量和定性变量。例如:实用性、精确性、安全性、容错性、成熟度、可理解性、可学习性、效率、可靠性、可以移植性、可安装性、时间行为、资源行为等等。尽管此评估方法非常全面,但是过于复杂,只适合大型软件工程,一般小型项目中,不适合使用此评估,评估成本过高。且某些评估参数定量界限模糊,且涉及多种人为主观因数。例如可理解性,可操作性等。
c.美国DSQI模型,此评估方法定量准确,定量的因数有:程序体系结构定义的模块总数,模块总数,数据库中数据对象及定义对象的属性的总项数,数据库中不重复的数据项数,具有单个入口和单出口的模块数,数据库中不同记录或单独对象的段数。但是此方法需要知道***源码,在商业应用模式下,有极大限制。
发明内容
鉴于现有技术的以上问题,本申请提供一种实时***的性能评估方法及装置、计算设备和计算机可读存储介质,解决现有评估方法存在的缺少定量测试、定量测试参数模糊、不适用小型项目、需要知道***源码的问题。
为达到上述目的,本申请第一方面提供了一种实时***的性能评估方法,包括:
对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量;
根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估。
本申请采用了三个参数中断延迟抖动、调度延迟抖动和堆栈使用量进行***性能评估,参数较少,评估步骤较为简单,完全定量化,减少人为模糊界定,可在黑盒模式(不知道***源码情况下)进行定量计算,通用性性高,适合实时***以及其软件的评估。
为达到上述目的,本申请第二方面提供了一种实时***的性能评估装置,包括:
测试指标获得模块,用于对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量;
评估模块,用于根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估。
本申请采用了三个参数中断延迟抖动、调度延迟抖动和堆栈使用量进行***性能评估,参数较少,评估步骤较为简单,完全定量化,减少人为模糊界定,可在黑盒模式(不知道***源码情况下)进行定量计算,通用性性高,适合实时***以及其软件的评估。
本申请第三方面提供了一种计算设备,包括:
通信接口;
至少一个处理器,其与所述通信接口连接;以及
至少一个存储器,其与所述处理器连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理器执行上述第一方面任一所述的方法。
本申请第四方面提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令当被计算机执行时使得所述计算机执行上述第一方面任一所述的方法。
本发明的这些和其它方面在以下(多个)实施例的描述中会更加简明易懂。
附图说明
以下参照附图来进一步说明本发明的各个特征和各个特征之间的联系。附图均为示例性的,一些特征并不以实际比例示出,并且一些附图中可能省略了本申请所涉及领域的惯常的且对于本申请非必要的特征,或是额外示出了对于本申请非必要的特征,附图所示的各个特征的组合并不用以限制本申请。另外,在本说明书全文中,相同的附图标记所指代的内容也是相同的。具体的附图说明如下:
图1为本申请提供的实时***的性能评估方法的一实施例的示意图;
图2为本申请提供的堆栈使用量示意图;
图3为本申请提供的实时***的性能评估方法的一具体实施方式的流程图;
图4为本申请提供的例1的堆栈使用量示意图;
图5为本申请提供的实时***的性能评估装置一实施例的示意图;
图6为本申请计算设备的示意图。
具体实施方式
说明书和权利要求书中的词语“第一、第二、第三等”或模块A、模块B、模块C等类似用语,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
在以下的描述中,所涉及的表示步骤的标号,如S110、S120……等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。
说明书和权利要求书中使用的术语“包括”不应解释为限制于其后列出的内容;它不排除其它的元件或步骤。因此,其应当诠释为指定所提到的所述特征、整体、步骤或部件的存在,但并不排除存在或添加一个或更多其它特征、整体、步骤或部件及其组群。因此,表述“包括装置A和B的设备”不应局限为仅由部件A和B组成的设备。
本说明书中提到的“一个实施例”或“实施例”意味着与该实施例结合描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在本说明书各处出现的用语“在一个实施例中”或“在实施例中”并不一定都指同一实施例,但可以指同一实施例。此外,在一个或多个实施例中,能够以任何适当的方式组合各特定特征、结构或特性,如从本公开对本领域的普通技术人员显而易见的那样。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。如有不一致,以本说明书中所说明的含义或者根据本说明书中记载的内容得出的含义为准。另外,本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。为了准确地对本申请中的技术内容进行叙述,以及为了准确地理解本发明,在对具体实施方式进行说明之前先对本说明书中所使用的术语给出如下的解释说明或定义。
现有***的评估方法存在缺少定量测试、定量测试参数模糊、不适用小型项目、需要知道***源码的问题,基于此,本申请提出实时***的评估方案,该方案采用三个参数中断延迟抖动、调度延迟抖动和堆栈使用量进行***性能评估,参数较少,评估步骤较为简单,完全定量化,减少人为模糊界定,可在黑盒模式(不知道***源码情况下)进行定量计算,通用性高,适合实时***以及其软件的评估。
本申请适用于实时***以及其软件的评估场景。
【实时***的性能评估方法的第一实施例】
下面参照图1示出的流程图,对本申请实时***的性能评估方法第一实施例进行介绍。
如图1所示,该方法包括:
S110:对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量;
S120:根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估。
在一些实施例中,对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量,包括:
采用cyclictest或相应类型的测试工具对所述实时***进行性能测试,获得预定时间内的中断延迟抖动和调度延迟抖动;
获得预定时间内所述cyclictest测试工具的堆栈使用量。
在该实施例中,使用通用测试软件(例如cyclictest)测试***的预定时间内(比如24h)的中断延迟抖动Ti和调度延迟抖动Ts。使用cyclictest测试的同时,使用进程堆栈检测工具,测试24h内cyclictest堆栈使用量(如图2所示的横坐标上的图形)。
在一些实施例中,根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估,包括:
按照预设的多个抖动时间段对预定时间内的中断延迟抖动和调度延迟抖动进行统计,获得每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值;
设定采样单位,基于所述采样单位对所述预定时间内的堆栈使用量进行累加,获得堆栈使用总量;
根据所述每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值、所述堆栈使用总量对所述实时***的实时性能进行评估。
在该实施例中,中断延迟抖动、调度延迟抖动是一个实时***通用的参数,用于表示实时***的实时程度评估,两者的测试结果数值以纳秒(ns)为单位,越少越好。其中测试数值最终取连续跑24小时的测试结果的平均值,结果分成5段(如表1所示)。
表1
抖动时间段 | <1us | 1us---5us | 5---15us | 15---30us | >30us |
中断延迟名称 | Ti1us | Ti5us | Ti15us | Ti30us | Ti30+us |
调度延迟名称 | Ts1us | Ts5us | Ts15us | Ts30us | Ts30+us |
然后,可以以秒为单位采样(24小时即为:3600*24秒),对采样的堆栈使用量进行累加(积分运算),测试结果为图2所示的横坐标上的图形面积,表示为:堆栈深度dt。其中,堆栈深度即堆栈使用量。
在一些实施例中,根据所述每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值、所述堆栈使用总量对所述实时***的实时性能进行评估,包括:
将多个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值相加,再加上所述堆栈使用总量,获得相加结果,根据所述相加结果对所述实时***的实时性能进行评估。
在一些实施例中,根据所述每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值、所述堆栈使用总量对所述实时***的实时性能进行评估,包括:
设定每个抖动时间段的权重;
将每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值相加,再乘以权重,获得每个抖动时间段的计算结果;
将所述堆栈使用总量乘以预定参数,获得第一计算结果;
将多个抖动时间段的计算结果、第一计算结果相加,获得相加结果;
根据所述相加结果对所述实时***的实时性能进行评估。
在该实施例中,给中断延迟抖动的平均值和调度延迟抖动的平均值赋予了权重,每个测试阶段权重不一样,通常以2倍递增(2为指数递增)。在实时性要求非常严格的项目,每个阶段可以以3为指数递增。如表2所示。
表2
抖动时间段 | <1us | 1us---5us | 5---15us | 15---30us | >30us |
中断延迟名称 | Ti1us | Ti5us | Ti15us | Ti30us | Ti30+us |
调度延迟名称 | Ts1us | Ts5us | Ts15us | Ts30us | Ts30+us |
权重关系 | 1倍 | 2倍 | 4倍 | 8倍 | 16倍 |
再者,给堆栈使用总量赋予了参数0.1,增加内堆栈使用总量是作为补偿:假设两个***单独算抖动延迟方面分数非常接近,此时加入此选项作为补偿,可以让分数出现更多差距进而得出跟精确的比较结论。
可以采用如下公式计算:
使用该公式得到的结果可以用来评估实时***的实时性能。
在一些实施例中,根据所述相加结果对所述实时***的实时性能进行评估,包括:
将所述相加结果与预设的阈值范围进行比较,当所述相加结果位于所述预设的阈值范围内,则表示实时***的实时性能高,当所述相加结果不位于所述预设的阈值范围内,则表示实时***的实时性能低。
在该实施例中,对应每个***,其都有一个阈值范围来表示***的实时性能优良,不在这个阈值范围的结果表明***的实时性能偏弱。此范围可以是0---185000内,也可以是其他的范围,根据实际的***来确定。
如果中断延迟、调度延迟、堆栈使用量越大,根据公式(2)计算出的结果越大,反映这个***的实时性能越低。反之,如果结果小,反映这个***的实时性能高,快速响应,占用资源偏少。
本申请方案解实现实时***的性能评估,和现有一些***评估方案比较,该方案有如下特点:
1.通用性性高,可在多个种架构的***中运行(arm架构,mipis架构,x86架构等);
2.完全定量化,有明确量化的计算,抖动延迟时间为主要决定性的因数,次要因数为堆栈使用量,减少人为模糊界定;
3.可在黑盒模式(不知道***源码情况下)进行定量计算;
4.参数较少,评估步骤较为简单;
5.不合适大规模的应用软件的评估,适合实时***以及其软件的评估。
【实时***的性能评估方法的第一具体实施方式】
下面,参见图3示出的本申请提供的实时***的性能评估方法的一具体实施方式的流程图,对该具体实施方式进行说明,包括以下步骤:
S210:使用通用测试软件cyclictest测试***的24h内的中断延迟抖动Ti和调度延迟抖动Ts。
S220:将抖动结果分成5段,获得每段的中断延迟抖动Ti和调度延迟抖动Ts的平均值。
S230:使用进程堆栈检测工具,测试24h内cyclictest的堆栈使用量。
S240:以秒为单位采样,对24h内cyclictest的堆栈使用量进行累加,获得堆栈使用总量。
S250:将每段的中断延迟抖动Ti和调度延迟抖动Ts的平均值、堆栈使用总量带入公式2,获得计算结果。
S260:根据计算结果判断实时***的实时性能。
下面举例说明。
例1:在TTOS***中:用cyclictest测试24小时(测试时间固定24h),最终可以得到,5个阶段的中断延迟和调度延迟的平均值,如表3所示,堆栈使用量结果如图4所示。
表3
抖动时间段 | <1us | 1us---5us | 5---15us | 15---30us | >30us |
中断延迟名称 | 137 | 7898 | 16703 | 0 | 0 |
调度延迟名称 | 521 | 7823 | 17142 | 0 | 0 |
权重关系 | 1倍 | 2倍 | 4倍 | 8倍 | 16倍 |
将结果带入公式1中,得到:
Sum=(137+521)+2(7898+7823)+4(16703+17142)+8(0+0)+16(0+0)+0.1×91411.2
=658+31442+135380+9141.12
=176591.12
例2:通过cyclictest在x86平台测试,抖动延迟的测试结果如表4所示,堆栈使用量结果78611.5。
表4
抖动时间段 | <1us | 1us---5us | 5---15us | 15---30us | >30us |
中断延迟名称 | 461 | 8090 | 19115 | 34554 | 51280 |
调度延迟名称 | 470 | 8082 | 19239 | 34043 | 51089 |
权重关系 | 1倍 | 2倍 | 4倍 | 8倍 | 16倍 |
将结果带入公式1中,得到:
Sum=(461+470)+2(8090+8082)+4(19115+19239)+8(34554+34043)+16(51280+51089)+0.1×78611.5
=886+32344+153416+548776+1637904+7861.15
=2381187.15
例3:通过cyclictest在x86平台测试,抖动延迟的测试结果如表5所示,堆栈使用量结果51483.4。
表5
抖动时间段 | <1us | 1us---5us | 5---15us | 15---30us | >30us |
中断延迟名称 | 549 | 7265 | 17967 | 0 | 0 |
调度延迟名称 | 542 | 7148 | 19135 | 0 | 0 |
权重关系 | 1倍 | 2倍 | 4倍 | 8倍 | 16倍 |
将结果带入公式1中,得到:
Sum=(549+542)+2(7265+7148)+4(17967+19135)+8(0+0)+16(0+0)+0.1×51483.4
=1091+28826+148408+5148.34
=183473.34
例4:通过cyclictest在x86平台测试,抖动延迟的测试结果如表6所示,堆栈使用量结果82817.7。
表6
抖动时间段 | <1us | 1us---5us | 5---15us | 15---30us | >30us |
中断延迟名称 | 1510 | 5099 | 0 | 0 | 0 |
调度延迟名称 | 1798 | 5248 | 0 | 0 | 0 |
权重关系 | 1倍 | 2倍 | 4倍 | 8倍 | 16倍 |
将结果带入公式1中,得到:
Sum=(1510+1798)+2(5099+5248)+4(0+0)+8(0+0)+16(0+0)+0.1×82817.7
=3308+20694+0+8281.77
=32283.77
最终的结果如表7所示:
表7
可见,如果中断延迟、调度延迟、堆栈使用量越大,结果越大,反映这个***的实时性能越低。反之,如果结果小,反映这个***的实时性能高,快速响应,占用资源偏少;一般来说分数在0---185000内为优良,此值以上,实时***性能偏弱。
本申请有明确量化的计算,抖动时间为主要决定性的因数,次要因数为堆栈使用量。在两者的***抖动值比较接近的情况下,根据实际使用和测试经验,使用堆栈使用量做了分数补偿,很好的反映了实时***的性能。
【本申请实时***的性能评估装置的实施例】
如图5所示,本申请还提供了相应的一种实时***的性能评估的装置的实施例,关于该装置的有益效果或解决的技术问题,可以参见与各装置分别对应的方法中的描述,或者参见发明内容中的描述,此处不再一一赘述。
在该实时***的性能评估装置的实施例中,该装置包括:
测试指标获得模块01,用于对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量;
评估模块02,用于根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估。
【本申请计算设备的实施例】
图6是本申请实施例提供的一种计算设备900的结构性示意性图。该计算设备900包括:处理器910、存储器920、通信接口930。
应理解,图6中所示的计算设备900中的通信接口930可以用于与其他设备之间进行通信。
其中,该处理器910可以与存储器920连接。该存储器920可以用于存储该程序代码和数据。因此,该存储器920可以是处理器910内部的存储单元,也可以是与处理器910独立的外部存储单元,还可以是包括处理器910内部的存储单元和与处理器910独立的外部存储单元的部件。
可选的,计算设备900还可以包括总线。其中,存储器920、通信接口930可以通过总线与处理器910连接。总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。
应理解,在本申请实施例中,该处理器910可以采用中央处理单元(centralprocessing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(Application specific integrated circuit,ASIC)、现成可编程门矩阵(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器910采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。
该存储器920可以包括只读存储器和随机存取存储器,并向处理器910提供指令和数据。处理器910的一部分还可以包括非易失性随机存取存储器。例如,处理器910还可以存储设备类型的信息。
在计算设备900运行时,所述处理器910执行所述存储器920中的计算机执行指令执行上述方法的操作步骤。
应理解,根据本申请实施例的计算设备900可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备900中的各个模块的上述和其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行上述方法,该方法包括上述各个实施例所描述的方案中的至少之一。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本申请的较佳实施例及所运用的技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明的构思的情况下,还可以包括更多其他等效实施例,均属于本发明的保护范畴。
Claims (10)
1.一种实时***的性能评估方法,其特征在于,包括:
对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量;
根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估。
2.根据权利要求1所述的方法,其特征在于,对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量,包括:
采用cyclictest测试工具对所述实时***进行性能测试,获得预定时间内的中断延迟抖动和调度延迟抖动;
获得预定时间内所述cyclictest测试工具的堆栈使用量。
3.根据权利要求1所述的方法,其特征在于,根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估,包括:
按照预设的多个抖动时间段对预定时间内的中断延迟抖动和调度延迟抖动进行统计,获得每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值;
设定采样单位,基于所述采样单位对所述预定时间内的堆栈使用量进行累加,获得堆栈使用总量;
根据所述每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值、所述堆栈使用总量对所述实时***的实时性能进行评估。
4.根据权利要求3所述的方法,其特征在于,根据所述每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值、所述堆栈使用总量对所述实时***的实时性能进行评估,包括:
将多个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值相加,再加上所述堆栈使用总量,获得相加结果,根据所述相加结果对所述实时***的实时性能进行评估。
5.根据权利要求3所述的方法,其特征在于,根据所述每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值、所述堆栈使用总量对所述实时***的实时性能进行评估,包括:
设定每个抖动时间段的权重;
将每个抖动时间段内的中断延迟抖动的平均值和调度延迟抖动的平均值相加,再乘以权重,获得每个抖动时间段的计算结果;
将所述堆栈使用总量乘以预定参数,获得第一计算结果;
将多个抖动时间段的计算结果、第一计算结果相加,获得相加结果;
根据所述相加结果对所述实时***的实时性能进行评估。
6.根据权利要求5所述的方法,其特征在于,所述权重设定为以2或3的指数递增。
7.根据权利要求4或5所述的方法,其特征在于,根据所述相加结果对所述实时***的实时性能进行评估,包括:
将所述相加结果与预设的阈值范围进行比较,当所述相加结果位于所述预设的阈值范围内,则表示实时***的实时性能高,当所述相加结果不位于所述预设的阈值范围内,则表示实时***的实时性能低。
8.一种实时***的性能评估装置,其特征在于,
测试指标获得模块,用于对实时***进行性能测试,获得预定时间内的中断延迟抖动、调度延迟抖动和堆栈使用量;
评估模块,用于根据所述中断延迟抖动、调度延迟抖动和堆栈使用量对所述实时***的实时性能进行评估。
9.一种计算设备,其特征在于,包括:
通信接口;
至少一个处理器,其与所述通信接口连接;以及
至少一个存储器,其与所述处理器连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理器执行权利要求1-7任一所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有程序指令,所述程序指令当被计算机执行时使得所述计算机执行权利要求1至7任一项所述的确定瞳孔位置的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310789695.5A CN116795710A (zh) | 2023-06-29 | 2023-06-29 | 实时***的性能评估方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310789695.5A CN116795710A (zh) | 2023-06-29 | 2023-06-29 | 实时***的性能评估方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116795710A true CN116795710A (zh) | 2023-09-22 |
Family
ID=88041410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310789695.5A Pending CN116795710A (zh) | 2023-06-29 | 2023-06-29 | 实时***的性能评估方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116795710A (zh) |
-
2023
- 2023-06-29 CN CN202310789695.5A patent/CN116795710A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019104854A1 (zh) | 性能测试评价方法、装置、终端设备及存储介质 | |
Iyer et al. | A measurement-based model for workload dependence of CPU errors | |
WO2021174811A1 (zh) | 车流量时间序列的预测方法及预测装置 | |
WO2017157203A1 (zh) | 一种分布式环境下监督学习算法的基准测试方法和装置 | |
CN111881023B (zh) | 一种基于多模型对比的软件老化预测方法及装置 | |
CN113837596B (zh) | 一种故障确定方法、装置、电子设备及存储介质 | |
US20120174231A1 (en) | Assessing System Performance Impact of Security Attacks | |
CN110647447A (zh) | 用于分布式***的异常实例检测方法、装置、设备和介质 | |
CN112905435B (zh) | 基于大数据的工作量评估方法、装置、设备及存储介质 | |
CN112395179B (zh) | 一种模型训练方法、磁盘预测方法、装置及电子设备 | |
CN117195568A (zh) | 一种基于离散事件的仿真引擎性能分析方法及装置 | |
CN111783883A (zh) | 一种异常数据的检测方法及装置 | |
CN108446213A (zh) | 一种静态代码质量分析方法和装置 | |
CN116795710A (zh) | 实时***的性能评估方法及装置 | |
CN114546841B (zh) | 基于云计算的软件质量评估方法 | |
US10878329B1 (en) | Probabilistic accumulation approach to assess primary uncertainty in catastrophe models | |
CN112598228B (zh) | 企业竞争力的分析方法、装置、设备及存储介质 | |
WO2022165152A1 (en) | Constructing a statistical model and evaluating model performance | |
CN114896024A (zh) | 基于核密度估计的虚拟机运行状态检测方法和装置 | |
CN112416727A (zh) | 批处理作业的检核方法、装置、设备及介质 | |
CN113626340A (zh) | 测试需求识别方法、装置、电子设备及存储介质 | |
CN116737554B (zh) | 一种基于大数据的智能分析处理***及方法 | |
Becker et al. | A Testing Pipeline for Quantum Computing Applications | |
EP4254182A1 (en) | Method and apparatus of detecting running state of a virtual machine based on kernel density estimation | |
CN111522644B (zh) | 基于历史运行数据预测并行程序运行时间的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |