[发明专利]一种面向集合预报应用的两层动态调度方法无效
申请号: | 201110092776.7 | 申请日: | 2011-04-13 |
公开(公告)号: | CN102185761A | 公开(公告)日: | 2011-09-14 |
发明(设计)人: | 张卫民;刘海;刘灿灿;贾雄 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/08 |
代理公司: | 国防科技大学专利服务中心 43202 | 代理人: | 郭敏 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种面向集合预报应用的两层动态调度方法,目的是提出一种基于网格节点间动态选择和节点内部资源数目动态指定的两层调度方法。技术方案是先构建两层动态调度系统,并将该系统设置在服务端和各网格节点端;两层调度系统为当前集合预报的调度过程进行初始化;各地网格节点的模式预报服务向样本数据管理服务动态竞争还未被消费的初值样本数据文件;网格节点优化指定模式预报程序的资源数目及启动模式预报程序;服务端的样本数据管理服务停止本次集合预报调度过程,启动集合预报流程的后处理。本发明具有实时动态特性,采用本发明能提高具有大规模计算特征的集合预报的时效性,有效节省执行一次集合预报的计算成本。 | ||
搜索关键词: | 一种 面向 集合 预报 应用 动态 调度 方法 | ||
【主权项】:
1.一种面向集合预报应用的两层动态调度方法,其特征在于包括以下步骤:第一步,构建两层动态调度系统,该系统由服务端和节点端组成,服务端管理初始扰动所产生的初值样本数据并控制节点端各模式预报服务的执行,其上部署了四个Web服务和两个数据库:四个Web服务是指样本数据归档服务、样本数据管理服务、服务质量控制服务即QoS控制服务和预估服务;两个数据库分别是样本数据文件元数据库和模式预报程序执行经验数据库,样本数据文件元数据库存储初值样本数据元数据信息,模式预报程序执行经验数据库存储每次模式预报程序执行的输入参数、历史执行时间平均值以及输出文件的大小、并行度、加速比,所述输入参数指预报区域,预报时制;节点端由多个网格节点组成,每个网格节点部署有两个Web服务,包括模式预报服务和节点内部资源数目启发式指定服务,模式预报服务包装了本地集合预报流程的模式预报程序;两层动态调度系统在集合预报应用流程的初始扰动之后启动;服务端的样本数据归档服务接收初始扰动所产生的初值样本数据,对初值样本数据进行归档;样本数据管理服务通知节点端的各网格节点上的模式预报服务竞争获取本次集合预报样本数据;模式预报服务接收到样本数据管理服务发出的“竞争初值样本数据”通知后,向样本数据管理服务发送“获取初值样本数据”请求;样本数据管理服务通过调用QoS控制服务来验证所请求的模式预报服务所在网格节点是否满足最低QoS需求,QoS服务验证成功后,各模式预报服务以并发控制的方式读取、锁定并传输初值样本数据,模式预报服务获得初值样本数据后,即完成了两层动态调度系统对网格节点的选择,完成第一层调度:对网格节点的选择;模式预报服务启动本地节点内部资源数目启发式指定服务,服务端的预估服务指定执行本次模式预报服务的资源数目,然后模式预报服务启动模式预报程序,完成第二层调度:指定网格节点内的资源数目;本次集合预报的所有初值样本数据被调度到各模式预报服务执行完后,由服务端的样本数据管理服务触发集合预报应用流程的后处理;第二步,两层调度系统为当前集合预报的调度过程进行初始化,包括以下三个步骤:步骤2.1,集合预报流程完成初始扰动后,以本次集合预报所运行的集合预报流程实例ID为参数,发送“样本数据归档”请求给样本数据归档服务以启动两层调度系统;集合预报流程实例指集合预报流程的一次具体执行;集合预报流程实例ID是由本次集合预报应用流程实例随机产生,能够唯一标识本次集合预报流程实例的标识;步骤2.2,样本数据归档服务使用元数据方法对每对初值样本数据采用元数据记录的方式进行描述并将元数据记录归档到样本数据文件元数据库;每对初值样本数据的元数据记录包括:集合预报流程实例ID,初值样本数据编号,源网格节点即初值样本初始存储的网格节点存储URL,样本状态,目标存储网格节点URL,模式预报程序启动时间,其中URL是统一资源定位符的缩写;初值样本数据编号是由样本数据归档服务随机产生,用来唯一标识本对初值样本数据文件的编号。本地存储URL表示本对初值样本数据的本地存储位置;样本状态包括0,1,2,3,状态0为初值样本数据初始状态,表示本对初值样本数据还没有被任何模式预报服务占有;状态1为初值样本数据锁定状态,表示本对初值样本数据已经被分布在某个网格节点上的模式预报服务占有但未传输到网格节点上;状态2为初值样本数据已被“消费”状态,表示本对初值样本数据已经被某个模式预报服务占有且成功传输到网格节点上;状态3表示该初值样本数据已经被模式预报服务的模式预报程序成功执行;目标存储URL表示本对初值样本数据被传输到的网格节点的地址;模式预报程序启动时间表示模式预报开始以该初值样本数据作为输入参数启动模式预报应用程序的时间;步骤2.3,样本数据管理服务基于Web服务的消息订阅/发布机制通知所有网格节点的模式预报服务,告知各模式预报服务现在服务端已经有初值样本数据,可以竞争获取以进行模式预报;第三步,各地网格节点的模式预报服务根据自己的实际计算能力向样本数据管理服务动态竞争还未被消费的初值样本数据文件,包括以下步骤:步骤3.1,模式预报服务并发地请求初值样本数据:模式预报服务首先使用网格节点的网格中间件软件监控服务MDS获得自身空闲资源数目,然后根据自身实际计算能力验证是否满足模式预报的最低QoS约束需求,如果满足,模式预报服务主动向服务端的样本数据管理服务发送“申请初值样本数据”请求消息,该请求消息内容包括:本地网格节点URL,模式预报服务URI,URI是统一资源标识符的缩写;如果不满足,则转步骤3.3;步骤3.2,服务端样本数据管理服务调用QoS控制服务对模式预报服务所在网格节点的QoS约束性条件进行验证:QoS控制服务调用部署在网格节点上的网格中间件软件监控服务MDS,判断申请的模式预报服务所在网格节点是否满足本次集合预报所要求的QoS最低约束要求,如果发现网格节点不满足QoS最低约束要求,则发送“拒绝”消息到所请求的模式预报服务,模式预报服务接收到“拒绝”消息后,暂停对本次集合预报流程实例的模式预报服务,转步骤3.3;如果服务端QoS控制服务发现该模式预报服务所在网格节点满足QoS最低约束要求,则为该模式预报服务竞争当前集合预报流程实例ID下的一对初值样本数据文件,方法是由样本数据管理服务向样本数据文件元数据库搜索元数据记录项,如果发现没有状态为0的元数据记录,则向请求的模式预报服务发送“无可获取的初值样本数据文件”消息,模式预报服务接收到“无可获取的初值样本数据文件”消息后,停止申请获取初值样本数据,转步骤4.6;如果有状态为0的元数据记录,则进入步骤3.4;步骤3.3,模式预报服务定时循环地不断监控本地资源空闲状况,以验证本地网格节点是否满足QoS最低约束要求,如果满足,转步骤3.1,否则继续循环步骤3.3;步骤3.4,请求的模式预报服务对获取的初值样本数据加锁保护,方法是样本数据管理服务执行一事务访问操作,为请求的模式预报服务占有该初值样本数据所对应的元数据记录,以防止其它的模式预报服务申请该初值样本数据,然后修改该初值样本数据所对应状态为1;步骤3.5,样本数据管理服务向申请的模式预报服务启动初值样本数据的端对端传输,方法是:样本数据管理服务调用网格中间件组件可靠文件传输服务RFT,由RFT启动初值样本数据所在的服务节点到模式预报所在网格节点之间的可靠文件传输,如果初值样本数据文件传输失败,则进行有限次地重启传输,如仍然传输失败,则解锁该初值样本数据文件访问权限,样本数据管理服务修改初值样本数据状态为0,允许部署在其他网格节点上的模式预报服务申请该对初值样本数据;初值样本数据文件如成功传输,模式预报服务向样本数据管理服务发送初值样本数据“传输完成”消息,样本数据管理端修改该初值样本数据所对应状态为2;至此,完成了初值样本数据对网格节点的选择问题,完成第一层调度;第四步,网格节点优化指定模式预报程序的资源数目并启动模式预报程序,步骤如下:步骤4.1,节点内部资源数目启发式指定服务启动预估服务评估,为当前模式预报服务预估其是否还有可能获得下一对初值样本数据文件,具体步骤为:步骤4.1.1,节点内部资源数目启发式指定服务预估自身模式预报程序完成时间并发送“预估请求”消息到预估服务,步骤如下:步骤4.1.1.1,节点内部资源数目启发式指定服务根据当前获得的初值样本数据预报参数信息----预报区域和预报时制、当前网格节点空闲可用的CPU资源信息和内存信息,基于模式预报程序执行经验数据库来预估当前模式预报服务所执行的本次模式预报程序完成时间;步骤4.1.1.2,模式预报服务将预估的当前模式预报服务所执行的本次模式预报程序完成时间发布到服务端的预估服务;步骤4.1.1.3,模式预报服务发送是否可能获得下一对有效初值样本数据的“预估请求”消息到预估服务;步骤4.1.2,预估服务广播更新预估信息,获得其它网格节点的模式预报服务预计完成当前模式预报程序的时间信息;预估服务在收到“预估请求”消息以后,动态地请求其它正在执行模式预报程序的模式预报服务发布“预计完成时间”信息到预估服务;每个模式预报服务收到广播“预计完成时间”消息后,根据该模式预报所执行的模式程序实时执行情况和自身计算能力进行如步骤4.1.1所述的预估,所有模式预报服务预估完后,各自将预估后将预计完成时间的结果发送到预估服务,;步骤4.1.3,预估服务执行关于请求的模式预报获得下一对初值样本数据可能性的预估过程,方法是:步骤4.1.3.1,将所有模式预报服务预计完成时间按照由早到晚顺序排序,从而得出发送“预估请求”消息的模式预报服务的优先次序k,k为正整数,表示发送“预估请求”消息的模式预报服务处在所有模式预报服务中关于预计完成各自当前模式预报程序的时间按照由早到晚排列的位置顺序;步骤4.1.3.2,预估服务调用样本数据管理服务获取有效的初值样本数据,样本数据管理服务搜索初值样本数据的所有元数据项记录,获得目前初值样本数据文件状态为0的所有元数据记录数目,记为n,n为正整数;步骤4.1.3.3,如果满足条件k≤n,则预估结果返回True,否则返回False;随后将预估结果以消息形式发送到发送“预估请求”消息的模式预报服务,模式预报服务将预估结果转交给本地节点内部资源数目启发式指定服务。步骤4.2,网格节点内部资源数目启发式指定服务根据预估服务发送的预估结果选择指定算法指定CPU资源数目,如果返回的预估结果为True,则转步骤4.2.1;如果返回的预估结果为False,则转步骤4.2.2:步骤4.2.1,本地网格节点内部资源数目启发式指定服务执行时间优先的CPU资源数目指定过程:指定尽可能大的CPU资源数目,假设当前空闲CPU资源数目为M,M为正整数,则按照该指定过程得到的CPU资源数目为cpu_num=2m,其中2m≤M,2m+1>M,m为正整数;步骤4.2.2,本地节点内部资源数目启发式指定服务执行时间-效率平衡的CPU资源数目指定过程,其步骤为:步骤4.2.2.1,采用基于历史的方法预估本次集合预报所有初值样本数据被执行的最晚完成时间tl,步骤如下:步骤4.2.2.1.1,对每一模式预报服务i,根据步骤4.1.3.1中所排的次序,得到模式预报服务所能获得的执行初值样本数据份数numi;步骤4.2.2.1.2,对每一模式预报服务i,根据该模式预报所在网格节点的实际最大计算能力cpu_num=2m、预报区域大小、预报时制,基于模式预报程序执行经验数据库,查询出该模式预报服务“消费”每份初值样本数据的预计时间temp,从而得到模式预报服务i的最快预计完成时间Ti=temp×numi;步骤4.2.2.1.3,得到各模式预报服务最快预计完成时间的最大值tl,
其中S表示所有模式预报服务集合。步骤4.2.2.2,根据当前时间te,采用单个模式预报程序输出文件到后处理网格节点的文件传输时间预估方法得到本次模式预报程序可允许的运行时间tallow=tl-ta-ttm,其中ttm表示当前模式预报程序输出文件由当前网格节点传输到后处理所在网格节点的预估时间,单个模式预报程序输出文件到后处理网格节点的文件传输时间预估方法步骤是:步骤4.2.2.2.1,以初值样本数据的预报区域和预报时制作为输入,从模式预报程序执行经验数据库中查找到本次模式预报预计输出文件大小S;步骤4.2.2.2.2,调用后处理所在网格节点的监控服务MDS得到实时的由模式预报服务所在网格节点到后处理所在网格节点的网络实时传输速度V;步骤4.2.2.2.3,通过计算ttm=S/V来预估模式预报程序本次预计输出文件到后处理所在网格节点的传输时间;步骤4.2.2.3,以当前初值样本数据的区域大小和预报时制为参数查询模式预报程序执行经验数据库,得到本次模式预报程序随CPU数目变化的记录列表pmList,pmList的每个记录包含以CPU数目为参数的当前模式预报程序执行的并行度、加速比和预计运行时间;步骤4.2.2.4,以pmList和可允许的时间tallow作为参数,求解出成本优化CPU数目cpu_num=2m,满足条件:cpu_num≤M,
AS={.j|pmList[j].time≤tallow,j为2的整数次幂},pmList[i].pr为列表pmList中记录的第i项记录的并行度字段,表示CPU数目为i时的并行度;步骤4.3,模式预报服务启动安装在本地的模式预报程序,并发送“模式预报程序启动”消息给样本数据管理服务,样本数据管理服务更新该初值样本数据对应元数据中的启动时间字段为当前时间;步骤4.4,服务端QoS控制服务监听每个模式预报服务执行本次模式预报程序的完成事件并为刚启动模式预报程序的模式预报服务设置计时器,步骤如下:步骤4.4.1,模式预报服务启动模式预报程序时,同时发送“模式预报程序启动”消息给服务端的QoS控制服务,QoS控制服务为该模式预报服务启动本次计时器;步骤4.4.2,QoS控制服务监控已经启动模式预报程序的模式预报服务,如果在用户预先设置的最大容忍时间内没有接受到某个模式预报服务的模式预报程序执行完成事件,则取消该模式预报服务,并将该模式预报服务所执行的当前初值样本数据文件所对应的元数据状态置0,从而对该初值样本数据文件进行了解锁,发送广播消息通知其它有计算能力的模式预报服务;否则QoS控制服务继续处于监听状态;如果在未超时的时间内监听到某一个模式预报服务的“模式预报程序执行完成”事件,QoS控制服务调用样本数据管理服务更新发送“模式预报程序执行完成”事件,将该模式预报服务所执行本次模式预报程序的初值样本数据文件相对应地元数据状态置为3,同时发送“有初值样本数据被模式预报服务的模式预报程序成功执行”消息给样本数据管理服务,服务端样本数据管理服务以当前集合预报流程实例ID作为参数,查询样本数据文件元数据库,如果所有的样本数据文件元数据状态为3,转第5步,否则转步骤4.5。步骤4.5,模式预报服务在产生“模式预报程序执行完成”事件后,完成对当前初值样本数据文件为输入的模式预报程序的执行,至此完成了一对初值样本数据文件的完整两层调度过程,转步骤3.1;步骤4.6,停止本模式预报服务,并发送“空闲”消息到样本数据管理服务;第5步,服务端的样本数据管理服务停止本次集合预报调度过程,调用本次集合预报流程的后处理外部调用接口以启动集合预报流程的后处理。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110092776.7/,转载请声明来源钻瓜专利网。
- 上一篇:S1P受体调节剂以及它们的用途
- 下一篇:治疗计划逆向规划方法和治疗计划系统