System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于GPU资源的调度实现方法技术_技高网

一种基于GPU资源的调度实现方法技术

技术编号:41430605 阅读:6 留言:0更新日期:2024-05-28 20:27
本申请涉及一种基于GPU资源的调度实现方法,涉及计算机技术领域,该方法包括基于GPU资源的显存以及算力对集群中的全部GPU资源进行切分,每个GPU资源均被切分得到多个vgpu,基于每个节点对应的GPU已分配资源以及总资源,计算每个节点对应的资源利用率,基于每个节点对应的资源利用率对集群中的多个节点进行排序,得到集群对应的节点队列,获取用户请求资源,按照节点队列的排序,依次将队列中的节点与用户请求资源进行GPU资源分配,并更新与用户请求资源匹配成功的节点的节点信息,节点信息包括节点中GPU已分配资源、每个GPU资源对应的vgpu的数量以及显存。本申请达到了更为细腻地实现任务分配的效果。

【技术实现步骤摘要】

本申请涉及计算机,尤其涉及一种基于gpu资源的调度实现方法。


技术介绍

1、近期,随着chatgpt带来的效应,人工智能成为科技产业的聚焦点。chatgpt能够实现如此强大的交互,离不开背后强大的算力支撑。算力是对数据的处理能力,已成为人工智能发展的关键。ai时代下,传统算力面临挑战,cpu无法满足大数据并行场景,gpu由于强大的并行处理能力逐渐变为算力的主要支撑者。尤其是大模型的实现,需要十分强大的算力来支持训练过程和推理过程。

2、经常训练大规模ai模型的数据科学家和机器学习研究者都会不可避免地遇到一个上限,即随着数据集规模增加,处理数据的时间可能从数分钟增大到数个小时、数天,甚至好几周。为了在短时间内快速训练、迭代模型,使用多个gpu对机器学习模型进行分布式训练。gpu芯片是ai算力的基础,算力的发展得益于gpu芯片计算能力的发展。除gpu芯片算力之外,对多gpu资源管理和分配调度同样很重要,它代表着如何有效的利用现有的gpu算力资源。

3、同时对于计算能力强大的gpu,一些小型ai推理任务如果独占该gpu资源,就会造成资源浪费,这就需要将gpu虚拟切片划分,然后多个任务共同使用同一个gpu资源,以充分利用gpu算力资源。

4、中国专利技术专利(申请号cn201510884813.6,一种多用户共享gpu资源的调度方法),公开了一种多用户共享gpu资源的调度方法,属于云计算和虚拟机
,包括用户向管理模块提出请求的步骤;修改、撤销请求流程的步骤;开始gpu流程的步骤以及结束gpu流程的步骤;本专利技术能够在仅配置一个gpu虚拟化设备卡的情况下,更多的满足用户的需求,并且提高了gpu设备的利用率,有效的节约了资源;

5、中国专利技术专利(申请号cn202210236957.0,一种基于kubernetes集群的gpu分时共享方法和系统),本专利技术涉及一种基于kubernetes集群的gpu分时共享方法和系统。该方法包括:在kubernetes集群的工作节点中设置前端模块,所述前端模块是安装在容器内部的gpu设备库,所述gpu设备库通过拦截cuda库中所有与内存和计算相关的api来调度gpu在任务中的使用;在kubernetes集群的工作节点中设置后端模块,所述后端模块管理容器间的令牌及令牌的时间配额,通过令牌及其时间配额实现gpu的分时共享。本专利技术提出了关于gpu分时共享规则,在镜像中加入gpu设备库作为前端,在节点中加入后端模块进行控制,能够保证节点中多个容器之间的任务执行的安全性和公平性。

6、小型ai推理任务独占gpu资源,有时候会显得浪费,现有的方案会将gpu虚拟切片划分(如将gpu划分为100份),然后多个任务共同使用同一个gpu资源,这些方案确实解决了资源共享问题,但是针对某些场景下,并不是最好的方案。

7、针对如上方案,在一个集群节点中,如果都是同型号的gpu当然没有问题,但是如果节点中有不同型号的gpu(银行麒麟服务器就有如此场景),gpu算力资源不等同,全部划分为同样的如100份vgpu,会造成一定程度的资源分配不合理。同时因为都是虚拟成100份,重要的任务和计算量大的任务,一般是要独占一个甚至多个gpu的,没有把重要等级高的任务调度到算力资源强的gpu,资源调度分配不合理。同时现有方案中,一般分为两种方式:任务独占一个或者多个gpu资源;多个任务共同使用一个gpu资源。假设一个节点共有两个gpu,第一个任务计算量较大(独占一个gpu资源不够,又不需要两个完整的gpu资源),还有多个小任务,按照现有方案分配,第一个任务会独占一个gpu或者独占两个gpu,这显然都不是最合理的方案,会导致第一个任务无法充分利用算力资源或者其他小任务需要等待执行。


