CN112835721A - 分配gpu卡的数量的方法、装置、电子设备和存储介质 - Google Patents

分配gpu卡的数量的方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112835721A
CN112835721A CN202110268205.8A CN202110268205A CN112835721A CN 112835721 A CN112835721 A CN 112835721A CN 202110268205 A CN202110268205 A CN 202110268205A CN 112835721 A CN112835721 A CN 112835721A
Authority
CN
China
Prior art keywords
gpu
cards
task
gpu cards
allocating
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.)
Pending
Application number
CN202110268205.8A
Other languages
English (en)
Inventor
吕冬冬
刘青松
梁家恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unisound Intelligent Technology Co Ltd
Xiamen Yunzhixin Intelligent Technology Co Ltd
Original Assignee
Unisound Intelligent Technology Co Ltd
Xiamen Yunzhixin Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Unisound Intelligent Technology Co Ltd, Xiamen Yunzhixin Intelligent Technology Co Ltd filed Critical Unisound Intelligent Technology Co Ltd
Priority to CN202110268205.8A priority Critical patent/CN112835721A/zh
Publication of CN112835721A publication Critical patent/CN112835721A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种分配GPU卡的数量的方法、装置、电子设备和存储介质,该方法包括:获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;获取用户提交的任务启动参数,所述任务启动参数包括:用户使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量,采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡的数量。本申请实施例中通过为不同类型的图形处理器GPU卡注册不同的资源名字,从而通过节点和任务启动参数分配图形处理器卡GPU的数量,不仅提高了集群的整体图形处理器卡GPU的利用率,而且提升了图形处理器GPU节点调度的灵活性。

Description

