仿真引擎的性能测试方法及存储介质技术

技术编号:16500471 阅读:49 留言:0更新日期:2017-11-04 11:31
一种仿真引擎的性能测试方法及存储介质,用于并行离散事件的仿真,该方法包括:建立并生成仿真模型,并使用管理应用所需的信息配置所述仿真模型;使用同步事件调度性能、随机事件调度性能、事件队列管理性能、和时间推进效率对仿真模型进行测试;分别根据所选定的性能指标,准备仿真事件队列;根据所选定的性能指标,启动仿真并开始测试,直至处理完成或者计时完成。本发明专利技术可以在并行与串行之间兼容和切换;参与性能测试的模型逻辑复杂度极低,排除仿真模型性能对于引擎性能测试的影响;测试指标主要针对仿真引擎事件调度的时间协调,能代表引擎的基础性能,具备客观性;指标的测试方法可在不同仿真引擎上实现,具备可实施性。

The simulation engine performance test method and storage medium

The performance test method of simulation engine and storage medium for the parallel discrete event simulation, the method includes establishing and generate simulation model, and use the application management information required to configure the simulation model; using synchronization event scheduling performance, random event scheduling performance, event queue management performance, and promote the efficiency of time to test the simulation model; respectively according to the performance indicators selected for simulation, the event queue; according to the performance index of the selected, and began to start the simulation test, until the processing is complete or complete timing. The invention can be compatible between parallel and serial switching and logic model; participate in performance testing of very low complexity, exclude the simulation model performance for affecting the performance of the engine test; test index of main time for coordinating the event scheduling simulation engine, the engine can represent the basic performance, with objectivity; test method can be realized in the index different simulation engines, with can be implemented.

