CN111475297B - 一种作业柔性配置方法 - Google Patents
一种作业柔性配置方法 Download PDFInfo
- Publication number
- CN111475297B CN111475297B CN202010258601.8A CN202010258601A CN111475297B CN 111475297 B CN111475297 B CN 111475297B CN 202010258601 A CN202010258601 A CN 202010258601A CN 111475297 B CN111475297 B CN 111475297B
- Authority
- CN
- China
- Prior art keywords
- job
- tasks
- expected time
- equal
- task
- 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
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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
Abstract
Description
技术领域
本发明涉及一种作业柔性配置方法。
背景技术
超级计算机是指多个计算节点组合起来的能平行进行大规模计算或数据处理的计算机,也称为并行计算机,是计算机中功能最强、运算最快、存储量最大的一类,多用于国家高科技领域和尖端技术研究,是一个国家科技发展水平和综合国力的重要体现。
目前,用户向超级计算机提交作业时,需要自行指定所需的各种资源,例如运行作业所需的超级计算机的存储空间、节点数、核数等。通常,用户根据经验或者小量数据试运行的结果估计所需的资源,因此往往偏差较大。如果请求的资源不足,作业可能因超时、溢出等原因而终止,无法得到期望的结果;然而,如果请求的资源过多,用户就要为此付出额外的成本,并且浪费了宝贵的超算运算能力。因此,如何在提交作业以及作业运行时,为作业指定适量的资源,成为亟待解决的问题。
发明内容
为解决上述技术问题,本发明提供了一种作业柔性配置方法,包括以下步骤:
步骤S100,获得作业,所述作业包括N个任务{T1,T2,...,TN}和M个各自设于任务之间的断点{B1,B2,...,BM};为该作业分配超级计算机的P0个节点;计算在执行N个任务{T1,T2,...,TN}的过程中到达M个断点{B1,B2,...,BM}的对应的初始预期时间其中N、M和P0均为自然数,并且M>N;
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,将对本发明作进一步地详细描述。这种描述是通过示例而非限制的方式介绍了与本发明的原理相一致的具体实施方式,这些实施方式的描述是足够详细的,以使得本领域技术人员能够实践本发明,在不脱离本发明的范围和精神的情况下可以使用其他实施方式并且可以改变和/或替换各要素的结构。因此,不应当从限制性意义上来理解以下的详细描述。
本发明的一个实施例提供一种作业柔性配置方法,其中所述超级计算机选自天河超级计算机,尤其是TH-1、TH-1A、TH-2等天河系列超级计算机,该系列超级计算机通常以脚本文件的形式接收并执行作业,脚本文件至少提供作业提交方式、计算分区、节点数、核数、任务脚本文件绝对文件路径等参数,参考的提交形式为“yhbatch-N N1-p P1-n n1xxx.bat”,其中N1为节点数,数据类型为整型;P1为分区名称,数据类型为字符串;n1为核数,数据类型为整型;xxx.bat为任务脚本文件名,数据类型为字符串,具体而言,所述配置方法包括以下步骤:
步骤S100,通过脚本文件获得作业,所述作业包括N个任务{T1,T2,...,TN}和M个各自设于任务之间的断点{B1,B2,...,BM},还包括作业需要处理的数据,其中所述任务可以是任意合适的执行特定处理的软件或一段程序,其具有输入数据的接口并将输入数据处理后的结果作为输出数据,并且前一个任务输出的结果数据作为后一个任务的输入数据,当最后任务执行后即得到该作业的结果,也即作业执行完成;所述断点设于前N-1个任务中的一个或多个之后,作业在断点处暂时挂起,待评估作业执行进度后再继续进行下一个任务;在获得脚本文件后为该作业分配超级计算机的P0个节点和存储空间,每个节点通常包括若干个计算核心,例如4-28个核心,在天河超级计算机中,计算资源通常以节点为单位进行分配;然后在作业执行之前,计算在执行N个任务{T1,T2,...,TN}的过程中到达M个断点{B1,B2,...,BM}的对应的初始预期时间以及完成作业也即全部N个任务所需的初始预期的作业运行时间其中N、M和P0均为自然数,并且M>N,计算得到的初始预期时间以及初始预期的作业运行时间存储后在以下步骤中用于评估作业执行进度;
步骤S300,当时,为剩余的N-j个未执行任务{Tj+1,Tj+2,...,TN}分配P1个计算节点并重新计算到达剩余的M-i个断点{Bi+1,Bi+2,...,BM}的对应的第一修正预期时间其中|Δt1|是Δt1的绝对值,TH1为设定阈值,TH1可以是任意合适的值,通常不超过10、优选不超过5,例如不超过4、3、2、1、0.5、0.3、0.2、0.1等。
在一个优选的实施例中,在步骤S300中,当Δt1>0时,P1=(1+w)×P0,第一修正预期时间中的其中i+1≤m≤M,这样随着i的增加,w就越来越接近A1,从而提供更多的资源以便尽可能在预期时间内完成作业。
类似地,当执行任务Tj+y后到达任务Tj+y与任务Tj+y+1之间的断点Bi+x处时,1≤y<N-j,1≤x<M-i,计算实际时间与初始预期时间的差值当时,为剩余的N-j-y个任务{Tj+y+1,Tj+y+2,...,TN}分配Px个计算节点并重新计算到达剩余的M-i-x个断点{Bi+x+1,Bi+x+2,...,BM}的对应的第x修正预期时间其中当|Δtx|是Δtx的绝对值,THx为设定阈值,THx可以与TH1相同或不同。考虑到越到程序的后期,越需要更多的资源来纠正偏差,因此THx优选小于TH1,以便更灵敏地及时启动资源分配修正过程,按时完成作业。
在一些情况下,在步骤S200中,根据该作业的算法复杂度和本次运行的数据量,或者根据该作业的历史运行结果和本次运行的数据量,计算需要为该作业的本次运行分配的节点的个数P0,以及计算在执行N个任务{T1,T2,...,TN}的过程中到达M个断点{B1,B2,...,BM}的对应的初始预期时间例如,所述历史运行结果包括该作业在不同数据量{D1,D2,...,DL}和不同节点数{P1,P2,...,PK}的条件下的运行时间以及运行到达M个断点{B1,B2,...,BM}的对应的时间其中和分别表示该作业在数据量Da和节点数Pb的条件下的运行时间和运行到达断点Bi的时间;相应地,根据该作业本次运行的数据量Dc和期望运行时间tc在所述历史运行结果中查找,选取对应的节点数Pb作为该作业本次运行需要分配的节点个数P0,选取作为运行到达M个断点{B1,B2,...,BM}的对应的初始预期时间其中,Da与Dc最接近且大于等于Dc,同时与tc最接近且小于等于tc。
在另一些情况下,当根据该作业本次运行的数据量和期望运行时间在所述历史运行结果中不能查找该作业本次运行需要分配的节点个数P0以及运行到达M个断点{B1,B2,...,BM}的对应的初始预期时间时,也可以采用各种已知的插值法求取该作业本次运行需要分配的节点个数P0以及运行到达M个断点{B1,B2,...,BM}的对应的初始预期时间
在一些情况下,在分配P0的同时,还根据N个任务{T1,T2,...,TN}的需求分配内存和存储空间;以及在分配P1个计算节点的同时,还根据剩余的N-j个未执行任务{Tj+1,Tj+2,...,TN}的需求分配内存和存储空间;以及在分配Px个计算节点的同时,还根据剩余的N-j-y个任务{Tj+y+1,Tj+y+2,...,TN}的需求分配内存和存储空间;其中,可以采用任何已知的方法来分配内存和存储空间。优选地,当已分配存储空间占用率超过85%,优选超过75%,更优选超过70%时,增加存储空间。
利用本发明的方法,在作业执行前,可以根据历史数据尽可能准确地为作业初始分配适当的资源;在作业执行中,可以根据作业的实际执行情况,也即超过或低于预期进度的情况,动态地分配或回收资源,从而实现在多个层级对超级计算机的资源进行柔性或弹性配置,在充分保障作业按时完成的的情况下,尽可能地减少超级计算机资源的占用。
此外,根据公开的本发明的说明书,本发明的其他实现对于本领域的技术人员是明显的。实施方式和/或实施方式的各个方面可以单独或者以任何组合用于本发明的系统和方法中。说明书和其中的示例应该是仅仅看作示例性,本发明的实际范围和精神由所附权利要求书表示。
Claims (3)
1.一种作业柔性配置方法,包括以下步骤:
步骤S100,获得作业,所述作业包括N个任务{T1,T2,...,TN}和M个各自设于任务之间的断点{B1,B2,...,BM};为该作业分配超级计算机的P0个节点;计算在执行N个任务{T1,T2,...,TN}的过程中到达M个断点{B1,B2,...,BM}的对应的初始预期时间其中N、M和P0均为自然数,并且M>N;
步骤S300,当时,为剩余的N-j个未执行任务{Tj+1,Tj+2,...,TN}分配P1个计算节点并重新计算到达剩余的M-i个断点{Bi+1,Bi+2,...,BM}的对应的第一修正预期时间其中|Δt1|是Δt1的绝对值,TH1为设定阈值;
3.根据权利要求1或2的所述配置方法,其中,在步骤S300中,TH1为不超过5的设定阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010258601.8A CN111475297B (zh) | 2018-06-27 | 2018-06-27 | 一种作业柔性配置方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810680674.9A CN108897619B (zh) | 2018-06-27 | 2018-06-27 | 一种用于超级计算机的多层级资源柔性配置方法 |
CN202010258601.8A CN111475297B (zh) | 2018-06-27 | 2018-06-27 | 一种作业柔性配置方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810680674.9A Division CN108897619B (zh) | 2018-06-27 | 2018-06-27 | 一种用于超级计算机的多层级资源柔性配置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111475297A CN111475297A (zh) | 2020-07-31 |
CN111475297B true CN111475297B (zh) | 2023-04-07 |
Family
ID=64346784
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010258601.8A Active CN111475297B (zh) | 2018-06-27 | 2018-06-27 | 一种作业柔性配置方法 |
CN201810680674.9A Active CN108897619B (zh) | 2018-06-27 | 2018-06-27 | 一种用于超级计算机的多层级资源柔性配置方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810680674.9A Active CN108897619B (zh) | 2018-06-27 | 2018-06-27 | 一种用于超级计算机的多层级资源柔性配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN111475297B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110083449B (zh) * | 2019-04-08 | 2020-04-28 | 清华大学 | 动态分配内存和处理器的方法、装置及计算模块 |
CN114020443B (zh) * | 2022-01-05 | 2022-03-18 | 国家超级计算天津中心 | 超级计算机资源调度方法、电子设备和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252391A (zh) * | 2013-06-28 | 2014-12-31 | 国际商业机器公司 | 用于在分布式计算系统中管理多个作业的方法和装置 |
CN104536770A (zh) * | 2015-01-28 | 2015-04-22 | 浪潮电子信息产业股份有限公司 | 一种支持并行作业断点恢复的作业提交和恢复方法 |
CN105808334A (zh) * | 2016-03-04 | 2016-07-27 | 山东大学 | 一种基于资源重用的MapReduce短作业优化系统及方法 |
CN107045456A (zh) * | 2016-02-05 | 2017-08-15 | 华为技术有限公司 | 一种资源分配方法及资源管理器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8185422B2 (en) * | 2006-07-31 | 2012-05-22 | Accenture Global Services Limited | Work allocation model |
CN102906696A (zh) * | 2010-03-26 | 2013-01-30 | 维尔图尔梅特里克斯公司 | 计算机系统的细粒性能资源管理 |
US9262216B2 (en) * | 2012-02-14 | 2016-02-16 | Microsoft Technologies Licensing, LLC | Computing cluster with latency control |
US9417928B2 (en) * | 2014-12-24 | 2016-08-16 | International Business Machines Corporation | Energy efficient supercomputer job allocation |
CN106254058B (zh) * | 2015-06-12 | 2019-06-11 | 华为技术有限公司 | 一种调整服务器的频率的方法及装置 |
-
2018
- 2018-06-27 CN CN202010258601.8A patent/CN111475297B/zh active Active
- 2018-06-27 CN CN201810680674.9A patent/CN108897619B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252391A (zh) * | 2013-06-28 | 2014-12-31 | 国际商业机器公司 | 用于在分布式计算系统中管理多个作业的方法和装置 |
CN104536770A (zh) * | 2015-01-28 | 2015-04-22 | 浪潮电子信息产业股份有限公司 | 一种支持并行作业断点恢复的作业提交和恢复方法 |
CN107045456A (zh) * | 2016-02-05 | 2017-08-15 | 华为技术有限公司 | 一种资源分配方法及资源管理器 |
CN105808334A (zh) * | 2016-03-04 | 2016-07-27 | 山东大学 | 一种基于资源重用的MapReduce短作业优化系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108897619A (zh) | 2018-11-27 |
CN111475297A (zh) | 2020-07-31 |
CN108897619B (zh) | 2020-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111381950B (zh) | 一种面向边缘计算环境基于多副本的任务调度方法和系统 | |
US10733026B2 (en) | Automated workflow selection | |
CN104765640B (zh) | 一种智能服务调度方法 | |
JP6699891B2 (ja) | 電子装置、方法及び情報処理システム | |
CN110347515B (zh) | 一种适合边缘计算环境的资源优化分配方法 | |
CN109871270B (zh) | 调度方案生成方法及装置 | |
CN110866687A (zh) | 任务分配方法及装置 | |
CN111475297B (zh) | 一种作业柔性配置方法 | |
CN104199739A (zh) | 一种基于负载均衡的推测式Hadoop调度方法 | |
CN108427602B (zh) | 一种分布式计算任务的协同调度方法及装置 | |
CN115237580B (zh) | 面向智能计算的流水并行训练自适应调整系统、方法 | |
CN113032102A (zh) | 资源重调度方法、装置、设备和介质 | |
CN111176810B (zh) | 基于优先级的气象水文数据处理调度系统 | |
CN108984286A (zh) | 一种云计算平台的资源调度方法和系统 | |
CN105718318B (zh) | 一种基于辅助工程设计软件的集合式调度优化方法 | |
CN113448714B (zh) | 基于云平台的计算资源控制系统 | |
CN116841717B (zh) | 一种根据任务紧急程度实时生成排序的方法及系统 | |
CN117331668A (zh) | 一种作业调度方法、装置、设备及存储介质 | |
CN117909061A (zh) | 基于gpu混合集群的模型任务处理系统和资源调度方法 | |
CN113452546A (zh) | 深度学习训练通信的动态服务质量管理 | |
JP5577745B2 (ja) | クラスタシステム、プロセス配置方法、及びプログラム | |
CN111506400A (zh) | 计算资源分配系统、方法、装置和计算机设备 | |
CN115952054A (zh) | 一种仿真任务资源管理方法、装置、设备及介质 | |
KR20200063962A (ko) | 분산 처리 시스템 및 이의 동작 방법 | |
CN114138452B (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 |