技术实现思路

1、为解决上述技术问题,本专利技术提供了一种基于gpu资源的调度实现方法。

2、第一方面,本申请提供一种基于gpu资源的调度实现方法,采用如下的技术方案:

3、一种基于gpu资源的调度实现方法,运用在集群中,集群中包括多个节点,每个节点对应有多个gpu资源,包括:

4、基于gpu资源的显存以及实际算力对集群中的全部gpu资源进行切分,每个gpu资源均被切分得到多个vgpu;

5、基于每个节点对应的gpu已分配资源以及总资源,计算每个节点对应的资源利用率;

6、基于所述每个节点对应的资源利用率对所述集群中的多个节点进行排序,得到所述集群对应的节点队列;

7、获取用户请求资源,所述用户请求资源包括gpu-num、vgpu-core以及vgpu-memory,所述gpu-num表示需要独占的gpu个数,所述vgpu-core表示需要使用的vgpu的个数,所述vgpu-memory表示需要的vgpu的显存大小;

8、按照所述节点队列的排序,依次将所述队列中的节点与所述用户请求资源进行gpu资源分配,并更新与所述用户请求资源匹配成功的节点的节点信息,所述节点信息包括所述节点中gpu已分配资源、每个gpu资源对应的vgpu的数量以及显存。

9、在另一种可能实现的方式中,所述基于所述每个节点对应的资源利用率对所述集群中的多个节点进行排序,得到所述集群对应的节点队列,包括:

10、申请一个队列;

11、按照资源利用率的大小,将所述集群中的多个节点依次放入队列中,得到所述集群对应的节点队列,所述节点队列中头部的节点的资源利用率最大,尾部的节点的资源利用率最小。

12、在另一种可能实现的方式中,所述按照所述节点队列的排序,依次将所述队列中的节点与所述用户请求资源进行gpu资源分配,包括:

13、步骤sa,将所述用户请求资源与所述节点队列中的第一节点进行gpu资源分配,若匹配成功,则执行步骤sb,若匹配失败,则执行步骤sc,所述第一节点为当前所述节点排列中未与所述用户请求资源进行gpu资源分配的节点中资源利用率最高的节点;

14、步骤sb,返回成功,并更新所述第一节点的节点信息;

15、步骤sc,将第二节点确定为第一节点,所述第二节点为步骤sa中第一节点的下一个节点;

16、步骤sd,循环执行步骤sa至步骤sc,直至确定出与所述用户请求资源成功匹配的节点。

17、在另一种可能的实现方式中,所述用户请求资源对应有任务标志,所述任务标志包括重要以及非重要,所述步骤sa,将所述用户请求资源与所述节点队列中的第一节点进行gpu资源分配,包括:

18、申请两个数组队列,分别为第一数组以及第二数组;

19、将所述第一节点中的空闲gpu资源的id按照特定算法存放在所述第一数组,以及将所述第一节点中的非空闲gpu资源的id按照gpu资源利用率进行排序并存放在所述第二数组,其中,空闲gpu资源指整个gpu完全未被占用的资源,非空闲gpu资源指整个gpu中部分被占用的资源;

20、对所述用户请求本文档来自技高网...

【技术保护点】

1.一种基于GPU资源的调度实现方法,其特征在于,集群中包括多个节点,每个节点对应有多个GPU资源,包括:

2.根据权利要求1所述的一种基于GPU资源的调度实现方法,其特征在于,所述基于所述每个节点对应的资源利用率对所述集群中的多个节点进行排序,得到所述集群对应的节点队列,包括:

3.根据权利要求1所述的一种基于GPU资源的调度实现方法,其特征在于,所述按照所述节点队列的排序,依次将所述队列中的节点与所述用户请求资源进行GPU资源分配,包括:

4.根据权利要求3所述的一种基于GPU资源的调度实现方法,其特征在于,所述用户请求资源对应有任务标志,所述任务标志包括重要以及非重要,所述步骤Sa,将所述用户请求资源与所述节点队列中的第一节点进行GPU资源分配,包括:

5.根据权利要求1所述的一种基于GPU资源的调度实现方法,其特征在于,所述更新与所述用户请求资源匹配成功的节点的节点信息,之后还包括:

【技术特征摘要】

1.一种基于gpu资源的调度实现方法,其特征在于,集群中包括多个节点,每个节点对应有多个gpu资源,包括:

2.根据权利要求1所述的一种基于gpu资源的调度实现方法,其特征在于,所述基于所述每个节点对应的资源利用率对所述集群中的多个节点进行排序,得到所述集群对应的节点队列,包括:

3.根据权利要求1所述的一种基于gpu资源的调度实现方法,其特征在于,所述按照所述节点队列的排序,依次将所述队列中的节点...

【专利技术属性】
技术研发人员:吴江刘意虎张铎王勇军
申请(专利权)人:麒麟软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1