【技术实现步骤摘要】
仿真引擎的性能测试方法及存储介质
本专利技术涉及一种仿真计算领域,更具体地说,涉及并行离散事件(PDES,ParallelDiscreteEventSimulation)仿真引擎的性能测试方法及存储介质。
技术介绍
基于数字计算机的离散事件仿真广泛应用于军事、装备、社会等领域,如何提高仿真运行效率是业界所广泛关注的技术问题,随着计算机软硬件技术的不断发展,软硬件并行能力的不断提升,要求离散事件仿真的并行化以提高效率,但如何衡量仿真引擎的效率,从而比较不同实现方式的优劣,指导技术发展方向,是本领域迫切的需求,但一直未得到有效解决,其原因主要在于:1、性能的模型无关性:通常仿真的性能包括了引擎的性能和模型运算的性能,测量引擎的性能必须以某种方式的仿真运行为手段,因此必须排除模型性能的影响,即必须要设计足够简单,在不同引擎上都能实现且能够支持引擎性能测量的通用模型;2、性能指标的客观性:不同的仿真引擎采用了不同的实现方法,包括在并行化上也有不同的实现手段,比较其性能就要剔除由于引擎设计不同而造成的个性化指标,而是筛选和定义所有引擎都必须具备的指标,并且能够代表引擎设计的基础性能;3、性能指标的可实施性:与硬件和标准软件的benchmark不同,由于不同引擎的软件设计使得不可能有统一的测试工具,甚至统一的一套源代码也非常困难,因此测试方法必须具有在不同引擎上的可实现性,甚至具有不可作弊和不可抵赖的特点。在并行离散事件(PDES,ParallelDiscreteEventSimulation)计算领域,研究者们针对并行性能的度量和测量方法做了很多努力,并行系统的加速比定义为:对于一个给定的应用,并行算法或并行程序的执行速度相对于串行算法或串行程序的执行速度加快了多少倍。引申到离散事件仿真中,并行和串行的离散事件仿真的加速比可以类似定义,而对于引擎,则应消除算法和模型复杂度的差异。并行加速比存在三种定律:Amdahl定律,Gustafson定律,Sun和Ni定律。Amdahl定律应用于实时性要求较高的科学计算,针对固定不变的计算负载,通过增加处理器和提高处理器速度进行加速,受限于问题的可分解并行程度,加速比随处理器增加存在一个上限。Gustafson针对计算时间固定但计算精度随计算量正相关的情况,通过增加处理器在不变的时间内加大计算量从而提高精度。Sun和Ni定律是上述两者的综合。通用测试模型PHOLD是广泛使用的仿真引擎测试模型,是对对称负载的基准测试模型,该模型假设具有N个并行执行,平均分配到M个处理器上,在仿真初始化时,每个LP(逻辑并行过程)有R个初始事件,按均匀分布从N个LP中随机选择一个发送目标,在仿真过程中,每收到一个事件,就再产生K个新的事件并向随机选择的目标发送,考察系统整体时间推进的情况。从PHOLD模型设计发现,该模型完全针对并行仿真,无法在并行和串行之间兼容和切换;其次测试内容考虑了处理器之间通信的开销,以及由于通信延迟导致的时间冲突从而发生无效执行和回退的开销等因素,因此是一种综合的性能测试,针对保守时间同步的引擎没有无效执行和回退,而需要考核在事件调度时的时间协调。综合国内外研究现状,对于并行离散事件仿真引擎的性能定量指标分析及测量方法还存在很大的不足,尤其是针对引擎自身的基础性能指标方面,缺乏客观科学的标准和方法。因此,如何对并行离散时间仿真引擎进行性能测试,以更好的反应系统的运行效率,并进一步的,利用该测试指标对仿真引擎进行优化,成为现有技术亟需解决的技术问题。
技术实现思路
本专利技术的目的在于提出一种仿真引擎的性能测试方法及存储介质,以同步事件调度效率、随机事件调度效率、事件队列管理效率、时间推进效率为指标,实现针对性能的核心要素——事件为主而设计的指标,并进行测试,充分体现引擎的基础能力,以及在并行化实现方式上效率的高低。为达此目的,本专利技术采用以下技术方案:一种仿真引擎的性能测试方法,用于并行离散事件的仿真,包括如下步骤:步骤S110:建立并生成仿真模型,并使用管理应用所需的信息配置所述仿真模型;步骤S120:使用同步事件调度性能、随机事件调度性能、事件队列管理性能、和时间推进效率中的一个或多个作为指标对仿真模型进行测试,所述同步时间调度性能指的是:单位时间调度的仿真时间相同事件的数量,所述随机事件调度性能是:单位时间调度的仿真时间随机分布事件的数量,所述事件队列管理性能指的是:单位时间向事件队列中插入仿真时间随机分布的事件数量,所述时间推进效率指的是:调度指定数量个随机事件队列所需的时间,其中事件队列中第一事件处理方法为插入仿真时间随机的第二事件,所插入的仿真时间随机的第二事件处理方法为空;步骤S130:分别根据所选定的性能指标,准备仿真事件队列,设定事件的数量、事件的仿真时间和/或自身实体时间;步骤S140:根据所选定的性能指标,启动仿真并开始测试,直至处理完成或者计时完成。可选的,当使用同步事件调度性能作为指标对仿真引擎进行测试时,步骤S130和步骤S140具体为:事件队列中准备好开始和结束两个事件,仿真时间分别为0和T,T>0,开始事件的处理为向事件队列中插入同一仿真时间t的n个事件,事件处理为空,0<t<T,结束事件的处理为结束仿真;启动仿真,仿真引擎调度开始事件,向队列中插入事件,完成后开始计时,由仿真引擎调度事件队列中的事件;调度完所有事件,最后一个事件为结束事件,停止计时,计算调度性能。可选的,当使用随机事件调度性能作为指标对仿真引擎进行测试时,步骤S130和步骤S140具体为:事件队列中准备好开始和结束两个事件,仿真时间分别为0和T,T>0,开始事件的处理为向事件队列中插入仿真时间t随机分布的n个事件,0<t<T,事件处理为空,结束事件的处理为结束仿真;启动仿真,仿真引擎调度开始事件,向队列中插入随机事件,完成后开始计时,由仿真引擎调度事件队列中的事件;调度完所有事件,最后一个事件为结束事件,停止计时,计算调度性能。可选的,当使用事件队列管理性能作为指标对仿真引擎进行测试时,步骤S130和步骤S140具体为:事件队列中准备好开始和结束两个事件,仿真时间分别为0和T,T>0,开始事件的处理为向事件队列中插入仿真时间t随机分布的n个事件,t>T,事件处理为空,结束事件的处理为结束仿真;启动仿真开始计时,仿真引擎调度开始事件,向队列中插入随机事件,要求插入事件的时间按照时间顺序从小到大排序;然后调度结束事件,停止计时,计算插入的事件的数量,计算队列管理性能。可选的,当时间推进效率性能作为指标对仿真引擎进行测试时,步骤S130和步骤S140具体为:事件队列中准备好开始和结束两个事件,仿真时间分别为0和T,T>0,开始事件的处理为向事件队列中插入仿真时间t随机分布的n个第一事件,0<t<T,结束事件的处理为结束仿真;第一事件的处理为向事件队列中插入1个第二事件,t第一事件<t第二事件<T,第二事件的处理为空;启动仿真开始计时,执行开始,第一事件向事件队列中插入第二事件并开始调度;然后调度结束事件,完成后停止计时,计算调度所有事件的数量,计算时间推进效率。可选的,该方法还包括步骤S150:根本文档来自技高网
...
仿真引擎的性能测试方法及存储介质

