CN115686865B - 一种基于多场景应用的超算节点资源分配系统 - Google Patents
一种基于多场景应用的超算节点资源分配系统 Download PDFInfo
- Publication number
- CN115686865B CN115686865B CN202211445530.8A CN202211445530A CN115686865B CN 115686865 B CN115686865 B CN 115686865B CN 202211445530 A CN202211445530 A CN 202211445530A CN 115686865 B CN115686865 B CN 115686865B
- Authority
- CN
- China
- Prior art keywords
- task
- calculation
- calculated
- super
- tasks
- 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
Images
Classifications
-
- 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
Abstract
本发明提供了一种基于多场景应用的超算节点资源分配系统,包括通信连接的处理器、数据库,数据库中存储有m个预设超算节点使用等级表,处理器用于:S100,在检测到存在未处理的计算任务时,执行S200;S200,基于当前未处理的计算任务和预设超算节点使用优先级信息表,获取按优先级从高到低的顺序排列的待计算任务组集C;S300,获取可使用超算节点,并利用获取到的可使用超算节点对C中的待计算任务依次进行处理。本发明在出现任务排队时,能够基于用户提供的计算任务的数量、平均单个任务的计算耗时和任务紧急情况来分配超算节点,从而能够使得超算节点的使用变得更加合理。
Description
技术领域
本发明涉及大数据处理领域,特别是涉及一种基于多场景应用的超算节点资源分配系统。
背景技术
随着超级计算的应用与推广,超算用户的逐年增加,超算上提交的任务量也越来越多。虽然超级计算有强大的计算能力和巨量的计算资源,但计算资源并非无穷多,为使有限的计算资源,满足日益增长的计算任务需求,需要对超算资源进行科学的统筹分配,以达到超算资源高效利用的目的。用户使用超算资源的需求存在差异,资源需求场景具有多样性:有时,用户计算任务数量不多,但是单个计算任务的计算量非常大;有时,用户计算任务数量非常多,但是单个计算任务的计算量不大;有时,用户虽然计算数量不多,且单个计算任务计算量不大,但是计算任务非常紧急,需要快速分配计算资源;有时客户计算任务多,计算量大,且计算紧急等。面对计算资源多场景使用需求,如果对用户使用资源没有优先级或其他限定,就会导致计算资源分配不合理:一些任务占用大量计算节点,但是任务并不紧急,但是一些需要紧急计算的任务,却因为节点被大量占用而不能及时分配计算节点。
发明内容
针对上述技术问题,本发明采用的技术方案为:
本发明实施例提供一种基于多场景应用的超算节点资源分配系统,所述系统包括通信连接的处理器、数据库和存储有计算机程序的存储器,所述数据库中存储有m个预设超算节点使用等级表,其中,第i个预设超算节点使用等级表的第j行包括(Wij,Aij,Tij,Eij),Wij为第i个预设超算节点使用等级表中的第j个任务类型,Aij为Wij对应的任务量,Tij为Wij对应的平均单个任务计算耗时,Eij为Wij对应的任务属性,Wij对应的优先级为Pi,i的取值为1到m,j的取值为1到f(i),f(i)为第i个预设超算节点使用等级表的任务类型数量;P1>P2>…>Pi>…>Pm。
其中,所述处理器用于执行计算机程序,以实现如下步骤:
S100,在检测到存在未处理的计算任务时,执行S200;
S200,基于当前未处理的计算任务和预设超算节点使用优先级信息表,获取按优先级从高到低的顺序排列的待计算任务组集C=(C1,C2,...,Ck,…,CL),其中,第k个任务组Ck=(Ck1,Ck2,...,Ckr,…,Ckf(k)),Ckr为Ck中的第r个待计算任务集,Ckr=(IDCkr,RCkr1,RCkr2,...,RCkrb,...,RCkrh(k,r)),IDCkr为Ckr对应的用户ID,RCkrb为Ckr中的第b个待计算任务,Ckr的优先级为Gk,Ckr中的待计算任务中的最早提交时间早于Ckr+1中的待计算任务中的最早提交时间,k的取值为1到L,L为C中的待计算任务组的数量,L≤m;r的取值为1到f(k),f(k)为Ck中的待计算任务集的数量,b的取值为1到h(k,r),h(k,r)为Ckr中的待计算任务的数量;
S300,获取可使用超算节点,并利用获取到的可使用超算节点对C中的待计算任务依次进行处理。
本发明至少具有以下有益效果:
本发明实施例提供的基于多场景应用的超算节点资源分配系统,在出现任务排队时,能够基于用户提供的计算任务的数量、平均单个任务的计算耗时和任务紧急情况来分配超算节点,从而能够使得超算节点的使用变得更加合理。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于多场景应用的超算节点资源分配系统实现的方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种基于多场景应用的超算节点资源分配系统,所述系统包括通信连接的处理器、数据库和存储有计算机程序的存储器,所述数据库中存储有m个预设超算节点使用等级表,其中,第i个预设超算节点使用等级表的第j行包括(Wij,Aij,Tij,Eij),Wij为第i个预设超算节点使用等级表中的第j个任务类型,Aij为Wij对应的任务量,Tij为Wij对应的平均单个任务计算耗时,Eij为Wij对应的任务属性,Wij对应的优先级为Pi,i的取值为1到m,j的取值为1到f(i),f(i)为第i个预设超算节点使用等级表的任务类型数量;P1>P2>…>Pi>…>Pm,即m个预设超算节点使用等级表按照优先级由高到低的顺序依次排列。
在本发明实施例中,所述任务属性可基于实际需要进行设置,在一个示意性实施例中,可包括重点紧急、重点不紧急、非重点紧急、非重点不紧急等四种情况。其中,重点是指计算任务为国家重大专项、企业重点研究项目。紧急为用户急需计算的任务。在该实施例中,可包括3个预设超算节点使用等级表,即m=3,具体地,第一预设超算节点使用等级表可如下表1所示:
表1第一预设超算节点使用等级表
类型 | 任务量 | 平均单个任务计算耗时 | 任务属性 |
1 | 小于D | 小于T | 重点紧急 |
2 | 小于D | 小于T | 非重点紧急 |
3 | 小于D | 大于T | 重点紧急 |
4 | 小于D | 大于T | 非重点紧急 |
5 | 大于D | 小于T | 重点紧急 |
6 | 大于D | 小于T | 非重点紧急 |
7 | 大于D | 大于T | 重点紧急 |
8 | 大于D | 大于T | 非重点紧急 |
其中,D为设定任务数量阈值,可基于实际情况进行确定,例如,D为大于10的数。T为设定的单个任务计算耗时阈值,可基于实际情况进行确定,例如,T为大于12小时的数。
第二预设超算节点使用等级表可如下表2所示:
表2第二预设超算节点使用等级表
类型 | 任务量 | 平均单个任务计算耗时 | 任务属性 |
1 | 小于D | 小于T | 重点不紧急 |
2 | 小于D | 大于T | 重点不紧急 |
3 | 大于D | 小于T | 重点不紧急 |
4 | 大于D | 大于T | 重点不紧急 |
第三预设超算节点使用等级表可如下表3所示:
表3第三预设超算节点使用等级表
在本发明另一个示意性实施例中,所述任务属性可包括锁定计算、重点紧急、重点不紧急、非重点紧急、非重点不紧急等五种情况。其中,锁定计算是指需要使用锁定节点进行计算的项目。在该实施例中,可包括4个预设超算节点使用等级表,即m=4,具体地,第一预设超算节点使用等级表可如下表4所示:
表1第一预设超算节点使用等级表
类型 | 任务量 | 平均单个任务计算耗时 | 任务属性 |
1 | 小于D | 小于T | 锁定计算 |
2 | 小于D | 小于T | 锁定计算 |
3 | 小于D | 大于T | 锁定计算 |
4 | 小于D | 大于T | 锁定计算 |
5 | 大于D | 小于T | 锁定计算 |
6 | 大于D | 小于T | 锁定计算 |
7 | 大于D | 大于T | 锁定计算 |
8 | 大于D | 大于T | 锁定计算 |
9 | 小于D | 小于T | 锁定计算 |
10 | 小于D | 大于T | 锁定计算 |
11 | 大于D | 大于T | 锁定计算 |
12 | 大于D | 大于T | 锁定计算 |
13 | 小于D | 小于T | 锁定计算 |
14 | 小于D | 大于T | 锁定计算 |
15 | 大于D | 小于T | 锁定计算 |
16 | 大于D | 大于T | 锁定计算 |
也就是说,不管用户的任务量和平均单个任务计算耗时为多少,只要任务属性为锁定计算,则为第一优先级。在本发明实施例中,锁定计算需要用户向超算平台进行申请。在一个示例中,每个用户申请的锁定计算仅适用于申请用户。在另一个示例中,每个用户申请的锁定计算可适用于该用户本身及其关联用户,需要在申请时进行说明。
在本发明实施例中,任务属性可在用户向超算平台提交任务时进行说明。
本发明实施例中,所述处理器用于执行计算机程序,基于用户发送的待计算任务和当前可使用超算节点,为每个任务分配超算节点。在超算节点充足的情况下,会根据计算任务的提交时间,按照先提交先计算的原则分配超算节点。在当前可使用超算节点不足时,即出现待计算任务处于排队状态时,处理器会基于设定的优先级机制分配节点资源。具体地,如图1所示,所述处理器用于执行计算机程序,以实现如下步骤:
S100,在检测到存在未处理的计算任务时,执行S200。
在本发明实施例中,首次出现未处理的计算任务的情况可包括:当前可使用超算节点的数量小于当前接收到的待计算任务所需的超算节点数量,或者,当前可使用超算节点数量为0。
S200,基于当前未处理的计算任务和预设超算节点使用优先级信息表,获取按优先级从高到低的顺序排列的待计算任务组集C=(C1,C2,...,Ck,…,CL),其中,第k个任务组Ck=(Ck1,Ck2,...,Ckr,…,Ckf(k)),Ckr为Ck中的第r个待计算任务集,Ckr=(IDCkr,RCkr1,RCkr2,...,RCkrb,...,RCkrh(k,r)),IDCkr为Ckr对应的用户ID,RCkrb为Ckr中的第b个待计算任务,Ckr的优先级为Gk,Ckr的执行顺序为r,Ck中的待计算任务的执行顺序按照提交时间的先后顺序进行排列,即先提交的任务的执行顺序大于后提交的任务的执行顺序,,k的取值为1到L,L为C中的待计算任务组的数量,L≤m;r的取值为1到f(k),f(k)为Ck中的待计算任务集的数量,b的取值为1到h(k,r),h(k,r)为Ckr中的待计算任务的数量。
在本发明实施例中,Ckr中待计算任务按照提交时间由早到晚进行排序。在本发明实施例中,处理器每次接收到新的节点的时候,会将新的节点加入到C中以更新当前的C,以确保后提交的优先级高的任务能够得到及时处理。
在S200中,Gk基于如下步骤得到:
S201,从当前正在计算的任务中获取属于IDCkr的计算任务数量h1(k,r)以及从当前未计算的任务中获取属于IDCkr的计算任务数量h(k,r)。
S202,获取IDCkr对应的当前任务属性E(k,r)、IDCkr提交的总计算任务的任务量d(k,r)以及IDCkr的平均单个任务计算耗时t(k,r),其中,d(k,r)=h1(k,r)+h(k,r),t(k,r)=(∑d(k,r) u=1t(k,r)u)/d(k,r),t(k,r)u为IDCkr当前提交的总计算任务中的第u个计算任务的计算耗时。
在本发明实施例中,t(k,r)u基于设定的计算耗时预测模型得到。具体地,可包括:
S2020,获取IDCkr当前提交的总计算任务中的第u个计算任务的时间控制要素和计算使用资源;
S2021,将第u个计算任务的时间控制要素和计算使用资源输入到所述设定的计算耗时预测模型中,得到对应的预测计算耗时tc(k,r)u;S2022,获取t(k,r)u=tc(k,r)u。
在本发明实施例中,当超算中心接收到用户提交的新的计算任务时,会从该计算任务中提取时间控制要素和计算使用资源。
在本发明实施例中,时间控制要素可包括模型求解器类型、模型网格数量、网格类型、非线性求解设置、计算精度设置等,这些时间影响因素都可以根据对应的软件的控制任务组的特点在计算任务的控制任务组中直接提取得到。计算使用资源为使用的超算资源,可包括节点数和核数,计算使用资源和计算耗时可以在超算中心后台获取得到。
在本发明实施例中,设定的计算耗时预测模型基于已经计算成功的N个计算任务的时间控制要素、计算使用资源和计算耗时构建。
在本发明实施例中,N个计算任务可包括不同工业软件不同版本的计算任务。在本发明实施例中,计算任务为完整的仿真任务。计算使用资源的单位为核小时。在本发明实施例中,核小时(core time)可为本领域通常定义,例如,为用来运行模拟或者渲染的处理器单元(核心)的数量乘以计算工作的持续时间(小时数)。例如,使用100台各具有8个核心的计算机跑上100小时,或200台各具有4个核心的计算机跑上100小时,都是80000核小时。
在本发明实施例中,可通过汇总得到每个计算任务的时间控制要素、计算使用资源和任务最终的计算耗时。基于大数据分析技术,对汇总数据进行数据分析,建立时间控制要素、计算使用资源、计算耗时之间的联系,以实现当时间要素和计算使用资源确定的情况下,可以分析出计算任务的计算耗时。
进一步地,可基于任一工业软件的任一版本的计算任务控制要素、计算使用资源和计算耗时构建对应的计算耗时预测模型。计算耗时预测模型可为经过训练的AI模型。
具体地,可通过如下步骤构建每个工业软件的每个版本的计算耗时预测模型:
S21,构建不同工业软件不用版本的仿真任务时长与其影响因素的数据库。具体地,对于任一工业软件v的任一版本p,可构建对应的数据库,数据库的第q行可包括(Tq vp,Cq vp,Uq vp),Tq vp,Cq vp,Uq vp分别为工业软件v的版本p对应的计算任务中的第q个计算任务的计算耗时、时间控制要素和计算使用资源;v的取值为1到N,N为工业软件的数量;p的取值为1到f(v),f(v)为工业软件v的版本数量;q的取值为1到N(v,p),N(v,p)为工业软件v的版本p对应的计算任务的数量。
其中,Cq vp=(Cq1 vp,Cq2 vp,…,Cqs vp,…,Cqt(q) vp),Cqs vp为Cq vp的第s个参数,s的取值为1到t(q),t(q)为Cq vp中的参数数量;在一个示例中,t(q)可等于5,Cq1 vp,Cq2 vp,…,Cqs vp,…,Cqt (q) vp可分别为模型求解器类型、模型网格数量、网格类型、非线性求解设置、计算精度设置。Uq vp=(Uq1 vp,Uq2 vp),参数Uq1 vp可为节点数,参数Uq2 vp可为核数。
本领域技术人员知晓,构建数据库使用的数据为经过数据清洗筛选后的数据。本领域技术人员知晓,数据清洗筛选可采用现有方法。
S22,对构建的数据库中的多维度数据进行降维。
在本发明实施例中,可采用PCA主成分分析对构建的数据库中的多维度数据进行降维,以降低后续拟合任务难度。
具体地,对于时间控制要素和计算使用资源中的各个参数,可基于各个参数相对于计算耗时的权重进行降维处理,以舍弃对计算耗时影响很小的参数,降低后续拟合任务难度。各个参数相对于计算耗时的权重可基于大数据统计分析得到。
本领域技术人员知晓,基于各个参数相对于计算耗时的权重进行降维处理可采用现有方法实现。
S23,基于N(v,p)获取适配的神经网络深度,构建预测模型M(v,p)。
本领域技术人员知晓,N(v,p)越大,所需要的神经网络深度即神经网络层就越多,具体选择方式可采用现有方法。在一个示意性实施例中,神经网络可为卷积神经网络。
S24,将经过S22处理后的工业软件v的版本p的数据库中的数据作为训练集输入到M(v,p)中进行训练,得到训练后的M(v,p)作为工业软件v的版本p的计算耗时预测模型。
本领域技术人员知晓,将经过S22处理后的工业软件v的版本p的数据库中的数据作为训练集输入到M(v,p)中进行训练,得到训练后的M(v,p)作为工业软件v的版本p的计算耗时预测模型可通过现有方法实现。
在提取时间控制要素和计算使用资源后,会基于计算任务对应的软件和版本名称,选择对应的计算耗时预测模型。然后,将提取的时间控制要素和计算使用资源输入到对应的计算耗时预测模型中,得到对应的预测计算耗时。
S203,基于E(k,r)、d(k,r)和t(k,r),从预设超算节点使用等级表中获取对应的优先级作为Gk。
具体地,遍历m个预设超算节点使用等级表,如果某个预设超算节点优先级使用信息表的某行包括E(k,r)、d(k,r)和t(k,r),则将该行对应的优先级作为Gk。
S300,获取可使用超算节点,并利用获取到的可使用超算节点对C中的待计算任务依次进行处理。
进一步地,在本发明一实施例中,S300可具体包括:
S301,获取从任务计算节点中释放的超算节点,得到可使用超算节点。
在本发明实施例中,S301可按照设定时间周期执行,可在任务计算的整个过程中执行。
S302,如果当前处理的Ckr对应的IDCkr对应的总任务量和平均单个任务计算耗时满足第一设定条件,即当前处理的Ckr所属的用户ID对应任务量和平均单个任务计算耗时满足第一设定条件,执行S303;如果满足第二设定条件,执行S304;否则,执行S306。
在本发明实施例中,IDCkr对应的总任务量包括已计算的任务量和待计算的任务量。在本发明实施例中,第一设定条件可为任务量大于D,平均单个任务耗时小于T。第二设定条件可为任务量大于D,平均单个任务耗时大于T。
S303,如果Ckr中已计算的任务数量Q(k,r)<D1,则利用可使用超算节点计算Ckr中的D1-Q(k,r)个待计算任务,执行S305;如果Q(k,r)=D1,执行S305;D1为第一设定阈值。
本领域技术人员知晓,如果存在当前可使用超算节点不够继续计算Ckr中当前需要计算的一个待计算任务的情况时,例如,当前可使用超算节点为5,而当前需要计算的待计算任务需要的节点数为6,则可继续等待释放的节点,直到满足所需节点即可。
S304,如果Ckr中已计算的任务数量Q(k,r)<D2,则利用可使用超算节点继续计算Ckr中中的D2-Q(k,r)个待计算任务,执行S305;如果Q(k,r)=D2,执行S305;D2为第二设定阈值。
S305,将Ckr的执行顺序调整为f(k),并将Ck中除Ckr之外的待计算任务集的执行顺序分别增加1,即将Ckr之后的任务集处理后再处理Ckr;执行S307。
S303至S305的技术效果在于,对于处于同一优先级的包括任务量多和任务量少的多个任务类型,对于提交时间早的任务量多的任务类型,如果在等该任务类型全部计算完之后再处理其它任务类型,由于任务量多所需的超算节点和计算耗时相应大,这对具有相同优先级的任务少的任务类型会显得不合理,因此,对于这种情况,可先对先提交的任务量多的任务类型计算设定数量的待计算任务,然后计算其它任务类型的任务,这样,能够使得任务量少且紧急的任务得到及时处理,能够确保超算节点尽可能更合理的使用。
S306,利用可使用超算节点对Ckr中的待计算任务进行计算,在Ckr中的待计算任务计算完后,执行S307。
在S306中,对于任务量少的任务类型,由于任务量少,可在所有待计算任务计算完后才进行下一个任务类型的任务计算。
S307,设置r=r+1;如果r≤f(k),执行S302,否则,进行下一个任务类型的任务计算,即执行S308。
S308,设置k=k+1;如果k≤L,执行S302;否则,退出当前控制程序,即结束排队状态的节点优先级分配机制。
在本发明另一实施例中,S300可具体包括:
S310,获取从任务计算节点中释放的超算节点,得到可使用超算节点。S311,如果当前处理的Ckr的任务属性为设定属性,执行S312;否则,执行S313。
在本发明一具体示例中,设定属性可为锁定计算。
S312,基于Ckr需要的超算节点数量,从可使用超算节点中获取对应数量的超算节点作为Ckr的锁定节点;在Ckr中的待计算任务计算完后,执行S318。
S312的技术效果在于,使得任务属性为锁定计算的任务类型,具有最高优先级,能够得到及时处理。
S313,如果当前处理的Ckr的IDCkr对应的总任务量和平均单个任务计算耗时满足第一设定条件,执行S314;如果满足第二设定条件,执行S315;否则,执行S317。
S314,如果Ckr中已计算的任务数量Q(k,r)<D1,则利用可使用超算节点继续计算Ckr中的D1-Q(k,r)个待计算任务,执行S316;如果Q(k,r)=D1,执行S316;D1为第一设定阈值。
S315,如果Ckr中已计算的任务数量Q(k,r)<D2,则利用可使用超算节点继续计算Ckr中的D2-Q(k,r)个待计算任务,执行S316;如果Q(k,r)=D2,执行S316;D2为第二设定阈值。
S316,将Ckr的执行顺序调整为f(k),并将Ck中除Ckr之外的待计算任务集的执行顺序分别增加1,即将Ckr之后的任务集处理后再处理Ckr;执行S318;
S317,利用可使用超算节点对Ckr中的待计算任务进行计算,在Ckr中的待计算任务计算完后,执行S318。
S318,设置r=r+1;如果r≤f(k),执行S311,否则,执行S319。
S319,设置k=k+1;如果k≤L,执行S311;否则,退出控制程序。
本实施例中的S310,S313至S319与前述实施例的S301至S308的实现方式一样,为避免赘述,省略对它们的具体介绍。
在本实施例与前述实施例相比,由于增加了任务属性锁定计算,能够使得优先级类型更多,使得用户选择更多,用户体验更好。
综上,本发明实施例提供的基于多场景应用的超算节点资源分配系统,在出现任务排队时,能够基于用户提供的计算任务的数量、平均单个任务的计算耗时和任务紧急情况来分配超算节点,从而能够使得超算节点的使用变得更加合理。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明公开的范围由所附权利要求来限定。
Claims (8)
1.一种基于多场景应用的超算节点资源分配系统,其特征在于,所述系统包括通信连接的处理器、数据库和存储有计算机程序的存储器,所述数据库中存储有m个预设超算节点使用等级表,其中,第i个预设超算节点使用等级表的第j行包括(Wij,Aij,Tij,Eij),Wij为第i个预设超算节点使用等级表中的第j个任务类型,Aij为Wij对应的任务量,Tij为Wij对应的平均单个任务计算耗时,Eij为Wij对应的任务属性,Wij对应的优先级为Pi,i的取值为1到m,j的取值为1到f(i),f(i)为第i个预设超算节点使用等级表的任务类型数量;P1>P2>…>Pi>…>Pm;
其中,所述处理器用于执行计算机程序,以实现如下步骤:
S100,在检测到存在未处理的计算任务时,执行S200;
S200,基于当前未处理的计算任务和预设超算节点使用优先级信息表,获取按优先级从高到低的顺序排列的待计算任务组集C=(C1,C2,...,Ck,…,CL),其中,第k个任务组Ck=(Ck1,Ck2,...,Ckr,…,Ckf(k)),Ckr为Ck中的第r个待计算任务集,Ckr=(IDCkr,RCkr1,RCkr2,...,RCkrb,...,RCkrh(k,r)),IDCkr为Ckr对应的用户ID,RCkrb为Ckr中的第b个待计算任务,Ckr的优先级为Gk,Ckr的执行顺序为r,k的取值为1到L,L为C中的待计算任务组的数量,L≤m;r的取值为1到f(k),f(k)为Ck中的待计算任务集的数量,b的取值为1到h(k,r),h(k,r)为Ckr中的待计算任务的数量;
S300,获取可使用超算节点,并利用获取到的可使用超算节点对C中的待计算任务依次进行处理;
S300具体包括:
S310,获取从任务计算节点中释放的超算节点,得到可使用超算节点;
S311,如果当前处理的Ckr的任务属性为设定属性,执行S312;否则,执行S313;
S312,基于Ckr需要的超算节点数量,从可使用超算节点中获取对应数量的超算节点作为Ckr的锁定节点;在Ckr中的待计算任务计算完后,执行S318;
S313,如果当前处理的Ckr对应的任务量和平均单个任务计算耗时满足第一设定条件,执行S314;如果满足第二设定条件,执行S315;否则,执行S317;其中,第一设定条件为任务量大于设定任务数量阈值,平均单个任务耗时小于设定的单个任务计算耗时阈值,第二设定条件为任务量大于设定任务数量阈值,平均单个任务耗时大于设定的单个任务计算耗时阈值;所述设定任务数量阈值为大于10的数,所述设定的单个任务计算耗时阈值为大于12小时的数;
S314,如果Ckr中已计算的任务数量Q(k,r)<D1,则利用可使用超算节点继续计算Ckr中的D1-Q(k,r)个待计算任务,执行S316;如果Q(k,r)=D1,执行S316;D1为第一设定阈值;
S315,如果Ckr中已计算的任务数量Q(k,r)<D2,则利用可使用超算节点继续计算Ckr中的D2-Q(k,r)个待计算任务,执行S316;如果Q(k,r)=D2,执行S316;D2为第二设定阈值;
S316,将Ckr的执行顺序调整为f(k),并将Ck中除Ckr之外的待计算任务集的执行顺序分别增加1;执行S318;
S317,利用可使用超算节点对Ckr中的待计算任务进行计算,在Ckr中的待计算任务计算完后,执行S318;
S318,设置r=r+1;如果r≤f(k),执行S311,否则,执行S319;
S319,设置k=k+1;如果k≤L,执行S311;否则,退出控制程序;
2.根据权利要求1所述的系统,其特征在于,在S200中,Gk基于如下步骤得到:
S201,从当前正在计算的任务中获取属于IDCkr的计算任务数量h1(k,r)以及从当前待计算的任务中获取属于IDCkr的计算任务数量h(k,r);
S202,获取IDCkr对应的当前任务属性E(k,r)、IDCkr提交的总计算任务的任务量d(k,r)以及IDCkr的平均单个任务计算耗时t(k,r),其中,d(k,r)=h1(k,r)+h(k,r),t(k,r)=(∑d(k,r) u=1t(k,r)u)/d(k,r),t(k,r)u为IDCkr当前提交的总计算任务中的第u个计算任务的计算耗时;
S203,基于E(k,r)、d(k,r)和t(k,r),从m个预设超算节点使用等级表中获取对应的优先级作为Gk。
3.根据权利要求2所述的系统,其特征在于,t(k,r)u基于设定的计算耗时预测模型得到。
4.根据权利要求3所述的系统,其特征在于,所述设定的计算耗时预测模型基于已经计算成功的N个计算任务的时间控制要素、计算使用资源和计算耗时构建。
5.根据权利要求4所述的系统,其特征在于,t(k,r)u基于如下步骤得到:
S2020,获取第u个计算任务的时间控制要素和计算使用资源;
S2021,将第u个计算任务的时间控制要素和计算使用资源输入到所述设定的计算耗时预测模型中,得到对应的预测计算耗时tc(k,r)u;
S2022,获取t(k,r)u=tc(k,r)u。
6.根据权利要求1所述的系统,其特征在于,所述任务属性包括重点紧急、重点不紧急、非重点紧急、非重点不紧急。
7.根据权利要求1所述的系统,其特征在于,所述任务属性包括锁定计算、重点紧急、重点不紧急、非重点紧急、非重点不紧急。
8.根据权利要求4所述的系统,其特征在于,N个计算任务包括不同工业软件不同版本的计算任务,其中,每个工业软件的每个版本的计算耗时预测模型可通过如下步骤获取:
S21,构建任一工业软件v的任一版本p的数据库,其中,工业软件v的任一版本p的数据库的第q行可包括(Tq vp,Cq vp,Uq vp),Tq vp,Cq vp,Uq vp分别为工业软件v的版本p对应的计算任务中的第q个计算任务的计算耗时、时间控制要素和计算使用资源;v的取值为1到N,N为工业软件的数量;p的取值为1到f(v),f(v)为工业软件v的版本数量;q的取值为1到N(v,p),N(v,p)为工业软件v的版本p对应的计算任务的数量;
S22,对构建的数据库中的多维度数据进行降维处理;
S23,基于N(v,p)获取适配的神经网络深度,构建预测模型M(v,p);
S24,将经过S22处理后的工业软件v的版本p的数据库中的数据作为训练集输入到M(v,p)中进行训练,得到训练后的M(v,p)作为工业软件v的版本p的计算耗时预测模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211445530.8A CN115686865B (zh) | 2022-11-18 | 2022-11-18 | 一种基于多场景应用的超算节点资源分配系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211445530.8A CN115686865B (zh) | 2022-11-18 | 2022-11-18 | 一种基于多场景应用的超算节点资源分配系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115686865A CN115686865A (zh) | 2023-02-03 |
CN115686865B true CN115686865B (zh) | 2023-07-07 |
Family
ID=85054359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211445530.8A Active CN115686865B (zh) | 2022-11-18 | 2022-11-18 | 一种基于多场景应用的超算节点资源分配系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115686865B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9612865B2 (en) * | 2015-06-15 | 2017-04-04 | International Business Machines Corporation | Managed services coordinator |
CN107239336B (zh) * | 2016-03-28 | 2022-09-09 | 中兴通讯股份有限公司 | 一种实现任务调度的方法及装置 |
CN111176852B (zh) * | 2020-01-15 | 2024-04-16 | 上海依图网络科技有限公司 | 资源分配方法、装置、芯片及计算机可读存储介质 |
US11561824B2 (en) * | 2020-03-15 | 2023-01-24 | Vmware, Inc. | Embedded persistent queue |
CN113448714B (zh) * | 2021-07-14 | 2022-03-04 | 华能吉林发电有限公司 | 基于云平台的计算资源控制系统 |
CN113672489B (zh) * | 2021-10-25 | 2022-01-25 | 国家超级计算天津中心 | 超级计算机的资源性能等级确定方法及设备 |
-
2022
- 2022-11-18 CN CN202211445530.8A patent/CN115686865B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115686865A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180203720A1 (en) | Techniques to manage virtual classes for statistical tests | |
CN103092683B (zh) | 用于数据分析的基于启发式的调度 | |
CN108268638A (zh) | 一种基于Spark框架的生成对抗网络分布式实现方法 | |
CN110389820B (zh) | 一种基于v-TGRU模型进行资源预测的私有云任务调度方法 | |
WO2022068663A1 (zh) | 内存分配方法、相关设备及计算机可读存储介质 | |
CN101359333A (zh) | 一种基于隐含狄利克雷分配模型的并行数据处理方法 | |
CN114610474B (zh) | 一种异构超算环境下多策略的作业调度方法及系统 | |
Wang et al. | Efficient straggler replication in large-scale parallel computing | |
CN110347489B (zh) | 一种基于Spark的多中心数据协同计算的流处理方法 | |
Zhou et al. | Prep: Predicting job runtime with job running path on supercomputers | |
Zainab et al. | Distributed tree-based machine learning for short-term load forecasting with apache spark | |
Gritsenko et al. | Decomposition analysis and machine learning in a workflow-forecast approach to the task scheduling problem for high-loaded distributed systems | |
CN113608858A (zh) | 一种基于MapReduce架构的数据同步用块任务执行系统 | |
CN110867224B (zh) | 用于大规模脑病历分割的多粒度Spark超信任模糊方法 | |
CN115686865B (zh) | 一种基于多场景应用的超算节点资源分配系统 | |
CN112036831A (zh) | 人力管理系统控制方法、装置、可读存储介质及终端设备 | |
CN111988412A (zh) | 一种多租户服务资源需求智能预测系统及方法 | |
CN115495224B (zh) | 基于优先级的超算节点使用方法、电子设备和存储介质 | |
Li et al. | Encoding for reinforcement learning driven scheduling | |
Li et al. | Online task scheduling with workers variabilities in crowdsourcing | |
CN111258730A (zh) | 一种基于竞态条件的任务调度方法 | |
CN111522632A (zh) | 基于核聚类特征选择的Hadoop配置参数选择方法 | |
Xu et al. | EdgeMesh: A hybrid distributed training mechanism for heterogeneous edge devices | |
Hao et al. | Meteorological data layout and task scheduling in a multi-cloud environment | |
Moghadam et al. | A new data-intensive task scheduling in optorsim, an open source grid simulator |
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 |