CN114443278B - 一种ai平台训练任务调度的方法、装置、设备及介质 - Google Patents
一种ai平台训练任务调度的方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114443278B CN114443278B CN202111604321.9A CN202111604321A CN114443278B CN 114443278 B CN114443278 B CN 114443278B CN 202111604321 A CN202111604321 A CN 202111604321A CN 114443278 B CN114443278 B CN 114443278B
- Authority
- CN
- China
- Prior art keywords
- task
- training
- sequence
- tasks
- time
- 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
- 238000012549 training Methods 0.000 title claims abstract description 223
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012163 sequencing technique Methods 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 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/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
-
- 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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种AI平台训练任务调度的方法和装置,该方法包括:响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间;基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列;基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列;基于每个任务的预估训练时间由大到小进行排序以形成第三序列;基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序。通过使用本发明的方案,能够提高训练平台的效率。
Description
技术领域
本发明涉及计算机领域,并且更具体地涉及一种AI平台训练任务调度的方法、装置、设备及可读介质。
背景技术
随着算力、算法、数据的不断更新与发展,人工智能技术被应用在了生活的方方面面。从智慧城市、金融支付、自动驾驶等等生活场景都可以看到人工智能技术的影子。为了加速相关人工智能应用与技术的更新迭代,企业、科研院校都在训练精度更高、鲁棒性更强的AI模型。在AI模型训练这一领域,业界通常基于服务器搭建训练集群,采用容器相关技术,由算法人员为训练任务指定所需的资源,训练平台通过相应的调度算法将任务调度合适的节点,进行模型的训练与生成。在较大规模集群资源和较多使用租户的情况下,如何保证所有用户提交的任务都能被调度且进行有效的训练,是相关AI训练平台必须解决的难题。
对于不同的AI业务训练场景,不同的算法人员所用的深度学***台内不同租户提交的任务越来越多,在有限的集群资源下,一定会出现不同租户的有的任务在运行,有的任务在排队等待运行。并且这些任务当中,有的任务申请的资源多,有的任务申请的资源少。在这种情况下,AI训练平台需要保证不同租户提交的训练任务都有被调度开始训练的可能。在实际情况中,通常遇到的客户是物理计算资源相对有限,且租户以及其提交的任务数目都相对较多,因此,在AI训练平台中会存在较多的排队任务,当前许多AI训练平台的调度机制是基于资源的匹配与任务提交的先后顺序进行调度的。如果在集群计算资源不够的情况下,租户提交的训练任务将会处于排队等待中,这种情况下,若其他租户之后提交的训练任务所申请的资源到小于此租户训练任务申请的资源,在计算资源使用紧张的情况下。则会出现有租户的训练任务一直排队等待中。
发明内容
有鉴于此,本发明实施例的目的在于提出一种AI平台训练任务调度的方法、装置、设备及可读介质,通过使用本发明的技术方案,能够更好地调度训练任务,提高平台任务吞吐量,能够避免提交的训练任务长时间排队,能够提高调度的公平性,保证不同租户的训练任务都可以使用平台,提高训练平台的效率。
基于上述目的,本发明的实施例的一个方面提供了一种AI平台训练任务调度的方法,包括以下步骤:
响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间;
基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列;
基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列;
基于每个任务的预估训练时间由大到小进行排序以形成第三序列;
基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序。
根据本发明的一个实施例,响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间包括:
建立完成训练任务的实际时间和用户输入的预估时间的差值对应的权重的对应表;
使用公式:T2=(t1*w1+t2*w2+…+tn*wn)/n计算平台预估训练时间,其中,t1代表待计算训练任务对应用户的第一个已完成训练任务的使用时间,w1代表待计算训练任务对应用户的第一个已完成训练任务在对应表中的权重,t2代表待计算训练任务对应用户的第二个已完成训练任务的使用时间,w2代表待计算训练任务对应用户的第二个已完成训练任务在对应表中的权重,tn代表待计算训练任务对应用户的第n个已完成训练任务的使用时间,wn代表待计算训练任务对应用户的第n个已完成训练任务在对应表中的权重,n代表任务的个数;
使用公式:T=(T1*w+T2)/2计算训练任务的预估训练时间,其中,T1代表待计算训练任务对应的用户输入的预估时间,w为设定的阈值,T2为平台预估训练时间。
根据本发明的一个实施例,还包括:
设定第一序列中每个排位对应任务的分数,设定第二序列中每个排位对应任务的分数,设定第三序列中每个排位对应任务的分数;
设定第一序列的权重值,设定第二序列的权重值,设定第三序列的权重值。
根据本发明的一个实施例,基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序包括:
使用公式:x=x1*δ1+x2*δ2+x3*δ3计算任务的最终得分,其中,x1代表任务在第一序列中的分数,δ1代表第一序列的权重值,x2代表任务在第二序列中的分数,δ2代表第二序列的权重值,x3代表任务在第三序列中的分数,δ3代表第三序列的权重值;
根据最终得分由高到低将对应的任务进行排序。
本发明的实施例的另一个方面,还提供了一种AI平台训练任务调度的装置,装置包括:
计算模块,计算模块配置为响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间;
第一排序模块,第一排序模块配置为基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列;
第二排序模块,第二排序模块配置为基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列;
第三排序模块,第三排序模块配置为基于每个任务的预估训练时间由大到小进行排序以形成第三序列;
第四排序模块,第四排序模块配置为基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序。
根据本发明的一个实施例,计算模块还配置为:
建立完成训练任务的实际时间和用户输入的预估时间的差值对应的权重的对应表;
使用公式:T2=(t1*w1+t2*w2+…+tn*wn)/n计算平台预估训练时间,其中,t1代表待计算训练任务对应用户的第一个已完成训练任务的使用时间,w1代表待计算训练任务对应用户的第一个已完成训练任务在对应表中的权重,t2代表待计算训练任务对应用户的第二个已完成训练任务的使用时间,w2代表待计算训练任务对应用户的第二个已完成训练任务在对应表中的权重,tn代表待计算训练任务对应用户的第n个已完成训练任务的使用时间,wn代表待计算训练任务对应用户的第n个已完成训练任务在对应表中的权重,n代表任务的个数;
使用公式:T=(T1*w+T2)/2计算训练任务的预估训练时间,其中,T1代表待计算训练任务对应的用户输入的预估时间,w为设定的阈值,T2为平台预估训练时间。
根据本发明的一个实施例,还包括设置模块,设置模块配置为:
设定第一序列中每个排位对应任务的分数,设定第二序列中每个排位对应任务的分数,设定第三序列中每个排位对应任务的分数;
设定第一序列的权重值,设定第二序列的权重值,设定第三序列的权重值。
根据本发明的一个实施例,第四排序模块还配置为:
使用公式:x=x1*δ1+x2*δ2+x3*δ3计算任务的最终得分,其中,x1代表任务在第一序列中的分数,δ1代表第一序列的权重值,x2代表任务在第二序列中的分数,δ2代表第二序列的权重值,x3代表任务在第三序列中的分数,δ3代表第三序列的权重值;
根据最终得分由高到低将对应的任务进行排序。
本发明的实施例的另一个方面,还提供了一种计算机设备,该计算机设备包括:
至少一个处理器;以及
存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述任意一项方法的步骤。
本发明的实施例的另一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任意一项方法的步骤。
本发明具有以下有益技术效果:本发明实施例提供的AI平台训练任务调度的方法,通过响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间;基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列;基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列;基于每个任务的预估训练时间由大到小进行排序以形成第三序列;基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序的技术方案,能够更好地调度训练任务,提高平台任务吞吐量,能够避免提交的训练任务长时间排队,能够提高调度的公平性,保证不同租户的训练任务都可以使用平台,提高训练平台的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明一个实施例的AI平台训练任务调度的方法的示意性流程图;
图2为根据本发明一个实施例的AI平台训练任务调度的装置的示意图;
图3为根据本发明一个实施例的计算机设备的示意图;
图4为根据本发明一个实施例的计算机可读存储介质的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
基于上述目的,本发明的实施例的第一个方面,提出了一种AI平台训练任务调度的方法的一个实施例。图1示出的是该方法的示意性流程图。
如图1中所示,该方法可以包括以下步骤:
S1响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间。
训练任务在队列中都会有一个排列的顺序,当一个任务等待时间超过预设时间时,需要计算预估训练时间的任务为该任务和该任务后面的任务。当租户通过训练平台提交任务时,平台会让用户输入一个训练任务从开始运行到结束的预估时间。此预估时间是用户基于对所提交训练任务类型、参数、数据量等做出的带有主观性质的评估。在训练平台初期,由于训练任务数目不足,因此,租户输入的评估时间将直接作为任务调度的因素之一。随着不同租户在平台训练任务完成训练数目的增加,之后平台会统计租户已完成训练任务的训练时间,当租户提交新的任务时,基于租户输入的训练时间,结合已完成训练任务的时间,确认新任务预估的训练时间。由于预估的训练时间较为重要,对于租户输入的预估训练时间T1,当训练任务完成之后,平台将会与实际的训练时间进行对比,如果相差很大,则此租户输入的预估训练时间的权重占比将会减少。平台会统计分析租户完成的训练任务,完成任务的训练时间与用户提交任务输入的预估训练时间的差距不同,则后续用户层面占比就会有差别,平台会基于租户已完成的训练任务的进行平均加权得出租户训练任务的通常的训练时间,平台会计算训练时间处于不同时间段内次所占比例,依次得到每个任务训练时间的权重,这样,就可以通过公式计算出平台预估的训练时间。
S2基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列。
当平台计算资源紧张,使用平台的租户相对较多时,其难免存在排队等待资源的训练任务。如果严格按照任务申请资源、提交时间等传统的调度策略,则会出现某租户的训练任务排队过长得不到训练的现象。当某租户提交的训练任务排队达到一定的时间之后,触发平台的中断调度策略,将这一排队的训练任务与此时间后续提交训练任务放在队列当中,并基于租户已运行的任务数目、资源使用数目以及预估的训练时间等因素对任务进行调度,首先按照任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列,此序列中的任务优先级依次降低,例如,有A,B,C三个任务,A任务对应的用户的排队任务数量为1,正在运行任务数量为10,则比例为0.1,B任务对应的用户的排队任务数量为3,正在运行任务数量为10,则比例为0.3,C任务对应的用户的排队任务数量为2,正在运行任务数量为8,则比例为0.25,则第一序列的顺序为B,C,A。
S3基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列。
如上例,A任务对应用户已运行的训练任务使用的计算资源数目为100,B任务对应用户已运行的训练任务使用的计算资源数目为80,C任务对应用户已运行的训练任务使用的计算资源数目为120,则第二序列的顺序为C,A,B。
S4基于每个任务的预估训练时间由大到小进行排序以形成第三序列。
如上例,A任务的预估训练时间为7.25小时,B任务的预估训练时间为10小时,C任务的预估训练时间为7小时,则第三序列的顺序为B,A,C。
S5基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序。
如上例,设定第一序列中每个排位对应任务的分数为第一位100分,第二位90分,第三位80分,设定第二序列中每个排位对应任务的分数为第一位80分,第二位70分,第三位60分,设定第三序列中每个排位对应任务的分数为第一位60分,第二位50分,第三位40分,设定第一序列的权重值为0.5,设定第二序列的权重值为0.3,设定第三序列的权重值为0.2。则三个任务的最终得分为,A=80*0.5+70*0.3+50*0.2=71,B=100*0.5+60*0.3+60*0.2=80,C=90*0.5+80*0.3+40*0.2=77,则最终任务重新排序的顺序为任务B,任务C,任务A。
通过本发明的技术方案,能够更好地调度训练任务,提高平台任务吞吐量,能够避免提交的训练任务长时间排队,能够提高调度的公平性,保证不同租户的训练任务都可以使用平台,提高训练平台的效率。
在本发明的一个优选实施例中,响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间包括:
建立完成训练任务的实际时间和用户输入的预估时间的差值对应的权重的对应表;
使用公式:T2=(t1*w1+t2*w2+…+tn*wn)/n计算平台预估训练时间,其中,t1代表待计算训练任务对应用户的第一个已完成训练任务的使用时间,w1代表待计算训练任务对应用户的第一个已完成训练任务在对应表中的权重,t2代表待计算训练任务对应用户的第二个已完成训练任务的使用时间,w2代表待计算训练任务对应用户的第二个已完成训练任务在对应表中的权重,tn代表待计算训练任务对应用户的第n个已完成训练任务的使用时间,wn代表待计算训练任务对应用户的第n个已完成训练任务在对应表中的权重,n代表任务的个数;
使用公式:T=(T1*w+T2)/2计算训练任务的预估训练时间,其中,T1代表待计算训练任务对应的用户输入的预估时间,w为设定的阈值,T2为平台预估训练时间。对应表如下表1所示:
表1权重的对应表
时间(单位h) | 0-12 | 12-36 | 36-72 | >72 |
权重w | 1 | 0.8 | 0.5 | 0.1 |
例如,计算任务A时,A对应用户第一个已完成任务使用时间为5小时,实际完成时间与预估时间的差值为2小时,查看权重为1,第二个已完成任务使用时间为20小时,实际完成时间与预估时间的差值为12小时,查看权重为0.8,则T2=(5*1+20*0.8)/2=10.5小时,查看任务A在***上用户输入的预估时间T1=8小时,设定的阈值为0.5,则任务A的预估训练时间为T=(8*0.5+10.5)/2=7.25小时,其他任务的计算方法同上。
在本发明的一个优选实施例中,还包括:
设定第一序列中每个排位对应任务的分数,设定第二序列中每个排位对应任务的分数,设定第三序列中每个排位对应任务的分数;
设定第一序列的权重值,设定第二序列的权重值,设定第三序列的权重值。
在本发明的一个优选实施例中,基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序包括:
使用公式:x=x1*δ1+x2*δ2+x3*δ3计算任务的最终得分,其中,x1代表任务在第一序列中的分数,δ1代表第一序列的权重值,x2代表任务在第二序列中的分数,δ2代表第二序列的权重值,x3代表任务在第三序列中的分数,δ3代表第三序列的权重值;
根据最终得分由高到低将对应的任务进行排序。
通过本发明的技术方案,能够更好地调度训练任务,提高平台任务吞吐量,能够避免提交的训练任务长时间排队,能够提高调度的公平性,保证不同租户的训练任务都可以使用平台,提高训练平台的效率。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,根据本发明实施例公开的方法还可以被实现为由CPU执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU执行时,执行本发明实施例公开的方法中限定的上述功能。
基于上述目的,本发明的实施例的第二个方面,提出了一种AI平台训练任务调度的装置,如图2所示,装置200包括:
计算模块,计算模块配置为响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间;
第一排序模块,第一排序模块配置为基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列;
第二排序模块,第二排序模块配置为基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列;
第三排序模块,第三排序模块配置为基于每个任务的预估训练时间由大到小进行排序以形成第三序列;
第四排序模块,第四排序模块配置为基于每个任务在第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序。
在本发明的一个优选实施例中,计算模块还配置为:
建立完成训练任务的实际时间和用户输入的预估时间的差值对应的权重的对应表;
使用公式:T2=(t1*w1+t2*w2+…+tn*wn)/n计算平台预估训练时间,其中,t1代表待计算训练任务对应用户的第一个已完成训练任务的使用时间,w1代表待计算训练任务对应用户的第一个已完成训练任务在对应表中的权重,t2代表待计算训练任务对应用户的第二个已完成训练任务的使用时间,w2代表待计算训练任务对应用户的第二个已完成训练任务在对应表中的权重,tn代表待计算训练任务对应用户的第n个已完成训练任务的使用时间,wn代表待计算训练任务对应用户的第n个已完成训练任务在对应表中的权重,n代表任务的个数;
使用公式:T=(T1*w+T2)/2计算训练任务的预估训练时间,其中,T1代表待计算训练任务对应的用户输入的预估时间,w为设定的阈值,T2为平台预估训练时间。
在本发明的一个优选实施例中,还包括设置模块,设置模块配置为:
设定第一序列中每个排位对应任务的分数,设定第二序列中每个排位对应任务的分数,设定第三序列中每个排位对应任务的分数;
设定第一序列的权重值,设定第二序列的权重值,设定第三序列的权重值。
在本发明的一个优选实施例中,第四排序模块还配置为:
使用公式:x=x1*δ1+x2*δ2+x3*δ3计算任务的最终得分,其中,x1代表任务在第一序列中的分数,δ1代表第一序列的权重值,x2代表任务在第二序列中的分数,δ2代表第二序列的权重值,x3代表任务在第三序列中的分数,δ3代表第三序列的权重值;
根据最终得分由高到低将对应的任务进行排序。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备。图3示出的是本发明提供的计算机设备的实施例的示意图。如图3所示,本发明实施例包括如下装置:至少一个处理器21;以及存储器22,存储器22存储有可在处理器上运行的计算机指令23,指令由处理器执行时实现以上方法。
基于上述目的,本发明实施例的第四个方面,提出了一种计算机可读存储介质。图4示出的是本发明提供的计算机可读存储介质的实施例的示意图。如图4所示,计算机可读存储介质31存储有被处理器执行时执行如上方法的计算机程序32。
此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及***单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个***的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
在一个或多个示例性设计中,功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(DSL)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、DSL或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (8)
1.一种AI平台训练任务调度的方法,其特征在于,包括以下步骤:
响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间,其中响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间包括建立完成训练任务的实际时间和用户输入的预估时间的差值对应的权重的对应表,使用公式:计算平台预估训练时间,其中,t1代表待计算训练任务对应用户的第一个已完成训练任务的使用时间,w1代表待计算训练任务对应用户的第一个已完成训练任务在所述对应表中的权重,t2代表待计算训练任务对应用户的第二个已完成训练任务的使用时间,w2代表待计算训练任务对应用户的第二个已完成训练任务在所述对应表中的权重,tn代表待计算训练任务对应用户的第n个已完成训练任务的使用时间,wn代表待计算训练任务对应用户的第n个已完成训练任务在所述对应表中的权重,n代表任务的个数,使用公式:T=(T1*w+T2)/2计算训练任务的预估训练时间,其中,T1代表待计算训练任务对应的用户输入的预估时间,w为设定的阈值,T2为平台预估训练时间;
基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列;
基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列;
基于每个任务的预估训练时间由大到小进行排序以形成第三序列;
基于每个任务在所述第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序。
2.根据权利要求1所述的方法,其特征在于,还包括:
设定所述第一序列中每个排位对应任务的分数,设定所述第二序列中每个排位对应任务的分数,设定所述第三序列中每个排位对应任务的分数;
设定所述第一序列的权重值,设定所述第二序列的权重值,设定所述第三序列的权重值。
3.根据权利要求2所述的方法,其特征在于,基于每个任务在所述第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序包括:
使用公式:x=x1*δ1+x2*δ2+x3*δ3计算任务的最终得分,其中,x1代表任务在所述第一序列中的分数,δ1代表所述第一序列的权重值,x2代表任务在所述第二序列中的分数,δ2代表所述第二序列的权重值,x3代表任务在所述第三序列中的分数,δ3代表所述第三序列的权重值;
根据最终得分由高到低将对应的任务进行排序。
4.一种AI平台训练任务调度的装置,其特征在于,所述装置包括:
计算模块,所述计算模块配置为响应于AI平台中待训练任务的等待时间超过预设时间,分别计算超过预设时间的训练任务以及后面的训练任务的预估训练时间,所述计算模块还配置为建立完成训练任务的实际时间和用户输入的预估时间的差值对应的权重的对应表,使用公式:计算平台预估训练时间,其中,t1代表待计算训练任务对应用户的第一个已完成训练任务的使用时间,w1代表待计算训练任务对应用户的第一个已完成训练任务在所述对应表中的权重,t2代表待计算训练任务对应用户的第二个已完成训练任务的使用时间,w2代表待计算训练任务对应用户的第二个已完成训练任务在所述对应表中的权重,tn代表待计算训练任务对应用户的第n个已完成训练任务的使用时间,wn代表待计算训练任务对应用户的第n个已完成训练任务在所述对应表中的权重,n代表任务的个数,使用公式:T=(T1*w+T2)/2计算训练任务的预估训练时间,其中,T1代表待计算训练任务对应的用户输入的预估时间,w为设定的阈值,T2为平台预估训练时间;
第一排序模块,所述第一排序模块配置为基于每个任务对应用户的排队任务数量和用户正在运行任务数量的比例由大到小将每个任务进行排序以形成第一序列;
第二排序模块,所述第二排序模块配置为基于每个任务对应用户已运行的训练任务所使用的计算资源数目由多到少进行排序以形成第二序列;
第三排序模块,所述第三排序模块配置为基于每个任务的预估训练时间由大到小进行排序以形成第三序列;
第四排序模块,所述第四排序模块配置为基于每个任务在所述第一序列、第二序列和第三序列中的得分和权重计算每个任务的最终得分,并基于最终得分将任务的顺序进行排序。
5.根据权利要求4所述的装置,其特征在于,还包括设置模块,所述设置模块配置为:
设定所述第一序列中每个排位对应任务的分数,设定所述第二序列中每个排位对应任务的分数,设定所述第三序列中每个排位对应任务的分数;
设定所述第一序列的权重值,设定所述第二序列的权重值,设定所述第三序列的权重值。
6.根据权利要求5所述的装置,其特征在于,所述第四排序模块还配置为:
使用公式:x=x1*δ1+x2*δ2+x3*δ3计算任务的最终得分,其中,x1代表任务在所述第一序列中的分数,δ1代表所述第一序列的权重值,x2代表任务在所述第二序列中的分数,δ2代表所述第二序列的权重值,x3代表任务在所述第三序列中的分数,δ3代表所述第三序列的权重值;
根据最终得分由高到低将对应的任务进行排序。
7. 一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-3任意一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-3任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111604321.9A CN114443278B (zh) | 2021-12-24 | 2021-12-24 | 一种ai平台训练任务调度的方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111604321.9A CN114443278B (zh) | 2021-12-24 | 2021-12-24 | 一种ai平台训练任务调度的方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114443278A CN114443278A (zh) | 2022-05-06 |
CN114443278B true CN114443278B (zh) | 2024-01-09 |
Family
ID=81363803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111604321.9A Active CN114443278B (zh) | 2021-12-24 | 2021-12-24 | 一种ai平台训练任务调度的方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114443278B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342497A (zh) * | 2021-06-28 | 2021-09-03 | 深圳前海微众银行股份有限公司 | 任务调度方法、装置、终端设备及计算机存储介质 |
CN113722056A (zh) * | 2020-12-23 | 2021-11-30 | 北京沃东天骏信息技术有限公司 | 任务调度方法、装置、电子设备和计算机可读介质 |
-
2021
- 2021-12-24 CN CN202111604321.9A patent/CN114443278B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113722056A (zh) * | 2020-12-23 | 2021-11-30 | 北京沃东天骏信息技术有限公司 | 任务调度方法、装置、电子设备和计算机可读介质 |
CN113342497A (zh) * | 2021-06-28 | 2021-09-03 | 深圳前海微众银行股份有限公司 | 任务调度方法、装置、终端设备及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114443278A (zh) | 2022-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111858009B (zh) | 基于迁移和强化学习的移动边缘计算***任务调度方法 | |
CN111970163B (zh) | 一种基于注意力机制的lstm模型的网络流量预测方法 | |
US20220210028A1 (en) | Cloud software service resource allocation method based on qos model self-correctio | |
CN111813506B (zh) | 一种基于粒子群算法资源感知计算迁移方法、装置及介质 | |
CN111966484A (zh) | 一种基于深度强化学习的集群资源管理和任务调度方法及*** | |
CN109983480A (zh) | 使用聚类损失训练神经网络 | |
US20230153708A1 (en) | Method for Scheduling Resource-constrained Project by Invasive Weed Optimization | |
Chan et al. | Dynamic call center routing policies using call waiting and agent idle times | |
CN113850394B (zh) | 联邦学习方法、装置、电子设备及存储介质 | |
CN112272102B (zh) | 边缘网络业务卸载和调度方法及装置 | |
CN113867843A (zh) | 一种基于深度强化学习的移动边缘计算任务卸载方法 | |
CN113792920B (zh) | 一种面向单诊室的医院就诊顺序优化方法及装置 | |
WO2021197388A1 (zh) | 一种联邦学习中用户的索引方法及联邦学习装置 | |
Wei et al. | A multi-objective migrating birds optimization algorithm based on game theory for dynamic flexible job shop scheduling problem | |
CN114675975B (zh) | 一种基于强化学习的作业调度方法、装置及设备 | |
US11513866B1 (en) | Method and system for managing resource utilization based on reinforcement learning | |
CN117331700B (zh) | 一种算力网络资源调度***及方法 | |
CN114443278B (zh) | 一种ai平台训练任务调度的方法、装置、设备及介质 | |
CN112445617B (zh) | 一种基于移动边缘计算的负载策略选择方法及*** | |
CN114090239A (zh) | 一种基于模型的强化学习的边缘资源调度方法和装置 | |
CN117632488A (zh) | 基于云边端协同的多用户细粒度任务卸载调度方法及装置 | |
WO2020062047A1 (zh) | 更新调度规则的方法、设备、***、存储介质和终端 | |
CN114140033B (zh) | 一种服务人员的分配方法、装置、电子设备及存储介质 | |
CN113762687B (zh) | 一种仓库内的人员排班调度方法和装置 | |
CN115759672A (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 |