【技术保护点】
一种仿真引擎的性能测试方法,用于并行离散事件的仿真,包括如下步骤:步骤S110:建立并生成仿真模型,并使用管理应用所需的信息配置所述仿真模型;步骤S120:使用同步事件调度性能、随机事件调度性能、事件队列管理性能、和时间推进效率中的一个或多个作为指标对仿真模型进行测试,所述同步时间调度性能指的是:单位时间调度的仿真时间相同事件的数量,所述随机事件调度性能是:单位时间调度的仿真时间随机分布事件的数量,所述事件队列管理性能指的是:单位时间向事件队列中插入仿真时间随机分布的事件数量,所述时间推进效率指的是:调度指定数量个随机事件队列所需的时间,其中事件队列中第一事件处理方法为插入仿真时间随机的第二事件,所插入的仿真时间随机的第二事件处理方法为空;步骤S130:分别根据所选定的性能指标,准备仿真事件队列,设定事件的数量、事件的仿真时间和/或自身实体时间;步骤S140:根据所选定的性能指标,启动仿真并开始测试,直至处理完成或者计时完成。

【技术特征摘要】
1.一种仿真引擎的性能测试方法,用于并行离散事件的仿真,包括如下步骤:步骤S110:建立并生成仿真模型,并使用管理应用所需的信息配置所述仿真模型;步骤S120:使用同步事件调度性能、随机事件调度性能、事件队列管理性能、和时间推进效率中的一个或多个作为指标对仿真模型进行测试,所述同步时间调度性能指的是:单位时间调度的仿真时间相同事件的数量,所述随机事件调度性能是:单位时间调度的仿真时间随机分布事件的数量,所述事件队列管理性能指的是:单位时间向事件队列中插入仿真时间随机分布的事件数量,所述时间推进效率指的是:调度指定数量个随机事件队列所需的时间,其中事件队列中第一事件处理方法为插入仿真时间随机的第二事件,所插入的仿真时间随机的第二事件处理方法为空;步骤S130:分别根据所选定的性能指标,准备仿真事件队列,设定事件的数量、事件的仿真时间和/或自身实体时间;步骤S140:根据所选定的性能指标,启动仿真并开始测试,直至处理完成或者计时完成。2.根据权利要求1所述的性能测试方法,其特征在于:当使用同步事件调度性能作为指标对仿真引擎进行测试时,步骤S130和步骤S140具体为:事件队列中准备好开始和结束两个事件,仿真时间分别为0和T,T>0,开始事件的处理为向事件队列中插入同一仿真时间t的n个事件,事件处理为空,0<t<T,结束事件的处理为结束仿真;启动仿真,仿真引擎调度开始事件,向队列中插入事件,完成后开始计时,由仿真引擎调度事件队列中的事件;调度完所有事件,最后一个事件为结束事件,停止计时,计算调度性能。3.根据权利要求1所述的性能测试方法,其特征在于:当使用随机事件调度性能作为指标对仿真引擎进行测试时,步骤S130和步骤S140具体为:事件队列中准备好开始和结束两个事件,仿真时间分别为0和T,T>0,开始事件的处理为向事件队列中插入仿真时间t随机分布的n个事件,0<t<T,事件处理为空,结束事件的处理为结束仿真;启动仿真,仿真引擎调度开始事件,向队列中插入随机事件,完成后开始计时,由仿真引擎调度事件队列中的事件;调度完所有事件,最后一个事件为结束事件,停止计时,计算调度性能。4....

【专利技术属性】
技术研发人员:闫飞张柯高鹏蕊孟龙龙刘涛郑元庆杨永武陆响温厘
申请(专利权)人:北京华如科技股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1