[发明专利]基于后台管控架构的并行仿真任务分发与调度方法无效
申请号: | 200810143999.X | 申请日: | 2008-12-18 |
公开(公告)号: | CN101436959A | 公开(公告)日: | 2009-05-20 |
发明(设计)人: | 姚益平;曲庆军;刘步权;蒋志文;刘金鹏;张颖星 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/26;H04L12/28;G06F17/50 |
代理公司: | 国防科技大学专利服务中心 | 代理人: | 郭 敏 |
地址: | 410073湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于后台管控架构的并行仿真任务分发与调度方法,目的是解决现有并行仿真多样本运行效率低、浪费人力资源的问题。技术方案是首先构建多台计算机组成的并行仿真局域网环境,然后建立由管理器、后台管控器构成的基于后台管控架构的并行仿真任务分发与调度器,由调度器采用单节点分发调度策略或组分发调度策略完成仿真样本分发和调度并进行仿真结果数据的自动收集。本发明既解决了传统的并行仿真多样本运行需要用户手工操作完成、整个过程运行效率低的问题,同时也提高了仿真结果数据的收集效率,便于事后数据的分析评估。 | ||
搜索关键词: | 基于 后台 架构 并行 仿真 任务 分发 调度 方法 | ||
【主权项】:
1. 一种基于后台管控架构的并行仿真任务分发与调度方法,其特征在于包括以下步骤:第一步,构建由多台计算机组成的并行仿真局域网环境,每台计算机都是局域网的节点,各节点有着各自独立的存储系统,节点之间的通信采用消息传递的方式,节点依次编号为0,1,2,...,n,n+1为局域网中节点的总数;第二步,建立基于后台管控架构的并行仿真任务分发与调度器,并行仿真任务分发与调度器由管理器、后台管控器组成,管理器是一个仿真样本分发和调度软件,负责实现仿真样本的分发,并通过调度后台管控器来实现仿真样本的运行;后台管控器是一个响应仿真样本分发和调度的软件,负责对仿真样本进行接收与调度,具体步骤包括:2. 1 建立管理器:指定在任一编号的节点机器上建立并行仿真任务分发管理器,并行仿真任务分发管理器所在的节点简称为管理器节点,在管理器节点上安装仿真应用可执行程序,并行仿真任务分发管理器每隔0.8~2秒向局域网内的各个节点发送用户数据报协议UDP消息,以期与局域网内的后台管控器建立连接;2. 2 建立后台管控器:指定在除管理器编号的节点上依次建立并行仿真任务分发后台管控器,各后台管控器均与管理器建立可靠连接,并行仿真任务分发后台管控器所在的节点简称为后台管控器节点,在后台管控器节点上建立支持并行仿真应用运行和实体子模型交互的运行支撑环境—并行仿真服务器;2. 3 管理器和后台管控器之间建立连接消息通讯机制,步骤如下:2. 3.1 管理器以各后台管控器的节点编号为标识,向各后台管控器发送UDP消息;2. 3.2 各后台管控器从管理器接收到UDP消息后,即建立与管理器的可靠连接;当所有后台管控器完成建立与管理器的连接后,管理器即停止发送UDP消息;2. 3.3 管理器每隔2~4秒向后台管控器请求节点状态信息,后台管控器接收到管理器的请求消息后,实时收集本节点状态信息并传送给管理器;2. 3.4 管理器接收到各后台管控器的状态信息后,实时显示各后台管控器节点当前的性能状态参数;第三步,基于仿真任务复杂程度决定分发调度策略,仿真任务复杂程度由仿真样本运行过程中的实体数以及实体之间交互的数量决定,分发调度策略包括单节点分发调度策略和组分发调度策略;单节点分发调度策略是指在一个后台管控节点上运行一个仿真样本和一个并行仿真服务器;组分发策略是指几个后台管控节点构成一个组,该节点组共同运行一个仿真样本,其中一个后台管控节点运行并行仿真服务器,其它节点运行仿真样本可执行程序;选定单节点分发调度策略或组分发调度策略的规则是:当S×Ecpu×Es<=100时,选取单节点分发调度策略,否则选取组分发调度策略,S是仿真任务实体数,Ecpu为CPU平均利用率,Es为内存平均利用率;第四步,管理器根据单节点分发调度策略或组分发调度策略向后台管控器进行仿真样本分发:4. 1 当选定单节点分发策略时,包括以下步骤:4. 1.1 根据各节点当前的性能状况参数,基于负载平衡的原则向各后台管控节点分配仿真样本;4. 1.2 管理器记录样本部署信息,并生成仿真任务队列STQ,STQ以后台管控节点编号为关键字,包含各节点相应的后台管控节点子队列,若编号为0的节点上建立了管理器,则STQ={STQ1,STQ2,...,STQi,...,STQn},i=1,2,...,n,子队列STQi中每个元素是一条记录,每条记录包括节点编号、仿真样本名称、仿真样本运行次数、记录文件编号四个字段;其中节点编号标识仿真样本运行的节点i,仿真样本名称标识运行的样本名Namej,仿真样本运行次数标识仿真样本Namej在节点i上需运行的次数rnumj,记录文件编号表示样本运行结果存储的文件编号i_Namej_rnumj,j=1,2,...,N,节点i上共运行N个仿真样本,样本名为{Name1,Name2,...,Namej,...,NameN};4. 1.3 管理器查询仿真任务队列STQ,生成各节点的配置文件,并由管理器采取传输压缩数据包的方式将配置文件和仿真应用可执行程序部署到对应的后台管控节点,方法是:4. 1.3.1 管理器判断任务队列STQ是否为空,若不为空,取任务队列STQ中第一个节点子队列作为当前节点任务子队列STQi,置当前节点为节点i,执行步骤4.1.3.2;若为空,结束仿真任务节点分发;4. 1.3.2 管理器判断STQi是否为空,若不为空,执行步骤4.1.3.3;若STQi为空,判断当前STQi是否存在下一节点子队列,若存在,取当前STQi的下一节点子队列作为当前节点任务子队列STQi,转步骤4.1.3.2;若不存在,结束仿真任务节点分发;4. 1.3.3 根据STQi中的记录,生成节点i上的仿真样本Namej、运行次数rnumj、记录文件编号i_Namej_rnumj的配置文件,j=1,2,...,N;4. 1.3.4 管理器将仿真应用可执行程序、配置文件压缩成仿真应用文件包,并向节点i上的后台管控器传输一次仿真应用文件包;4. 1.3.5 节点i上后台管控器将接收到的仿真应用文件包解压至仿真应用文件夹,根据相应的命名规则,生成不同的样本文件运行文件夹,并将仿真应用文件夹中所有文件拷贝至所有的样本运行文件夹中,转步骤4.1.3.2;4. 2 当管理器采用组分发策略时,划分的各个后台管控节点组内存在一个主后台管控节点,主后台管控节点上的后台管控器称为主后台管控器,由它运行并行仿真服务器,组内其他后台管控器均为普通后台管控器,运行仿真样本可执行程序,组分发策略包括如下步骤:4. 2.1 根据确定的分组规模,设置各个节点所属于的节点组,为节点分组,形成节点组参数文件;4. 2.2 指定组内主管控节点来负责整个组的并行仿真样本运行,综合考虑各节点组的性能状况,基于负载平衡的原则在各后台管控节点组分配仿真样本;4. 2.3 管理器记录样本部署信息,并以主后台管控节点的编号Prmm为关键字生成任务主管控队列STCQ,STCQ={STCQ1,STCQ2,...,STCQm,...,STCQM},m=1,2,...,M,M<=n,M为最大分组数,STCQ包含主后台管控节点Prmm相应的主后台管控节点子队列STCQm,子队列STCQm包含节点组Prmm上将要运行的所有仿真样本的信息,STCQm中每个元素是一条记录,每条记录包括主管控节点编号、属于节点组的节点编号、仿真样本名称、仿真样本运行次数、记录文件编号五个字段;主管控节点编号标识仿真样本运行节点组内的主管控节点Prmm,Prmm也标识该节点组,节点编号标识共同运行仿真样本的组内的一个节点i,仿真样本名称标识运行的样本名为Namej,j=1,2,...,N,节点i上要运行N个仿真样本,样本名为{Name1,Name2,...,Namej,...,NameN},仿真样本运行次数标识仿真样本Namej子进程在组Prmm的节点i上需运行的次数rnumj,记录文件编号表示样本运行结果数据存储的文件编号为Prmi_Namej_rnumj;4. 2.4 管理器查询任务主管控队列STCQ,生成各节点组的配置文件,并采取传输压缩数据包的方式将配置文件和仿真应用可执行程序部署到各后台管控节点组:4. 2.4.1 管理器判断任务主管控队列STCQ是否为空,若不为空,取任务主管控队列STCQ中第一个节点组子队列作为当前节点组子队列STCQm,置当前节点组为节点组Prmm,执行步骤4.2.4.2;若为空,结束仿真任务节点组的分发;4. 2.4.2 管理器判断STCQm是否为空,若不为空,执行步骤4.2.4.3;若STCQm为空,判断当前STCQm是否存在下一节点组子队列,若存在,取当前STCQm的下一节点组子队列作为当前节点组任务子队列STCQm,转步骤4.2.4.2;若不存在,结束仿真任务节点组的分发;4. 2.4.3 根据STCQm中的记录,生成节点组Prmm上的仿真样本Namej、运行次数rnumj、记录文件编号Prmm_Namej_rnumj的配置文件;4. 2.4.4 管理器将仿真应用可执行程序、配置文件压缩成仿真应用文件包,并向节点组Prmm的各后台管控器仅传输一次仿真应用文件包;4. 2.4.5 节点组Prmm的各后台管控器将接收到的仿真应用文件包解压至仿真应用文件夹,根据相应的命名规则,生成不同的样本文件运行文件夹,并将仿真应用文件夹中所有文件拷贝至所有的样本运行文件夹中,转步骤4.2.4.2;第五步,根据仿真任务分发情况,由并行仿真任务分发与调度器采用单节点调度策略或组调度策略进行仿真样本的调度:5. 1 单节点调度策略,包括以下步骤:5. 1.1 管理器判断任务队列STQ是否为空,若不为空,取任务队列STQ中第一个节点子队列作为当前节点任务子队列STQi,置当前节点为节点i,执行步骤5.1.2;若为空,结束仿真任务调度运行;5. 1.2 管理器判断STQi是否为空,若STQi为空,删除STQi,转步骤5.1.1;若不为空,执行步骤5.1.3;5. 1.3 判断STQi上的第一个仿真样本的运行次数是否为0,若为0,管理器删除STQi中的第一个仿真样本的记录,转步骤5.1.2,若不为0,执行步骤5.1.4;5. 1.4 管理器在节点i上调度STQi中的第一个仿真样本运行1次,方法是管理器向节点i上的后台管控器发送仿真样本调度消息,后台管控器启动节点i上的并行仿真服务器以及仿真样本运行,同时向记录文件编号标识的文件记录仿真结果数据,转步骤5.1.5;5. 1.5 判断任务队列STQ是否存在未调度仿真样本运行的节点,若存在,管理器置第一个未调度节点为当前节点i,转步骤5.1.2;若任务队列中不存在未调度节点,管理器处于等待后台管控器信息报告状态,转步骤5.1.6;5. 1.6 后台管控器运行仿真样本开始后,仿真应用可执行程序将仿真结果数据记录到记录文件编号标识的文件中,并通过并行仿真服务器每隔一段时间T查询仿真运行状态,仿真样本运行结束时,后台管控器将仿真样本结束状态发送给管理器,管理器接收后台管理器仿真样本的本次运行完毕消息后,执行步骤5.1.7;5. 1.7 管理器修改当前节点i的任务子队列STQi中的当前运行样本的运行次数,运行次数减少1次,转步骤5.1.3;5. 2 采用组调度策略时,包括以下步骤:5. 2.1 管理器判断任务主管控队列STCQ是否为空,若不为空,取任务主管控队列STCQ中第一个节点组队列作为当前节点任务主管控子队列STCQm,置当前节点组为节点组Prmm,执行步骤5.2.2;若为空,结束仿真任务调度运行;5. 2.2 管理器判断当前节点组Prmm的子队列STCQm是否为空,若STCQm为空,则删除STCQm,转步骤5.2.1;若不为空,执行步骤5.2.3;5. 2.3 判断STCQm上的第一个仿真样本的运行次数,若为0,管理器删除STCQm中的第一个仿真样本的记录,转步骤5.2.2,若不为0,执行步骤5.2.4;5. 2.4 管理器在节点组Prmm上调度STCQm中的第一个仿真样本运行1次,方法是:管理器向组内各后台管控器发送仿真样本调度消息,主后台管控器启动节点上并行仿真服务器及仿真样本子进程运行,各普通后台管控器启动节点上仿真样本子进程运行,并同时向记录文件编号标识的文件记录仿真结果数据,转步骤5.2.5;5. 2.5 判断任务主管控队列STCQ是否存在未调度仿真样本运行的节点组,若存在,管理器置第一个未调度节点组为当前节点组Prmm,转步骤5.2.2;若任务队列中不存在未调度节点组,管理器处于等待主后台管控器信息报告状态,转步骤5.2.6;5. 2.6 当所有后台管控器运行仿真样本开始后,主后台管控节点上的仿真应用可执行程序对将仿真结果数据记录到记录文件编号标识的文件中,并通过并行仿真服务器每隔一段时间T查询仿真运行状态,仿真样本运行结束时,主后台管控器将仿真样本结束状态发送给管理器,管理器接收主后台管理器仿真样本的本次运行完毕消息后,执行步骤5.2.7;5. 2.7 管理器修改当前节点组Prmm的任务主管控子队列STCQm中的当前运行样本的运行次数,运行次数减少1次,转步骤5.2.3;第六步,由基于后台管控架构的并行仿真任务分发与调度器进行仿真结果数据的自动收集,方法是:6. 1 所有样本运行完毕后,管理器发送样本运行结束消息,后台管控节点或主管控节点接收到该消息后,关闭并行仿真服务器,查询各样本文件包中的数据文件即编号为i_Namej_rnumj或Prmm_Namej_rnumj的文件,将查找到的数据文件加入到数据文件包中压缩存储;6. 2 直至本节点上所有的数据文件都加入到数据文件包中,后台管控节点或主管控节点向管理器发送数据准备完毕消息,管理器接收到该消息后,解析出其中的压缩包信息,并初始化接收文件准备工作,然后向后台管控节点或主管控节点发送请求文件传输消息,后台管控节点接收请求文件传输消息后开始传输数据;6. 3 管理器启动多线程接收后台管控节点或主管控节点的相应数据,文件传输完毕后,各计算节点清除样本文件包以及数据记录文件,管理器收集到各后台管控节点或主管控节点上的所有数据文件后,仿真结果数据收集完成,本次仿真任务结束。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200810143999.X/,转载请声明来源钻瓜专利网。
- 上一篇:柔平两用数码喷绘机的媒介双轴输送装置
- 下一篇:一种不锈钢薄板研磨机