CN117056061B - 一种基于容器分发机制的跨超算中心任务调度方法和系统 - Google Patents
一种基于容器分发机制的跨超算中心任务调度方法和系统 Download PDFInfo
- Publication number
- CN117056061B CN117056061B CN202311324053.4A CN202311324053A CN117056061B CN 117056061 B CN117056061 B CN 117056061B CN 202311324053 A CN202311324053 A CN 202311324053A CN 117056061 B CN117056061 B CN 117056061B
- Authority
- CN
- China
- Prior art keywords
- application program
- scheduling
- mirror image
- queue
- supercomputer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000009826 distribution Methods 0.000 title claims abstract description 41
- 230000007246 mechanism Effects 0.000 title claims abstract description 31
- 238000004364 calculation method Methods 0.000 claims abstract description 38
- 238000012545 processing Methods 0.000 claims abstract description 21
- 239000002131 composite material Substances 0.000 claims description 16
- 238000004806 packaging method and process Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 14
- 230000009191 jumping Effects 0.000 claims description 13
- 230000008878 coupling Effects 0.000 claims description 12
- 238000010168 coupling process Methods 0.000 claims description 12
- 238000005859 coupling reaction Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 5
- 238000004590 computer program Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000002474 experimental method Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000005012 migration Effects 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000012856 packing Methods 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于容器分发机制的跨超算中心任务调度方法和系统,属于超算技术领域。现有技术中的跨超算任务调度,需要针对大批量的输入数据,进行频繁地传输,容易产生遗漏和出错,会使得不同超算中心计算结果不一致,影响跨超算中心任务调度的成功率。本发明的一种基于容器分发机制的跨超算中心任务调度方法,通过对用户作业命令进行处理,得到调度安排命令;并根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像,完成跨超算中心任务调度,能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率。
Description
技术领域
本发明涉及一种基于容器分发机制的跨超算中心任务调度方法和系统,属于超算技术领域。
背景技术
随着超算任务作业规模的不断扩大,如何形成统一的任务调度,协同多个超算中心高效地任务调度,实现多超算中心间的作业迁移容错,解决负载均衡问题,就成为迫切需要解决的问题。
中国专利(公布号:CN110457131A)公开了一种电力系统超算平台任务调度方法及系统,其包括:节点调整步骤:预测未来集群资源使用率,若偏低,则减少开启节点数量,若偏高,则增加开启节点数量;资源配置步骤:预测未来集群资源使用率,若偏低,则在任务需求允许范围内,增加容器的资源配置,若偏高,则在任务需求允许范围内,减少容器的资源配置;容器调度步骤:部署调度队列中的容器,实现不同资源均衡负载或实现节点负载均衡;以及容器迁移步骤:预测未来所有节点资源使用情况以识别过载节点和轻载节点,将过载节点中部分容器迁移出,将轻载节点中全部容器迁移出以关闭节点。
上述方案,通过增减节点数据,实现超算平台任务调度,适用在同一超算中心内部实施,但如果要做跨超算的任务调度,由于要面对不同超算中心之间的环境差异和软硬件差异,因此不仅需要提前为所有超算中心安装适应软硬件条件的应用软件,还需要针对大批量的输入数据,进行频繁地传输,因此非常容易产生遗漏和出错,从而降低了跨超算中心任务调度的成功率。
特别的是,工业仿真程序的输入数据往往较大,且格式多样,这进一步加剧了数据遗漏和出错的概率,进而会使得不同超算中心计算结果不一致,影响跨超算中心任务调度的成功率,不利于跨超算调度方案的推广使用。
发明内容
针对上述问题或上述问题之一,本发明的目的一在于提供一种通过对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;并根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像;通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度,能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而可以有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率,方案科学、合理,切实可行的基于容器分发机制的跨超算中心任务调度方法。
针对上述问题或上述问题之一,本发明的目的二在于提供一种通过将输入数据打包进镜像,可以将整个应用程序及其所需的数据打包在一起,形成容器化的应用程序及其数据,从而简化了部署过程;同时容器化的应用程序及其数据可以轻松地在不同的环境中部署;并可以被隔离到单独的容器中,从而确保数据的安全性和完整性,同时可轻松地备份和恢复,从而快速地进行容器的重建和恢复的基于容器分发机制的跨超算中心任务调度方法和系统。
针对上述问题或上述问题之一,本发明的目的三在于提供一种通过设置集中调度服务模块、容器分发判断模块、容器镜像耦合模块,实现跨超算中心任务调度,能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而可以有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率,方案科学、合理,切实可行的基于容器分发机制的跨超算中心任务调度方法和系统。
为实现上述目的之一,本发明的第一种技术方案为:
一种基于容器分发机制的跨超算中心任务调度方法,包括以下步骤:
第一步,获取用户提交的用户作业命令;
第二步,对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
第三步,根据调度安排命令,判断是否存在所需的应用程序复合镜像;
当不存在应用程序复合镜像时,执行第四步;
当存在应用程序复合镜像时,执行第五步;
第四步,根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像;
第五步,通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度。
本发明经过不断探索以及试验,通过对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;并根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像;通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度,因而本发明能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而可以有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率,方案科学、合理,切实可行。
进一步,本发明通过将输入数据打包进镜像,可以将整个应用程序及其所需的数据打包在一起,形成容器化的应用程序及其数据,从而简化了部署过程。同时容器化的应用程序及其数据可以轻松地在不同的环境中部署。因而本发明容器化的应用程序及其数据可以被隔离到单独的容器中,从而确保数据的安全性和完整性。如果容器发生故障,数据也不会受到影响。进一步容器化的应用程序及其数据可以轻松地备份和恢复,从而快速地进行容器的重建和恢复。如果出现问题,只需使用备份数据启动一个新的容器即可。
再进一步,本发明可以形成统一的任务调度策略,可以协同多个超算中心高效地进行任务调度,实现多超算中心间的作业迁移容错,有效解决负载均衡问题。
作为优选技术措施:
所述第一步中,用户提交的用户作业命令至少包括应用程序镜像名字、所需要的资源信息和用户所选择的调度策略信息。
作为优选技术措施:
所述第二步中,得到跨超算中心队列的调度安排命令的方法如下:
S21,获取用户提交的应用程序镜像名字、所需要的资源信息和用户所选择的调度策略信息;
S22,根据实时超算中心队列的资源和负载信息,并利用应用程序镜像名字,得到调度的超算地址、开放源码容器平台镜像名称;
根据用户提交的所需要的资源信息,得到应用程序所需要的节点数;
根据用户所选择的调度策略信息,确定任务被调度的超算中心队列以及队列所使用的调度器;
S23,结合开放源码容器平台镜像名称,需要的节点数和队列所使用的调度器,生成用于提交到超算内部调度器的作业提交命令;
S24,根据调度的超算地址、开放源码容器平台镜像的名称、作业提交命令,得到调度安排命令。
作为优选技术措施:
所述S21中,调度策略信息包括效率优先调度策略、价格优先调度策略、用户指定调度策略和多因子权重综合调度策略;
效率优先调度策略包括以下内容:
步骤2111.加载所有超算中心队列的信息;
步骤2112.根据超算中心队列的信息,得到满足调度安排命令中的节点数的超算中心队列信息;
步骤2113.根据超算中心队列信息,挑选出排队任务数量最少的超算中心队列;
当排队任务数最少的超算中心队列只有一个时,直接选择所述超算中心队列,并跳转到步骤2114;
当排队任务数最少的超算中心队列有多个时,选择队列总节点数量最多的超算中心队列,并跳转到步骤2114;
步骤2114.调度结束;
价格优先调度策略包括以下内容:
步骤2121.加载所有超算中心队列的信息;
步骤2122.根据超算中心队列的信息,得到满足调度安排命令中的节点数的超算中心队列信息;
步骤2123.根据超算中心队列信息,挑选出价最便宜的超算中心队列;
当价格最便宜的超算中心队列只有一个时,直接选择所述超算中心队列,跳转到步骤2124;
当价格最便宜的超算有多个,选择排队任务数最少且总节点数最多的超算中心队列,并跳转到步骤2124;
步骤2124.调度结束;
用户指定调度策略包括以下内容:
步骤2131.加载用户指定的超算中心队列;
步骤2132.判断用户指定的超算中心队列中的节点数是否大于调度安排命令中的节点数,
当大于调度安排命令中的节点数时,跳转到步骤2133;
当不大于调度安排命令中的节点数时,本次调度失败,调度结束;
步骤2133.直接使用所述用户指定的超算中心队列,调度结束;
多因子权重调度策略包括以下内容:
步骤2141.加载所有超算中心队列的信息;
步骤2142.根据超算中心队列的信息,选出满足调度安排命令中的节点数的若干超算中心队列;
步骤2143.建立多因子权重计算模型,对若干超算中心队列进行计算,选出得分最高的超算中心队列,并结束调度。
作为优选技术措施:
建立多因子权重计算模型的方法如下:
根据超算中心队列的信息,建立多因子指标体系;
多因子指标体系分为正向指标体系、负向指标体系;
根据正向指标体系、负向指标体系,设置多因子权重计算公式,实现多因子权重计算模型的建立。
作为优选技术措施:
正向指标体系至少包括队列的总节点数,其利用最小最大值规范化处理公式进行处理;
负向指标体系至少包括排队中的任务数、价格和队列中运行的任务数,其通过数据列的极小值除以原始数据得到;
多因子权重计算公式用于计算某超算中心队列的得分,其表达式如下:
S=A*R+B*Y+C*Z+D*H;
其中,S为某超算中心队列的得分,R为排队中的任务数,Y为队列的总节点数,Z为价格,H为队列中运行的任务数;A为排队中的任务数的权重值,B为总节点数的权重值,C为价格的权重值,D为任务数的权重值;A、B、C、D的取值范围是1-100,其根据业务需求设定。
作为优选技术措施:
所述第三步中,判断是否存在所需的应用程序复合镜像的方法如下:
根据调度安排命令,获取用户提交的应用程序镜像名字;
对应用程序镜像名字进行分析,得到应用程序镜像名字的匹配词;
根据匹配词,搜索相应的应用程序复合镜像;
当搜索到相应的应用程序复合镜像时,则表示存在所需的应用程序复合镜像;
当搜索不到相应的应用程序复合镜像时,则表示不存在所需的应用程序复合镜像。
作为优选技术措施:
所述第四步中,得到应用程序复合镜像的方法如下:
S41,在容器平台文件中定义容器镜像的镜像指令,所述镜像指令为从本地文件系统复制文件或/和目录到容器镜像中的指令;
S42,根据镜像指令,获取本地文件或/和目录;
S43,在容器平台文件中使用辨识文件类型files指令将本地文件或/和目录复制到容器镜像中,进行应用程序安装以及数据拷贝;
S44,应用程序安装以及数据拷贝完成后,把应用程序和输入数据打包到镜像中,得到应用程序复合镜像;
所述输入数据为程序运行所需要的各种类型的数据,其至少包括启动参数、三维模型、网格数据和矩阵参数;
S45,将应用程序复合镜像移植到开放源码容器平台上。
为实现上述目的之一,本发明的第二种技术方案为:
一种基于容器分发机制的跨超算中心任务调度方法,包括以下内容:
获取用户提交的用户作业命令;
建立集中调度服务模型,对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
根据调度安排命令,判断是否存在所需的应用程序复合镜像;
当不存在应用程序复合镜像时,根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像;再由应用程序复合镜像执行调度安排命令,得到应用程序的生成结果;
当存在应用程序复合镜像时,直接应用程序复合镜像执行调度安排命令,得到应用程序的生成结果;
等程序执行完成,把应用程序的生成结果推送到集中调度服务模型中,实现基于容器分发机制的跨超算中心任务调度。
本发明经过不断探索以及试验,通过将输入数据打包进镜像,可以将整个应用程序及其所需的数据打包在一起,形成容器化的应用程序及其数据,从而简化了部署过程。同时容器化的应用程序及其数据可以轻松地在不同的环境中部署。因而本发明容器化的应用程序及其数据可以被隔离到单独的容器中,从而确保数据的安全性和完整性。如果容器发生故障,数据也不会受到影响。进一步容器化的应用程序及其数据可以轻松地备份和恢复,从而快速地进行容器的重建和恢复。如果出现问题,只需使用备份数据启动一个新的容器即可。
因而本发明能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而可以有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率,方案科学、合理,切实可行。
再进一步,本发明容器化的应用程序及其数据可以根据需要进行调整和修改,对镜像的组成和打包规范应用容器引擎进行修改,重新打包出一个新镜像,从而轻松地进行修改和升级。
为实现上述目的之一,本发明的第三种技术方案为:
一种基于容器分发机制的跨超算中心任务调度系统,应用上述的一种基于容器分发机制的跨超算中心任务调度方法,其包括集中调度服务模块、容器分发判断模块、容器镜像耦合模块和超算实时信息上报模块;
集中调度服务模块,用于对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
容器分发判断模块,用于判断是否存在所需的应用程序复合镜像;
容器镜像耦合模块,用于将所需的应用程序和输入数据打包,得到应用程序复合镜像;
超算实时信息上报模块,用于每隔N分钟上报超算中心队列的实时信息;
通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度。
本发明经过不断探索以及试验,通过设置集中调度服务模块、容器分发判断模块、容器镜像耦合模块,实现跨超算中心任务调度,能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而可以有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率,方案科学、合理,切实可行。
与现有技术方案相比,本发明具有以下有益效果:
本发明经过不断探索以及试验,通过对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;并根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像;通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度,因而本发明能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而可以有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率,方案科学、合理,切实可行。
进一步,本发明通过将输入数据打包进镜像,可以将整个应用程序及其所需的数据打包在一起,形成容器化的应用程序及其数据,从而简化了部署过程。同时容器化的应用程序及其数据可以轻松地在不同的环境中部署。因而本发明容器化的应用程序及其数据可以被隔离到单独的容器中,从而确保数据的安全性和完整性。如果容器发生故障,数据也不会受到影响。进一步容器化的应用程序及其数据可以轻松地备份和恢复,从而快速地进行容器的重建和恢复。如果出现问题,只需使用备份数据启动一个新的容器即可。
再进一步,本发明容器化的应用程序及其数据可以根据需要进行调整和修改,对镜像的组成和打包规范应用容器引擎进行修改,重新打包出一个新镜像,从而轻松地进行修改和升级。
更进一步,本发明经过不断探索以及试验,通过设置集中调度服务模块、容器分发判断模块、容器镜像耦合模块,实现跨超算中心任务调度,能够有效避免输入数据在不同超算中心进行传输时,出现遗漏和出错的情况发生,从而可以有效确保在不同超算中心的计算结果具有一致性,有效提高了跨超算中心任务调度的成功率,方案科学、合理,切实可行。
附图说明
图1为本发明跨超算中心任务调度方法的第一种流程示意图;
图2为本发明跨超算中心任务调度方法的第二种流程示意图;
图3为本发明应用程序和输入数据同时打包的一种流程示意图;
图4为本发明调度策略选择流程的一种示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本发明。
如图1所示,本发明跨超算中心任务调度方法的第一种具体实施例:
一种基于容器分发机制的跨超算中心任务调度方法,包括以下步骤:
第一步,获取用户提交的用户作业命令;
第二步,利用提前建立的集中调度服务模型,对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
第三步,根据调度安排命令,通过提前建立的容器分发判断模型,判断是否存在所需的应用程序复合镜像;
当不存在应用程序复合镜像时,执行第四步;
当存在应用程序复合镜像时,执行第五步;
第四步,根据调度安排命令,通过提前建立的容器镜像耦合模型,将所需的应用程序和输入数据打包,得到应用程序复合镜像;
第五步,通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度。
如图2所示,本发明跨超算中心任务调度方法的第二种具体实施例:
一种基于容器分发机制的跨超算中心任务调度方法,包括以下步骤:
第一步,获取用户提交的用户作业命令;
第二步,利用提前建立的集中调度服务模型,对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
第三步,根据调度安排命令,利用提前建立的代理服务模型,得到所需的应用程序镜像信息;
第四步,根据应用程序镜像信息,通过提前建立的容器镜像耦合模型,将对应的应用程序和输入数据打包,得到应用程序复合镜像;
第五步,应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度。
本发明跨超算中心任务调度方法的第三种具体实施例:
一种基于容器分发机制的跨超算中心任务调度方法,包括以下步骤:
第一步:获取用户提交的用户作业命令;
第二步,利用提前建立的集中调度服务模型,对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
第三步,根据调度安排命令,利用提前建立的代理服务模型,从镜像中心把对应的应用程序镜像下载到超算集群中;
应用程序镜像包括应用程序和输入数据,其通过提前建立的容器镜像耦合模型打包得到;
第四步,等应用程序的镜像下载完成,执行调度安排命令,得到应用程序的生成结果;
第五步,等程序执行完成,把应用程序的生成结果推送到集中调度服务模型,以让用户从集中调度服务模型中进行下载,实现基于容器分发机制的跨超算中心任务调度。
如图3所示,本发明跨超算中心任务调度方法的最佳实施例:
一种基于容器分发机制的跨超算调度方法,用于解决跨超算中心队列的任务调度存在的问题,以及保障任务的容错性和兼容性,其包括如下步骤:
第一步:发布高性能计算(HPC)应用程序
将高性能计算(HPC)应用程序和输入数据同时打包进高性能应用程序镜像,记录下镜像的名字和版本,然后发布到镜像中心,以确保在超算中,并行计算程序在运行时的依赖环境和输入数据,具有一致性。所述输入数据为程序运行所需要的各种类型的数据,包括启动参数、三维模型、网格数据、矩阵参数等。
将输入数据和应用程序同时打包进容器的过程如下:
步骤1,在容器平台文件中定义容器镜像的建立过程,其中包括从本地文件系统复制文件或目录到容器镜像中的指令,可以在容器平台文件中使用辨识文件类型files指令将本地目录的内容复制到容器镜像中,进行应用程序安装,数据拷贝。
步骤2,把应用程序和输入数据打包到镜像中,制造容器平台镜像,从而得到容器化的应用程序及其数据。
步骤3,从本地仓库转成开放源码容器平台(Singularity)镜像。
第二步:集中调度服务接收用户提交的用户作业命令,作业命令包括应用程序镜像名字和所需要的超算硬件资源信息,超算硬件信息至少包括需要的处理器性能数据、内存信息。集中调度服务根据实时收集到的超算中心队列的资源和负载信息,作出一个任务调度安排命令。任务调度命令包括三个部分,第一个部分是调度的超算地址,第二个是这个开放源码容器平台(Singularity)镜像的名称,第三个部分是提交到超算内部调度器的作业提交命令。
如图4所示,产生调度安排命令的过程包括以下内容:
(1)输入执行高性能计算(HPC)应用程序所需要的节点数(用户指定运行程序需要的节点数)和用户所选择的调度策略,目前有四种策略类型可以供用户选择,分别是效率优先策略、价格优先策略、用户指定策略、多因子权重综合调度策略。(2)根据用户选择的调度策略,确定任务被调度的超算中心队列。(3)结合高性能计算(HPC)应用程序,需要的节点数和该队列所使用的调度器,生成该队列的作业提交命令。
效率优先调度策略包括以下内容:
1.加载所有超算中心队列的信息。
2.选出超算中心队列中所有资源满足调度命令请求的节点数的超算中心队列,即超算中心队列所拥有的节点数大于用户请求中的需求的节点数,如果没有,则本次调度失败,并跳转到5,调度结束。
3.从中挑选出排队任务数量最少的超算中心队列,当排队任务数最少的超算只有一个时,直接选择所述超算中心队列的队列,跳转到5,调度结束。
4.当排队任务数最少的超算中心队列有多个时,从队列总节点数量最多的超算中选择一个,跳转到5,调度结束。
5.调度结束。
价格优先调度策略包括以下内容:
1.加载所有超算中心队列的信息。
2.选出超算中心队列中所有资源满足调度命令请求的节点数的超算中心队列,如果没有,则本次调度失败,并跳转到5,调度结束。
3.每一个超算中心队列都会有一个报价,一般是x元/核,从中挑选出排队价格最便宜的超算中心队列,当价格最便宜的超算中心队列只有一个时,直接选择所述超算中心队列,跳转到5,调度结束。
4.当价格最便宜的超算有多个时,从排队任务数最少且总节点数最多的超算中心队列中选择一个,跳转到5,调度结束。
5.调度结束。
用户指定调度策略包括以下内容:
1.加载所有超算中心队列的信息。
2.判断用户指定的超算中心队列中资源是否满足调度命令请求的节点数的超算中心队列,如果没有,则本次调度失败,调度结束。
3.如果有,则直接使用该队列,调度结束。
多因子权重调度策略包括以下内容:
1.加载所有超算中心队列的信息。
2.选出超算中心队列中所有资源满足调度命令请求的节点数的超算中心队列,如果没有,则本次调度失败,并跳转到5,调度结束。
3.从符合条件的队列中,根据多因子权重公式选出得分最高的队列,跳转到4,调度结束。
多因子权重公式的计算公式如下:
S=A*(排队中的任务数)+B*(队列的总节点数)+C*(价格)+D*(队列中的运行的任务数);其中,S为某超算中心队列的得分,A、B、C、D的取值范围是1-100,其根据具体的业务需求设定,比如希望价格因素提高,就可以提高相应的权重,一般辅助经验和客观需求进行调整,以下给出一个示例:
A=50,B=25,C=10,D=50。
对正向指标主要采用最小-最大规范化方法进行处理,对负向指标采用非线性规范化方法进行处理。
1)队列的总节点数属于正向指标,利用最小最大值规范化处理公式进行处理,其计算公式如下:
Y1=(X1-min)/(max-min)
其中,Y1为通过规范化处理公式处理后的节点数,X1为队列中的实际节点数,min是所有队列中最小的节点数,max是所有队列中最大的节点数。
2)排队中的任务数、价格、队列中的运行的任务数属于负向指标,其通过该数据列的极小值除以原始数据得到,其计算公式如下:
Y2=Xmin/X2;
其中,Y2为排队中的任务数列或价格数据列或队列中的运行的任务数列,Xmin为排队中的任务数列或价格数据列或队列中的运行的任务数列的极小值,X2为排队中的任务数列或价格数据列或队列中的运行的任务数列的原始数据。
第三步,集中调度服务把任务的调度安排命令发送到对应超算中心队列的代理服务上。
第四步,代理服务收到调度器的命令,根据镜像的名字,从镜像中心把对应的镜像下载到超算集群中。
第五步,等应用程序的开放源码容器平台(Singularity)镜像下载完成,代理程序根据命令中的任务执行命令,把执行命令提交超算集群中执行。
第六步,等程序执行完成,把应用程序的生成结果主动推送到集中调度服务,让用户从集中调度服务进行下载。
应用本发明方法的跨超算中心任务调度系统实施例:
一种基于容器分发机制的跨超算中心任务调度系统,包括集中调度服务模块、容器分发判断模块、容器镜像耦合模块和超算实时信息上报模块。
集中调度服务模块,用于对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
容器分发判断模块,用于判断是否存在所需的应用程序复合镜像;
容器镜像耦合模块,用于将所需的应用程序和输入数据打包,得到应用程序复合镜像;
超算实时信息上报模块,用于每隔N分钟上报超算中心队列的实时信息;
通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度。
超算实时信息上报模块,通过超算代理服务,实现每隔一分钟上报一次超算中心队列的实时信息,超算中心队列的实时信息主要包括队列负载信息、静态信息。
队列负载信息包括排队的任务数、执行中的任务数、队列的总节点数,其通过代理服务调度超算调度器获得;静态信息包括CPU核数、内存信息、支持的软件信息、有关软件的许可证剩余数量。
超算实时信息上报模块通过集中调度服务的API接口不断发送更新信息。发送的消息为一个超算资源情况的消息。
通过集中调度服务不断收到超算中心队列内部的代理服务上报的信息,把所有信息集中存储在一个数据库中。以队列名为匹配词,能够快速找到对应信息,加快查询速度。
因此,应用本发明,使得跨超算之间的调度使用开放源码容器平台(Singularity)镜像的方式,统一从镜像中心下载,解耦了应用程序发布和超算中心队列的强绑定。同时高性能计算(HPC)应用程序和数据一起打包在镜像中进行调度,减少了因为数据不一致导致的兼容性问题,进一步本发明采用多种跨调度算法,特别是多因子权重的调度策略,提高了调度的全局性。
应用本发明方法的一种设备实施例:
一种电子设备,其包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述的一种基于容器分发机制的跨超算中心任务调度方法。
应用本发明方法的一种计算机介质实施例:
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的一种基于容器分发机制的跨超算中心任务调度方法。
应用本发明的一种关于汽车碰撞测试的超算调度实施例:
打开浏览器,进入某仿真云模块的操作页面;然后进行创建任务,然后在弹框里上传准备好的前处理文件,即汽车模型的网格文件,也就是本发明中提到的输入数据,对于同一辆车,这个网格文件不会变。
如有多个文件,则选择需要执行的第一个文件为主文件,然后选择求解器LS-DYNA9.0.1,并设置并行核数为256,完成以上操作后,提交任务。
某仿真云后台启动打包程序,其包括以下步骤:
步骤1,在容器平台文件中定义容器镜像的镜像指令,所述镜像指令为从本地文件系统复制文件或/和目录到容器镜像中的指令;
步骤2,根据镜像指令,获取本地文件或/和目录;
步骤3,在容器平台文件中使用辨识文件类型files指令将本地文件或/和目录复制到容器镜像中,进行应用程序安装以及数据拷贝;
步骤4,应用程序安装以及数据拷贝完成后,把应用程序和输入数据打包到镜像中,得到应用程序复合镜像;
所述输入数据为程序运行所需要的各种类型的数据,其至少包括启动参数、三维模型、网格数据和矩阵参数;
步骤5,将应用程序复合镜像移植到开放源码容器平台(Singularity)上。
然后对超算资源信息进行收集,其包括以下内容:
集中调度服务不断收到超算中心队列内部的代理服务上报的信息,超算中心队列包括超算中心队列Q1、超算中心队列Q2、超算中心队列Q3、超算中心队列Q4、超算中心队列Q5、超算中心队列Q6、超算中心队列Q7。
然后把所有信息集中存储在一个数据库中,数据库设计信息如表1所示。
表1:数据库设计信息
再进行调度策略计算,计算结果如表2所示。
表2:调度策略计算结果
从表2中,可以看出超算中心队列Q2的得分最高,因此选择超算中心队列Q2,并把任务调度到超算中心队列Q2中,进行超算。
把任务调度到超算中心队列Q2的方法如下:
在超算中心队列Q2上提交一个执行命令,运行汽车碰撞程序。用户可以通过修改这个命令行参数,提交不同的任务,由于输入的汽车网格数据一样,这样前面打包的镜像就可以重复利用,无需传输数据量特别大的网格文件,从而可以有效减少数据传输时间,因而本发明可以解决跨超算中心队列的任务调度存在的问题,以及保障任务的容错性和兼容性。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包括有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是根据本申请实施例的方法、设备(系统)、计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (8)
1.一种基于容器分发机制的跨超算中心任务调度方法,其特征在于:
包括以下步骤:
第一步,获取用户提交的用户作业命令;
第二步,对用户作业命令进行处理,得到跨超算中心队列的调度安排命令,其方法如下:
S21,获取用户提交的应用程序镜像名字、所需要的资源信息和用户所选择的调度策略信息;
S22,根据实时超算中心队列的资源和负载信息,并利用应用程序镜像名字,得到调度的超算地址、开放源码容器平台镜像名称;
根据用户提交的所需要的资源信息,得到应用程序所需要的节点数;
根据用户所选择的调度策略信息,确定任务被调度的超算中心队列以及队列所使用的调度器;
S23,结合开放源码容器平台镜像名称,需要的节点数和队列所使用的调度器,生成用于提交到超算内部调度器的作业提交命令;
S24,根据调度的超算地址、开放源码容器平台镜像的名称、作业提交命令,得到调度安排命令;
第三步,根据调度安排命令,判断是否存在所需的应用程序复合镜像;
当不存在应用程序复合镜像时,执行第四步;
当存在应用程序复合镜像时,执行第五步;
第四步,根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像,其方法如下:
S41,在容器平台文件中定义容器镜像的镜像指令,所述镜像指令为从本地文件系统复制文件或/和目录到容器镜像中的指令;
S42,根据镜像指令,获取本地文件或/和目录;
S43,在容器平台文件中使用辨识文件类型files指令将本地文件或/和目录复制到容器镜像中,进行应用程序安装以及数据拷贝;
S44,应用程序安装以及数据拷贝完成后,把应用程序和输入数据打包到镜像中,得到应用程序复合镜像;
所述输入数据为程序运行所需要的各种类型的数据,其至少包括启动参数、三维模型、网格数据和矩阵参数;
S45,将应用程序复合镜像移植到开放源码容器平台上;
第五步,通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度。
2.如权利要求1所述的一种基于容器分发机制的跨超算中心任务调度方法,其特征在于:
所述第一步中,用户提交的用户作业命令至少包括应用程序镜像名字、所需要的资源信息和用户所选择的调度策略信息。
3.如权利要求1所述的一种基于容器分发机制的跨超算中心任务调度方法,其特征在于:
所述S21中,调度策略信息包括效率优先调度策略、价格优先调度策略、用户指定调度策略和多因子权重综合调度策略;
效率优先调度策略包括以下内容:
步骤2111.加载所有超算中心队列的信息;
步骤2112.根据超算中心队列的信息,得到满足调度安排命令中的节点数的超算中心队列信息;
步骤2113.根据超算中心队列信息,挑选出排队任务数量最少的超算中心队列;
当排队任务数最少的超算中心队列只有一个时,直接选择所述超算中心队列,并跳转到步骤2114;
当排队任务数最少的超算中心队列有多个时,选择队列总节点数量最多的超算中心队列,并跳转到步骤2114;
步骤2114.调度结束;
价格优先调度策略包括以下内容:
步骤2121.加载所有超算中心队列的信息;
步骤2122.根据超算中心队列的信息,得到满足调度安排命令中的节点数的超算中心队列信息;
步骤2123.根据超算中心队列信息,挑选出价最便宜的超算中心队列;
当价格最便宜的超算中心队列只有一个时,直接选择所述超算中心队列,跳转到步骤2124;
当价格最便宜的超算有多个,选择排队任务数最少且总节点数最多的超算中心队列,并跳转到步骤2124;
步骤2124.调度结束;
用户指定调度策略包括以下内容:
步骤2131.加载用户指定的超算中心队列;
步骤2132.判断用户指定的超算中心队列中的节点数是否大于调度安排命令中的节点数,
当大于调度安排命令中的节点数时,跳转到步骤2133;
当不大于调度安排命令中的节点数时,本次调度失败,调度结束;
步骤2133.直接使用所述用户指定的超算中心队列,调度结束;
多因子权重调度策略包括以下内容:
步骤2141.加载所有超算中心队列的信息;
步骤2142.根据超算中心队列的信息,选出满足调度安排命令中的节点数的若干超算中心队列;
步骤2143.建立多因子权重计算模型,对若干超算中心队列进行计算,选出得分最高的超算中心队列,并结束调度。
4.如权利要求3所述的一种基于容器分发机制的跨超算中心任务调度方法,其特征在于:
建立多因子权重计算模型的方法如下:
根据超算中心队列的信息,建立多因子指标体系;
多因子指标体系分为正向指标体系、负向指标体系;
根据正向指标体系、负向指标体系,设置多因子权重计算公式,实现多因子权重计算模型的建立。
5.如权利要求4所述的一种基于容器分发机制的跨超算中心任务调度方法,其特征在于:
正向指标体系至少包括队列的总节点数,其利用最小最大值规范化处理公式进行处理;
负向指标体系至少包括排队中的任务数、价格和队列中运行的任务数,其通过数据列的极小值除以原始数据得到;
多因子权重计算公式用于计算某超算中心队列的得分,其表达式如下:
S=A*R+B*Y+C*Z+D*H;
其中,S为某超算中心队列的得分,R为排队中的任务数,Y为队列的总节点数,Z为价格,H为队列中运行的任务数;A为排队中的任务数的权重值,B为总节点数的权重值,C为价格的权重值,D为任务数的权重值。
6.如权利要求1所述的一种基于容器分发机制的跨超算中心任务调度方法,其特征在于:
所述第三步中,判断是否存在所需的应用程序复合镜像的方法如下:
根据调度安排命令,获取用户提交的应用程序镜像名字;
对应用程序镜像名字进行分析,得到应用程序镜像名字的匹配词;
根据匹配词,搜索相应的应用程序复合镜像;
当搜索到相应的应用程序复合镜像时,则表示存在所需的应用程序复合镜像;
当搜索不到相应的应用程序复合镜像时,则表示不存在所需的应用程序复合镜像。
7.一种基于容器分发机制的跨超算中心任务调度方法,其特征在于:
包括以下内容:
获取用户提交的用户作业命令;
建立集中调度服务模型,对用户作业命令进行处理,得到跨超算中心队列的调度安排命令,其方法如下:
S21,获取用户提交的应用程序镜像名字、所需要的资源信息和用户所选择的调度策略信息;
S22,根据实时超算中心队列的资源和负载信息,并利用应用程序镜像名字,得到调度的超算地址、开放源码容器平台镜像名称;
根据用户提交的所需要的资源信息,得到应用程序所需要的节点数;
根据用户所选择的调度策略信息,确定任务被调度的超算中心队列以及队列所使用的调度器;
S23,结合开放源码容器平台镜像名称,需要的节点数和队列所使用的调度器,生成用于提交到超算内部调度器的作业提交命令;
S24,根据调度的超算地址、开放源码容器平台镜像的名称、作业提交命令,得到调度安排命令;
根据调度安排命令,判断是否存在所需的应用程序复合镜像;
当不存在应用程序复合镜像时,根据调度安排命令,将所需的应用程序和输入数据打包,得到应用程序复合镜像;再由应用程序复合镜像执行调度安排命令,得到应用程序的生成结果;
得到应用程序复合镜像的方法如下:
S41,在容器平台文件中定义容器镜像的镜像指令,所述镜像指令为从本地文件系统复制文件或/和目录到容器镜像中的指令;
S42,根据镜像指令,获取本地文件或/和目录;
S43,在容器平台文件中使用辨识文件类型files指令将本地文件或/和目录复制到容器镜像中,进行应用程序安装以及数据拷贝;
S44,应用程序安装以及数据拷贝完成后,把应用程序和输入数据打包到镜像中,得到应用程序复合镜像;
所述输入数据为程序运行所需要的各种类型的数据,其至少包括启动参数、三维模型、网格数据和矩阵参数;
S45,将应用程序复合镜像移植到开放源码容器平台上;
当存在应用程序复合镜像时,直接应用程序复合镜像执行调度安排命令,得到应用程序的生成结果;
等程序执行完成,把应用程序的生成结果推送到集中调度服务模型中,实现基于容器分发机制的跨超算中心任务调度。
8.一种基于容器分发机制的跨超算中心任务调度系统,其特征在于:
应用如权利要求1-7任一所述的一种基于容器分发机制的跨超算中心任务调度方法,其包括集中调度服务模块、容器分发判断模块、容器镜像耦合模块和超算实时信息上报模块;
集中调度服务模块,用于对用户作业命令进行处理,得到跨超算中心队列的调度安排命令;
容器分发判断模块,用于判断是否存在所需的应用程序复合镜像;
容器镜像耦合模块,用于将所需的应用程序和输入数据打包,得到应用程序复合镜像;
超算实时信息上报模块,用于每隔N分钟上报超算中心队列的实时信息;
通过应用程序复合镜像执行调度安排命令,得到应用程序的生成结果,完成跨超算中心任务调度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311324053.4A CN117056061B (zh) | 2023-10-13 | 2023-10-13 | 一种基于容器分发机制的跨超算中心任务调度方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311324053.4A CN117056061B (zh) | 2023-10-13 | 2023-10-13 | 一种基于容器分发机制的跨超算中心任务调度方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117056061A CN117056061A (zh) | 2023-11-14 |
CN117056061B true CN117056061B (zh) | 2024-01-09 |
Family
ID=88667807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311324053.4A Active CN117056061B (zh) | 2023-10-13 | 2023-10-13 | 一种基于容器分发机制的跨超算中心任务调度方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117056061B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107038069A (zh) * | 2017-03-24 | 2017-08-11 | 北京工业大学 | Hadoop平台下动态标签匹配DLMS调度方法 |
CN107220271A (zh) * | 2016-12-14 | 2017-09-29 | 郑州祺石信息技术有限公司 | 一种分布式数字资源存储处理与管理的方法及系统 |
CN109062658A (zh) * | 2018-06-29 | 2018-12-21 | 优刻得科技股份有限公司 | 实现计算资源服务化的调度方法、装置、介质、设备及系统 |
CN110795219A (zh) * | 2019-10-24 | 2020-02-14 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 适用于多种计算框架的资源调度方法及系统 |
CN112286671A (zh) * | 2020-12-29 | 2021-01-29 | 湖南星河云程信息科技有限公司 | 一种容器化批处理作业调度方法、装置和计算机设备 |
CN114035907A (zh) * | 2021-12-16 | 2022-02-11 | 北京冲量在线科技有限公司 | 基于超算中心Slurm作业调度和安全虚拟机容器的隐私计算系统 |
CN114610474A (zh) * | 2022-05-12 | 2022-06-10 | 之江实验室 | 一种异构超算环境下多策略的作业调度方法及系统 |
CN115766714A (zh) * | 2022-10-27 | 2023-03-07 | 福建省数字福建云计算运营有限公司 | 基于超级计算的公共计算平台 |
CN116107715A (zh) * | 2023-02-02 | 2023-05-12 | 北京天云融创软件技术有限公司 | 一种运行Docker容器任务的方法和任务调度器 |
CN116302519A (zh) * | 2023-03-04 | 2023-06-23 | 西安电子科技大学青岛计算技术研究院 | 一种基于容器云平台的微服务工作流弹性调度方法、系统及设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306719B (zh) * | 2020-11-23 | 2022-05-31 | 中国科学院计算机网络信息中心 | 一种任务调度方法与装置 |
-
2023
- 2023-10-13 CN CN202311324053.4A patent/CN117056061B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220271A (zh) * | 2016-12-14 | 2017-09-29 | 郑州祺石信息技术有限公司 | 一种分布式数字资源存储处理与管理的方法及系统 |
CN107038069A (zh) * | 2017-03-24 | 2017-08-11 | 北京工业大学 | Hadoop平台下动态标签匹配DLMS调度方法 |
CN109062658A (zh) * | 2018-06-29 | 2018-12-21 | 优刻得科技股份有限公司 | 实现计算资源服务化的调度方法、装置、介质、设备及系统 |
CN110795219A (zh) * | 2019-10-24 | 2020-02-14 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 适用于多种计算框架的资源调度方法及系统 |
CN112286671A (zh) * | 2020-12-29 | 2021-01-29 | 湖南星河云程信息科技有限公司 | 一种容器化批处理作业调度方法、装置和计算机设备 |
CN114035907A (zh) * | 2021-12-16 | 2022-02-11 | 北京冲量在线科技有限公司 | 基于超算中心Slurm作业调度和安全虚拟机容器的隐私计算系统 |
CN114610474A (zh) * | 2022-05-12 | 2022-06-10 | 之江实验室 | 一种异构超算环境下多策略的作业调度方法及系统 |
CN115766714A (zh) * | 2022-10-27 | 2023-03-07 | 福建省数字福建云计算运营有限公司 | 基于超级计算的公共计算平台 |
CN116107715A (zh) * | 2023-02-02 | 2023-05-12 | 北京天云融创软件技术有限公司 | 一种运行Docker容器任务的方法和任务调度器 |
CN116302519A (zh) * | 2023-03-04 | 2023-06-23 | 西安电子科技大学青岛计算技术研究院 | 一种基于容器云平台的微服务工作流弹性调度方法、系统及设备 |
Non-Patent Citations (3)
Title |
---|
Xinxin Ma 等.Design and Implementation of Operating Management Platform of Dispatching and Control Cloud Application based on Container Technology.2020 IEEE International Conference on Information Technology,Big Data and Artificial Intelligence (ICIBA).2020,全文. * |
基于应用的全局资源优化调度方法;寇大治;沈瑜;唐小勇;;计算机应用(第S2期);全文 * |
基于遗传算法的Docker集群调度策略;林伟伟;王泽涛;;华南理工大学学报(自然科学版)(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117056061A (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200233660A1 (en) | Distributed parallel build system | |
CN105117286B (zh) | MapReduce中任务的调度方法和流水化执行方法 | |
Deelman et al. | Pegasus: A framework for mapping complex scientific workflows onto distributed systems | |
CN112418438B (zh) | 基于容器的机器学习流程化训练任务执行方法及系统 | |
Deelman et al. | Pegasus: mapping large-scale workflows to distributed resources | |
Capit et al. | A batch scheduler with high level components | |
Iordache et al. | Resilin: Elastic mapreduce over multiple clouds | |
CN109740765B (zh) | 一种基于亚马逊网络服务器的机器学习系统搭建方法 | |
Czarnul | Modeling, run-time optimization and execution of distributed workflow applications in the JEE-based BeesyCluster environment | |
US20080221857A1 (en) | Method and apparatus for simulating the workload of a compute farm | |
US20120144039A1 (en) | Computing scheduling using resource lend and borrow | |
Galleguillos et al. | AccaSim: a customizable workload management simulator for job dispatching research in HPC systems | |
US20160179570A1 (en) | Parallel Computing Without Requiring Antecedent Code Deployment | |
CN117056061B (zh) | 一种基于容器分发机制的跨超算中心任务调度方法和系统 | |
CN113741961A (zh) | 基于Kubernetes容器编排软件提交大数据计算作业的方法及装置 | |
CN117076096A (zh) | 任务流程的执行方法、装置、计算机可读介质及电子设备 | |
Badr et al. | Task consolidation based power consumption minimization in cloud computing environment | |
US20120311591A1 (en) | License management in a cluster environment | |
Kushwah et al. | A basic simulation of aco algorithm under cloud computing for fault tolerant | |
CN115617480A (zh) | 一种任务调度方法、装置、系统及存储介质 | |
CN114153427A (zh) | 持续集成流水线的优化方法及系统 | |
Sanad et al. | Survey: Utilizing excess cloud resources to reduce the cost and time of distributed processing | |
Li et al. | SoDa: A Serverless‐Oriented Deadline‐Aware Workflow Scheduling Engine for IoT Applications in Edge Clouds | |
Gunasekaran et al. | Dynamic scheduling algorithm for reducing start time in Hadoop | |
CN110991041B (zh) | 一种基于高性能计算系统的自动化多专业协同仿真方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |