[发明专利]用于闭环控制系统的调度任务和管理计算资源分配的系统和方法有效
申请号: | 201780039025.4 | 申请日: | 2017-03-21 |
公开(公告)号: | CN109416647B | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 悉达多·森古普塔;苏迪尔·拉达克里什纳·沙提亚;尼尚特·库马尔·阿格拉沃尔 | 申请(专利权)人: | 塔塔咨询服务有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 王小衡;胡彬 |
地址: | 印度马哈拉*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 闭环 控制系统 调度 任务 管理 计算 资源 分配 系统 方法 | ||
1.一种用于在闭环控制系统中调度任务和管理计算资源分配的方法,其包括:
由控制器同时获得要在多个计算资源上并行执行的所述闭环控制系统的多个任务;
由所述控制器从持久性数据库中获得在多个先前周期中执行的针对多个任务中的每一个任务的历史运行时间统计,其中,所述历史运行时间统计包括所述多个先前周期中的(a)预期运行时间μ、和(b)实际运行时间的标准偏差σ;
基于(i)所述预期运行时间μ或(ii)预期运行时间μ和所述标准偏差σ,启发式地将所述多个任务分配给所述多个计算资源;
基于(i)所述标准偏差σ或(ii)所述预期运行时间μ和所述标准偏差σ,通过对分配给所述多个计算资源中的每一个计算资源的所述多个任务进行排列,生成所述多个任务的多个队列的计划以便执行;
基于在任务被分配到的计算资源完成了队列中先前任务的执行之后生成的计划,将所述多个队列中的所述多个任务发送到操作系统OS,以便在所述多个任务被分配到的计算资源上执行;
以可配置的预定义间隔周期性地监视来自多个计算资源的多个队列的多个任务的执行的相对进程;
确定跨任务被分配到的多个所分配的计算资源的所述多个队列中的多个任务的执行的相对进程中的一个或多个偏差;
使用(i)所述预期运行时间μ或(ii)所述预期运行时间μ和所述标准偏差σ,基于所述一个或多个偏差,通过基于第一队列和第二队列的进程而至少转移等待发送到所述操作系统以便在所述第一队列和所述第二队列之间执行的零个或多个任务的子集来反应性地和动态地平衡所述计算资源上的负载,并且在后续队列之间重复转移步骤,直到最后一对队列被平衡为止,并且对每个队列中的一个或多个任务进行重新排列;和
基于在当前执行中测量的实际运行时间来更新所述多个任务的运行时间统计,并且将所更新的运行时间统计存储在所述持久性数据库中。
2.根据权利要求1所述的方法,其中,基于所述预期运行时间μ或(ii)所述预期运行时间μ和所述标准偏差σ的函数,分配一个或多个任务以便在所述多个计算资源上执行。
3.根据权利要求1所述的方法,其中,通过基于(i)所述标准偏差σ或(ii)所述预期运行时间μ和所述标准偏差σ对分配给所述多个计算资源中的每一个计算资源的所述多个任务进行排列,生成用于执行所述多个任务的多个队列的计划。
4.根据权利要求1所述的方法,其中,基于所生成的计划,释放一个或多个任务以便在所分配的计算资源上执行。
5.根据权利要求1所述的方法,其中,以所述可配置的预定义间隔,监视来自所述多个计算资源的多个队列的多个任务的执行的相对进程并且确定所述任务的执行的相对进程的偏差。
6.根据权利要求1所述的方法,其中,至少转移零个或多个任务的子集的步骤包括:基于(i)正在一个或多个所分配的计算资源上执行的任务的剩余时间和(ii)等待被分派在一个或多个队列中的每一个队列中以便执行的任务的估计运行时间μ或估计运行时间μ和标准偏差σ,将要在所分配的计算资源上执行的零个或多个任务转移到另一个资源的队列以便执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于塔塔咨询服务有限公司,未经塔塔咨询服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780039025.4/1.html,转载请声明来源钻瓜专利网。