[发明专利]一种分布式仿真系统的顺序模型调度方法有效
申请号: | 201610900639.4 | 申请日: | 2016-10-17 |
公开(公告)号: | CN106503320B | 公开(公告)日: | 2019-09-13 |
发明(设计)人: | 李文光;王强;龙腾;刘莉 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F17/50 | 分类号: | G06F17/50 |
代理公司: | 北京理工正阳知识产权代理事务所(普通合伙) 11639 | 代理人: | 鲍文娟 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明一种分布式仿真系统的顺序模型调度方法,属于复杂系统仿真技术领域。所依托的一种分布式仿真系统包括客户端、主控引擎和计算节点。一种分布式仿真系统的顺序模型调度方法,包括1仿真运行初始化并完成模型分配;2运行仿真,即客户端向主控引擎发送调度指令,主控引擎接收调度指令,获得第一级运行模型,并向第一级运行模型所在节点发送驱动指令,驱动计算节点上的模型运行;3计算节点接收驱动指令驱动模型运行,产生结果数据并输出给主控引擎;4主控引擎接收结果数据并解算得到下游模型集合;5开始遍历下游模型ID集合;6判断是否移除当前模型;7判断是否达到下游模型集合数;8判断下游集合模型是否为空,跳至3还是完成本方法。本方法提升了模型运行效率,降低了主控引擎负载,减少了模型调度耗时,具有较强通用性。 | ||
搜索关键词: | 一种 分布式 仿真 系统 顺序 模型 调度 方法 | ||
【主权项】:
1.一种分布式仿真系统的顺序模型调度方法,其特征在于:所依托的一种分布式仿真系统,简称仿真系统,包括客户端、主控引擎和计算节点;所述客户端为仿真系统工作时进行建模的人机交互端,客户端包含仿真运行所需的仿真任务,在仿真运行前将模型发送至主控引擎;所述主控引擎为仿真系统的控制端,仿真系统工作时将模型分配到计算节点,接收客户端发送的仿真任务,将模型分配到计算节点,进行模型调度以及数据传递;所述计算节点为仿真系统运行时运行模型并获取输出结果的计算端;一种分布式仿真系统的顺序模型调度方法,包括如下步骤:步骤1:仿真运行初始化,即发送仿真任务到主控引擎并完成模型分配,具体为:步骤1.1客户端收集仿真任务,发送给主控引擎;所述仿真任务包括仿真运行需要的所有模型以及模型之间的数据流;其中,模型包括模型基本信息、输入参数、输出参数、模型文件,输入参数为模型运行所需的初始化参数值,输出参数为模型运行完毕输出的参数值,模型文件为模型运行所需的工程文件;其中,模型基本信息主要包括模型ID、模型名称以及模型上游输出接口信息;工程文件,指模型算法程序文件;数据流为模型之间的数据流向,是模型之间数据传递的依据;步骤1.2主控引擎接收仿真任务,进行模型分配;主控引擎接收步骤1.1中客户端发送的仿真任务,主控引擎解析仿真任务,将模型和数据流分配到计算节点;步骤1.3计算节点接收主控引擎发送的模型和数据流;步骤2:运行仿真,即客户端向主控引擎发送调度指令,主控引擎接收调度指令,获得第一级运行模型,并向第一级运行模型所在节点发送驱动指令,驱动计算节点上的模型运行,具体为:步骤2.1客户端生成调度指令,并将调度指令发送给主控引擎;所述调度指令为客户端与主控引擎进行仿真运行调度的标志,调度指令包括模型ID和指令数据,其中指令数据包括运行指令和结束指令;步骤2.2主控引擎接收调度指令,获得第一级运行模型;主控引擎接收到客户端发送的调度指令,解析得到模型ID和运行指令,该模型ID所指向的模型即为本次模型调度的第一级运行模型;步骤2.3主控引擎驱动节点上的模型进行第一级模型的运算,具体为:主控引擎向第一级运行模型所在的节点发送驱动指令;所述驱动指令包括模型ID和模型运行指令数据;步骤3:计算节点接收驱动指令驱动模型运行,产生结果数据并输出给主控引擎,具体如下:步骤3.1计算节点接收到步骤2.3中主控引擎发送的驱动指令,解析得到模型ID,启动该模型进程,并等待进程结束;步骤3.2模型进程结束后,计算节点收集模型运行结束得到的结果数据,根据数据流关系将结果数据发送给下游模型所在的节点;所述下游模型为数据流中当前模型输出参数数据流指向的模型;所述结果数据包括模型ID、输出参数ID、输出参数值;步骤3.3将步骤3.2中的模型结果数据发送给主控引擎;步骤4:主控引擎接收结果数据并进行更新和解算,得到下游模型ID集合,具体如下:步骤4.1主控引擎接收步骤3.3中计算节点发送的结果数据并解析,得到模型ID、输出参数ID和输出参数值;步骤4.2主控引擎将结果数据发送到客户端,在客户端界面更新结果数据;步骤4.3主控引擎根据当前模型ID、输出参数ID和数据流关系解算得到当前模型ID的下游模型ID集合;步骤5:设置n为下游模型ID集合中的模型ID数量,设置i为下游模型ID集合中的模型ID序号,1≤i≤n,初始化i=1,开始遍历下游模型ID集合;步骤6:得到序号为i的模型ID所代表的模型,即当前模型,并决定是否将当前模型从下游模型ID集合中进行移除操作,具体为:6.1若当前模型的输入数据未发生变化,则将当前模型的模型ID从下游模型ID集合中移除,跳至步骤7;6.2若当前模型的输入数据发生变化,则在下游模型ID集合中保留当前模型的模型ID;步骤7:判断i是否达到下游模型集合数量n,并决定跳至步骤6还是步骤8,具体为:7.1若是,表明i已达到下游模型集合数量n,即已得到经过移除操作的下游模型ID集合,跳至步骤8;7.2若否,表明i未达到下游模型集合数量n,令i=i+1,跳至步骤6;步骤8:主控引擎判断步骤7得到的下游模型ID集合是否为空,决定跳至步骤3还是完成本方法,具体为:8.1若步骤7输出的下游模型ID集合不为空,则遍历下游模型ID集合,分别向模型所在的节点发送驱动指令,并跳至步骤3;8.2若步骤7输出的下游模型ID集合为空,则停止模型调度。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610900639.4/,转载请声明来源钻瓜专利网。
- 上一篇:一种虫草参多糖片及其制备方法
- 下一篇:一种豆类中营养物质综合提取纯化方法