分配GPU卡的数量的方法、装置、电子设备和存储介质
技术领域
本发明涉及计算资源分配技术领域,具体涉及一种分配GPU卡的数量的方法、装置、电子设备和存储介质。
背景技术
目前,通过插件自动发现不同计算节点的GPU卡类型,插件将卡的设备信息上报到计算节点的代理,代理将资源名字等设备信息注册到api-server,代理负责轮询插件的信息,实时维护设备的状态。后端的任务分配器能够获取每个节点每种类型的卡的数量,并根据用户的任务请求调用最优化分解算法分配具体类型的GPU卡到相应的节点。但是,在目前的超算场景下,为训练任务分配计算力资源时,它通常是随机分配容器所在节点的GPU,而不能指定使用某类GPU类型。在多机多卡场景下,剩余卡的分配策略不够灵活,没办法根据最优化原则,现有集群无法根据卡的类型限制用户使用的配额。
发明内容
本发明提供一种分配分配GPU卡的数量的方法、装置、电子设备和存储介质,能够解决上述技术问题。
本发明解决上述技术问题的技术方案如下:
第一方面,本发明实施例提供了一种分配GPU卡的数量的方法,包括:
获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;
获取用户提交的任务启动参数,所述任务启动参数包括:用户使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量;
采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡的数量。
在一些实施例中,所述采用资源最大化利用的原则为所述任务分配图形处理器卡的数量,包括:
根据所述资源名字查询每个候选节点可用的总图形处理器GPU卡数,以及当前任务使用的图形处理器GPU数目,确定所述每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量。
在一些实施例中,所述根据所述资源名字查询候选节点可用的总图形处理器GPU卡的数量,以及当前任务使用的图形处理器GPU卡的数量,确定每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量,包括:
当确定用户需要的图形处理器GPU卡的数量大于集群剩余的图形处理器GPU卡的数量时,将所述任务加入等待队列中;
当确定用户需要的图形处理器GPU卡的数量小于所述集群剩余的图形处理器GPU卡的数量时,根据剩余最少的节点原则分配图形处理器GPU卡的数量。
在一些实施例中,上述方法还包括:
获取所述集群各个节点的图形处理器GPU卡的数量,中央处理器以及内存;
根据预设比值的加权比分别对所述集群各个节点做加权打分;
根据加权比高的组合分配图形处理器GPU卡的数量。
在一些实施例中,上述方法还包括:
根据所述用户需要的图形处理器GPU卡的类型,向所述节点申请GPU卡的类型对应的资源;
调度所述任务到所述节点,发送消息至所述节点的代理,启动所述任务;
所述节点的代理运行所述任务并发送所述任务的状态至所述集群。
第二方面,本发明实施例还提供了一种分配图形处理器GPU卡的数量的装置,包括:
注册资源名字模块:用于获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;
获取模块:用于获取用户提交的任务启动参数,所述任务启动参数包括:用户使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量;
分配模块:用于采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡的数量。
在一些实施例中,上述分配模块,还用于:
根据所述资源名字查询每个候选节点可用的总图形处理器GPU卡数,以及当前任务使用的图形处理器GPU数目,确定所述每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量。
在一些实施例中,上述分配模块还用于:
当确定用户需要的图形处理器GPU卡的数量大于集群剩余的图形处理器GPU卡的数量时,将所述任务加入等待队列中;
当确定用户需要的图形处理器GPU卡的数量小于所述集群剩余的图形处理器GPU卡的数量时,根据剩余最少的节点原则分配图形处理器GPU卡的数量。
在一些实施例中,上述分配模块还用于:
获取所述集群各个节点的图形处理器GPU卡的数量,中央处理器以及内存;
根据预设比值的加权比分别对所述集群各个节点做加权打分;
根据加权比高的组合分配图形处理器GPU卡的数量。
在一些实施例中,上述分配模块还用于:
根据所述用户需要的图形处理器GPU卡的类型,向所述节点申请GPU卡的类型对应的资源;
调度所述任务到所述节点,发送消息至所述节点的代理,启动所述任务;
所述节点的代理运行所述任务并发送所述任务的状态至所述集群。
第三方面,本发明实施例还提供了一种电子设备,包括:处理器和存储器;
所述处理器通过调用所述存储器存储的程序或指令,用于执行如上所述任一项所述分配分配GPU卡的数量的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如上所述任一项所述分配分配GPU卡的数量的方法。
本发明的有益效果是:本申请实施例通过获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;获取用户提交的任务启动参数,采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡的数量。本申请实施例中通过为不同类型的图形处理器GPU卡注册不同的资源名字,从而通过节点和任务启动参数分配图形处理器GPU卡的数量,不仅提高了集群的整体图形处理器卡GPU的利用率,而且提升了图形处理器GPU节点的调度缺少灵活性。
附图说明
图1为本发明实施例提供的一种分配GPU卡的数量的方法之一;
图2为本发明实施例提供的一种分配GPU卡的数量的方法之二;
图3为本发明实施例提供的一种分配GPU卡的数量的方法之三;
图4为本发明实施例提供的一种分配GPU卡的数量的方法之四;
图5为本发明实施例提供的一种分配GPU卡的数量的装置;
图6为本发明实施例提供的一种电子设备的示意性框图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
图1为本发明实施例提供的一种分配GPU卡的数量的方法之一。
第一方面,结合图1,本发明实施例提供了一种分配GPU卡的数量的方法,包括如下S101、S102和S103三个步骤:
S101:获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;
应理解,通过本步骤为不同类型的图形处理器GPU卡注册不同的资源名具体步骤可以是如下步骤:
第一步:插件通过nvml库发现节点的备注信息。
第二步:插件会启动一个gRPC Server,代理会建立一个到插件的ListAndWatch的长连接,用来发现设备ID以及设备的健康状态。
第三步:代理会将这些设备暴露到节点的状态中,把设备数量发送到api-server中,然后存储到集群的存储中。
还应理解,nvml库会查询到图形处理器GPU卡的类型,这时候计算机程序会将这个字段取出来返回给代理,代理会将这个名字反馈到api-server进行资源名字注册。
S102:获取用户提交的任务启动参数,所述任务启动参数包括:用户使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量;
具体的,本申请实施例中,用户提交的任务启动参数,可以是用户通过标签参数指明的要使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量。
S103:采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡GPU的数量。
具体的,本申请实施例中,通过为不同类型的图形处理器GPU卡注册不同的资源名字,从而通过节点和任务启动参数分配图形处理器卡GPU的数量,提高了集群的整体图形处理器卡GPU的利用率。
图2为本发明实施例提供的一种分配GPU卡的数量的方法之二。
在一些实施例中,所述采用资源最大化利用的原则为所述任务分配图形处理器卡的数量,结合图2,包括如下两个步骤S201和S202:
S201:根据所述资源名字查询每个候选节点可用的总图形处理器GPU卡数,以及当前任务使用的图形处理器GPU数目,
S202:确定所述每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量。
应理解,根据标签参数找出满足条件的候选节点,这里的节点指的是满足还有剩余资源的节点,示例性的用户指定要使用10张卡,只要节点还有剩余的图形处理器GPU都是满足条件的,根据不同的图形处理器GPU资源名字查询候选节点可用的总图形处理器GPU卡数,以及现有的任务使用的GPU数目,从而算出每个候选节点剩余的GPU卡数量,为所述任务分配图形处理器卡的数量。
在一些实施例中,所述根据所述资源名字查询候选节点可用的总图形处理器GPU卡的数量,以及当前任务使用的图形处理器GPU卡的数量,确定每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量,包括如下两种情况:
情况一:当确定用户需要的图形处理器GPU卡的数量大于集群剩余的图形处理器GPU卡的数量时,将所述任务加入等待队列中;
情况二:当确定用户需要的图形处理器GPU卡的数量小于所述集群剩余的图形处理器GPU卡的数量时,根据剩余最少的节点原则分配图形处理器GPU卡的数量。
应理解,当用户需要的卡数大于集群剩余的卡数的时候,将任务设置为Pending,然后将其加入等待队列中,当用户需要的卡数小于集群剩余的卡数的时候,根据分配完剩余最少的节点原则,例如用户需要13卡,集群现在有4个节点有剩余卡分别是A:10B:8C:3D:4那么这时候满足的节点就直接是A+C,应该这2个的组合会使得后面剩余的可用节点较少。
图3为本发明实施例提供的一种分配GPU卡的数量的方法之三。
在一些实施例中,结合图3,上述方法还包括S301、S302和S303三个步骤:
S301:获取所述集群各个节点的图形处理器GPU卡的数量,中央处理器以及内存;
S302:根据预设比值的加权比分别对所述集群各个节点做加权打分;
S303:根据加权比高的组合分配图形处理器GPU卡的数量。
应理解,当通过上文介绍的两种情况还不能确定如何分配时,通过上述三个步骤S301、S302和S303进行分配,示例性的用户需要13卡,A:10(500G/50core)B:8(400G/40core)C:8(200G/30core)D:4(300G/20core)判断集群各个节点的图形处理器GPU卡的数量,CPU以及内存情况对各个节点做加权打分分别按照0.8/0.1/0.1的加权比,按照高分的组合,A(10*0.8+500*0.1+50*0.1)/B(8*0.8+400*0.1+40*0.1)/C(8*0.1+200*0.1+30*0.1)/D(4*0.8+300*0.1+20*0.1),
得出来打分分别为A(63)/B(50.4)/C(23.8)/D(35.2);那么这时候可用节点为A+B。
本申请实施例中预设比值是0.8/0.1/0.1,具体应用中,也可以根据实际情况进行调整。
图4为本发明实施例提供的一种分配GPU卡的数量的方法之四。
在一些实施例中,结合图4,上述方法还包括:
S401:根据所述用户需要的图形处理器GPU卡的类型,向所述节点申请GPU卡的类型对应的资源;
S402:调度所述任务到所述节点,发送消息至所述节点的代理,启动所述任务;
S403:所述节点的代理运行所述任务并发送所述任务的状态至所述集群。
应理解,通过用户申请的卡类型,向分配好的节点申请具体类型的卡资源,将任务调度到分配好的节点,通知节点的代理,启动任务;节点代理运行任务并将状态上报集群。
综上,第一方面,现有技术对各种图形处理器GPU类型并没有进行区分,仅仅是通过一个标签进行选择,当一个节点有多种GPU类型的时候,就没办法进行调度;第二方面,现有技术对GPU节点的调度缺少灵活性,本申请提出的资源最大化利用的原则,提高集群的整体GPU利用率;第三方面,现有技术通过标签区分不同类型的GPU节点,但是无法对不同的卡类型分别设置配额,本申请通过为不同的卡设置不同资源名字,通过不同的资源名字设置配额。
图5为本发明实施例提供的一种分配GPU卡的数量的装置之一;
第二方面,本发明实施例还提供了一种分配图形处理器GPU卡的数量的装置,包括:
注册资源名字模块501:用于获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;
应理解,通过本步骤注册资源名字模块501为不同类型的图形处理器GPU卡注册不同的资源名具体步骤可以是如下步骤:
第一步:插件通过nvml库发现节点的备注信息。
第二步:插件会启动一个gRPC Server,代理会建立一个到插件的ListAndWatch的长连接,用来发现设备ID以及设备的健康状态。
第三步:代理会将这些设备暴露到节点的状态中,把设备数量发送到api-server中,然后存储到集群的存储中。
还应理解,nvml库会查询到图形处理器GPU卡的类型,这时候计算机程序会将这个字段取出来返回给代理,代理会将这个名字反馈到api-server通过注册资源名字模块501进行资源名字注册。
获取模块502:用于获取用户提交的任务启动参数,所述任务启动参数包括:用户使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量;
具体的,本申请实施例中,获取模块502获取到用户提交的任务启动参数,任务启动参数可以是用户通过标签参数指明的要使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量。
分配模块503:用于采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡的数量。
具体的,本申请实施例中,通过为不同类型的图形处理器GPU卡注册不同的资源名字,从而根据节点和任务启动参数通过分配模块503分配图形处理器卡GPU的数量,提高了集群的整体图形处理器卡GPU的利用率。
在一些实施例中,上述分配模块503,还用于:
根据所述资源名字查询候选节点可用的总图形处理器GPU卡数,以及当前任务使用的图形处理器GPU数目,确定每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量。
应理解,根据标签参数找出满足条件的候选节点,这里的节点指的是满足还有剩余资源的节点,示例性的用户指定要使用10张卡,只要节点还有剩余的图形处理器GPU都是满足条件的,根据不同的图形处理器GPU资源名字查询候选节点可用的总图形处理器GPU卡数,以及现有的任务使用的GPU数目,从而算出每个候选节点剩余的GPU卡数量,分配模块503为所述任务分配图形处理器卡的数量。
在一些实施例中,上述分配模块还用于:
当确定用户需要的图形处理器GPU卡的数量大于集群剩余的图形处理器GPU卡的数量时,将所述任务加入等待队列中;
当确定用户需要的图形处理器GPU卡的数量小于所述集群剩余的图形处理器GPU卡的数量时,根据剩余最少的节点原则分配图形处理器GPU卡的数量。
应理解,当用户需要的卡数大于集群剩余的卡数的时候,将任务设置为Pending,然后将其加入等待队列中,当用户需要的卡数小于集群剩余的卡数的时候,分配模块503根据分配完剩余最少的节点原则分配图形处理器GPU卡的数量。例如用户需要13卡,集群现在有4个节点有剩余卡分别是A:10B:8C:3D:4那么这时候满足的节点就直接是A+C,应该这2个的组合会使得后面剩余的可用节点较少。
在一些实施例中,上述分配模块还用于:
获取所述集群各个节点的图形处理器GPU卡的数量,中央处理器以及内存;
根据预设比值的加权比分别对所述集群各个节点做加权打分;
根据加权比高的组合分配图形处理器GPU卡的数量。
应理解,当通过上文介绍的两种情况还不能确定如何分配时,通过上述三个步骤S301、S302和S303进行分配,示例性的用户需要13卡,A:10(500G/50core)B:8(400G/40core)C:8(200G/30core)D:4(300G/20core)判断集群各个节点的图形处理器GPU卡的数量,CPU以及内存情况对各个节点做加权打分分别按照0.8/0.1/0.1的加权比,按照高分的组合,A(10*0.8+500*0.1+50*0.1)/B(8*0.8+400*0.1+40*0.1)/C(8*0.1+200*0.1+30*0.1)/D(4*0.8+300*0.1+20*0.1),
得出来打分分别为A(63)/B(50.4)/C(23.8)/D(35.2);那么这时候可用节点为A+B。
本申请实施例中预设比值是0.8/0.1/0.1,具体应用中,也可以根据实际情况进行调整。
在一些实施例中,上述分配模块还用于:
根据所述用户需要的图形处理器GPU卡的类型,向所述节点申请GPU卡的类型对应的资源;
调度所述任务到所述节点,发送消息至所述节点的代理,启动所述任务;
所述节点的代理运行所述任务并发送所述任务的状态至所述集群。
应理解,分配模块503通过用户申请的卡类型,向分配好的节点申请具体类型的卡资源,将任务调度到分配好的节点,通知节点的代理,启动任务;节点代理运行任务并将状态上报集群。
第三方面,本发明实施例还提供了一种电子设备,包括:处理器和存储器;
所述处理器通过调用所述存储器存储的程序或指令,用于执行如上所述任一项所述分配GPU卡的数量的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如上所述任一项所述分配GPU卡的数量的方法。
图6是本公开实施例提供的一种电子设备的示意性框图。
如图6所示,电子设备包括:至少一个处理器601、至少一个存储器602和至少一个通信接口603。电子设备中的各个组件通过总线***604耦合在一起。通信接口603,用于与外部设备之间的信息传输。可理解,总线***604用于实现这些组件之间的连接通信。总线***604除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但为了清楚说明起见,在图6中将各种总线都标为总线***604。
可以理解,本实施例中的存储器602可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
在一些实施方式中,存储器602存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作***和应用程序。
其中,操作***,包含各种***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本申请实施例提供的分配GPU卡的数量的方法中任一方法的程序可以包含在应用程序中。
在本申请实施例中,处理器601通过调用存储器602存储的程序或指令,具体的,可以是应用程序中存储的程序或指令,处理器601用于执行本申请实施例提供的分配GPU卡的数量的方法各实施例的步骤。
本申请实施例提供的分配GPU卡的数量的方法中任一方法可以应用于处理器601中,或者由处理器601实现。处理器601可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器601中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器601可以是通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本申请实施例提供的分配GPU卡的数量的方法中任一方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器602,处理器601读取存储器602中的信息,结合其硬件完成方法的步骤。
本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。
本领域的技术人员能够理解,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
虽然结合附图描述了本申请的实施方式,但是本领域技术人员可以在不脱离本申请的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种分配GPU卡的数量的方法,其特征在于,包括:
获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;
获取用户提交的任务启动参数,所述任务启动参数包括:用户使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量;
采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡的数量。
2.根据权利要求1所述的分配GPU卡的数量的方法,其特征在于,所述采用资源最大化利用的原则为所述任务分配图形处理器卡的数量,包括:
根据所述资源名字查询每个候选节点可用的总图形处理器GPU卡数,以及当前任务使用的图形处理器GPU数目,确定所述每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量。
3.根据权利要求2所述的分配GPU卡的数量的方法,其特征在于,所述根据所述资源名字查询每个候选节点可用的总图形处理器GPU卡的数量,以及当前任务使用的图形处理器GPU卡的数量,确定每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配图形处理器卡的数量,包括:
当确定用户需要的图形处理器GPU卡的数量大于集群剩余的图形处理器GPU卡的数量时,将所述任务加入等待队列中;
当确定用户需要的图形处理器GPU卡的数量小于所述集群剩余的图形处理器GPU卡的数量时,根据剩余最少的节点原则分配所述图形处理器GPU卡的数量。
4.根据权利要求3所述的分配GPU卡的数量的方法,其特征在于,所述方法还包括:
获取所述集群各个节点的图形处理器GPU卡的数量,中央处理器以及内存;
根据预设比值的加权比分别对所述集群各个节点做加权打分;
根据加权比高的组合分配所述图形处理器GPU卡的数量。
5.根据权利要求4所述的分配GPU卡的数量的方法,其特征在于,所述方法还包括:
根据所述用户需要的图形处理器GPU卡的类型,向所述节点申请GPU卡的类型对应的资源;
调度所述任务到所述节点,发送消息至所述节点的代理,启动所述任务;
所述节点的代理运行所述任务并发送所述任务的状态至所述集群。
6.一种分配图形处理器GPU卡的数量的装置,其特征在于,包括:
注册资源名字模块:用于获取图形处理器GPU卡的类型,根据所述图形处理器GPU卡的类型注册资源名字;
获取模块:用于获取用户提交的任务启动参数,所述任务启动参数包括:用户使用的图形处理器GPU卡的类型以及用户需要的图形处理器GPU卡的数量;
分配模块:用于采用资源最大化利用的原则,根据所述资源名字和所述任务启动参数为所述任务分配图形处理器卡的数量。
7.根据权利要求1所述的分配GPU卡的数量的装置,其特征在于,所述分配模块,还用于:
根据所述资源名字查询所述每个候选节点可用的总图形处理器GPU卡数,以及当前任务使用的图形处理器GPU数目,确定所述每个候选节点剩余的图形处理器GPU卡的数量,为所述任务分配所述图形处理器卡的数量。
8.根据权利要求7所述的分配GPU卡的数量的装置,其特征在于,所述分配模块还用于:
当确定用户需要的图形处理器GPU卡的数量大于集群剩余的图形处理器GPU卡的数量时,将所述任务加入等待队列中;
当确定用户需要的图形处理器GPU卡的数量小于所述集群剩余的图形处理器GPU卡的数量时,根据剩余最少的节点原则分配图形处理器GPU卡的数量。
9.一种电子设备,其特征在于,包括:处理器和存储器;
所述处理器通过调用所述存储器存储的程序或指令,用于执行如权利要求1至5任一项所述分配GPU卡的数量的方法。
10.一种计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如权利要求1至5任一项所述分配GPU卡的数量的方法。
CN202110268205.8A 2021-03-12 2021-03-12 分配gpu卡的数量的方法、装置、电子设备和存储介质 Pending CN112835721A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110268205.8A CN112835721A (zh) 2021-03-12 2021-03-12 分配gpu卡的数量的方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110268205.8A CN112835721A (zh) 2021-03-12 2021-03-12 分配gpu卡的数量的方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN112835721A true CN112835721A (zh) 2021-05-25

Family

ID=75930097

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110268205.8A Pending CN112835721A (zh) 2021-03-12 2021-03-12 分配gpu卡的数量的方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN112835721A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114741175A (zh) * 2022-04-15 2022-07-12 支付宝(杭州)信息技术有限公司 任务执行方法、装置、中心节点和下游节点设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190004868A1 (en) * 2017-07-01 2019-01-03 TuSimple System and method for distributed graphics processing unit (gpu) computation
CN109634748A (zh) * 2018-12-12 2019-04-16 深圳前海微众银行股份有限公司 集群资源调度方法、装置、设备及计算机可读存储介质
CN111078356A (zh) * 2019-11-22 2020-04-28 北京达佳互联信息技术有限公司 Gpu集群资源控制***、方法、装置、设备及存储介质
CN111176846A (zh) * 2019-12-30 2020-05-19 云知声智能科技股份有限公司 任务分配方法及装置
CN111966500A (zh) * 2020-09-07 2020-11-20 网易(杭州)网络有限公司 资源调度方法、装置、电子设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190004868A1 (en) * 2017-07-01 2019-01-03 TuSimple System and method for distributed graphics processing unit (gpu) computation
CN109634748A (zh) * 2018-12-12 2019-04-16 深圳前海微众银行股份有限公司 集群资源调度方法、装置、设备及计算机可读存储介质
CN111078356A (zh) * 2019-11-22 2020-04-28 北京达佳互联信息技术有限公司 Gpu集群资源控制***、方法、装置、设备及存储介质
CN111176846A (zh) * 2019-12-30 2020-05-19 云知声智能科技股份有限公司 任务分配方法及装置
CN111966500A (zh) * 2020-09-07 2020-11-20 网易(杭州)网络有限公司 资源调度方法、装置、电子设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114741175A (zh) * 2022-04-15 2022-07-12 支付宝(杭州)信息技术有限公司 任务执行方法、装置、中心节点和下游节点设备

Similar Documents

Publication Publication Date Title
US9122529B2 (en) Dynamic job processing based on estimated completion time and specified tolerance time
US7036123B2 (en) System using fair-share scheduling technique to schedule processes within each processor set based on the number of shares assigned to each process group
CN107688492B (zh) 资源的控制方法、装置和集群资源管理***
CN107515786B (zh) 资源分配方法、主装置、从装置和分布式计算***
EP3073374A1 (en) Thread creation method, service request processing method and related device
CN111798113B (zh) 资源分配方法、装置、存储介质和电子设备
WO2021159831A1 (zh) 编程平台的用户代码运行方法及平台、节点、设备、介质
CN113434284B (zh) 一种隐私计算服务端设备、***及任务调度方法
CN110162397B (zh) 资源分配方法、装置及***
CN112579622A (zh) 业务数据的处理方法、装置及设备
CN111488206A (zh) 一种深度学习任务调度方法、***、终端及存储介质
CN115237589A (zh) 一种基于sr-iov的虚拟化方法、装置和设备
CN112835721A (zh) 分配gpu卡的数量的方法、装置、电子设备和存储介质
CN111813541B (zh) 一种任务调度方法、装置、介质和设备
CN113419839A (zh) 多类型作业的资源调度方法、装置、电子设备及存储介质
CN115640113A (zh) 多平面弹性调度方法
CN107634978B (zh) 一种资源调度方法及装置
CN111858035A (zh) 一种fpga设备分配方法、装置、设备及存储介质
CN111796932A (zh) 一种gpu资源调度方法
CN116166421A (zh) 分布式训练任务的资源调度方法及其设备
CN114448909B (zh) 基于ovs的网卡队列轮询方法、装置、计算机设备及介质
CN114840344A (zh) 基于kubernetes的GPU设备资源分配方法及***
CN114489978A (zh) 资源调度方法、装置、设备及存储介质
CN114253704A (zh) 一种分配资源的方法及装置
CN112114971A (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