一种节点集群中任务分配的方法、节点和系统技术方案

技术编号:16156282 阅读:35 留言:0更新日期:2017-09-06 20:38
本发明专利技术提供了一种节点集群中任务分配的方法、节点和系统,节点集群包括多个计算节点,多个计算节点包括GPU节点和CPU节点,多个GPU节点组成GPU节点集群,多个CPU节点组成CPU节点集群,其中,方法包括:中心节点接收用户请求,用户请求携带有待执行的任务和用户自定义参数;中心节点控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小;中心节点根据所述任务所需要的服务器资源类型和资源大小以及当前计算节点的状态信息将所述任务分配到相应的计算节点;本发明专利技术实施例所提供的方法能够实现CPU节点集群和GPU节点集群的统一管理和混合使用。

【技术实现步骤摘要】
一种节点集群中任务分配的方法、节点和系统
本专利技术涉及深度学习
,具体而言,涉及一种节点集群中任务分配的方法、节点和系统。
技术介绍
近年来,深度学习在语音识别、图像识别、自然语言处理等应用中取得了显著的成效;在安防行业,深度学习已经开始大规模实施,已经有很多安防企业开始投入资源开发基于深度学习技术的任务、产品;可见,深度学习正影响着安防企业,影响着智能视频分析技术;尤其是体现在人脸识别应用和车辆特征识别应用等方面。深度学习带来了更高的识别率以及更多的视频信息的同时,也引入了任务计算量超大的问题,传统做法是采用CPU来完成计算量,但是在计算量过大时,采用单核或者多核CPU的计算速度依然达不到使用要求;而且即便采用多核计算能够满足要求,但是却带来了多核CPU的成本更高和计算密度更低的缺陷;现有技术中,采用专用的GPU计算卡完成深度学习任务,虽然使运算速度得以提高,但是在使用过程中都是分别设有CPU节点集群或者GPU节点集群,在进行任务执行时则分别使用CPU节点集群或者GPU节点集群,进而CPU节点集群和GPU节点集群是被分别进行管理管理和使用的,二者相互独立,无法进行GPU节点集群加CPU节点集群混合计算,在进行任务分配时集群中的CPU资源和GPU资源无法混合使用。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种节点集群中任务分配的方法、节点和系统,以达到CPU节点集群和GPU节点集群的统一管理和混合使用的目的。第一方面,本专利技术实施例提供了一种节点集群中任务分配的方法,所述节点集群包括多个计算节点,所述多个计算节点包括图形处理器GPU节点和中央处理器CPU节点,多个所述GPU节点组成GPU节点集群,多个所述CPU节点组成CPU节点集群,所述CPU节点集群和所述GPU节点集群统一被中心节点管理,所述方法包括:中心节点接收用户请求,所述用户请求携带有待执行的任务和用户自定义参数;所述中心节点控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小;所述中心节点根据所述任务所需要的服务器资源类型和资源大小以及当前计算节点的状态信息将所述任务分配到相应的计算节点。结合第一方面,本专利技术实施例提供了第一方面的第一种可能的实施方式,其中:所述中心节点控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小,包括:根据所述用户自定义参数对所述任务进行分解成多个子任务;判断所述子任务是否必须使用GPU资源,生成标记信息;计算执行每个所述子任务所需的CPU资源和/或GPU资源所要满足的资源条件,生成资源条件信息;所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点。结合第一方面或者第一方面的第一种可能的实施方式,本专利技术实施例提供了第一方面的第二种可能的实施方式,其中:所述状态信息包括:CPU使用率和/或GPU使用率。结合第一方面的第一种可能的实施方式,本专利技术实施例提供了第一方面的第三种可能的实施方式,其中:所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点,包括:如果所述子任务需要GPU资源,所述中心节点则优先将所述子任务分配在满足资源条件的GPU节点集群中GPU负载最低的计算节点;如果所述子任务不需要GPU资源,所述中心节点优先将所述子任务分配至在满足资源条件的CPU节点集群中CPU负载最低的计算节点。结合第一方面的第一种可能的实施方式,本专利技术实施例提供了第一方面的第四种可能的实施方式,其中:所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点,还包括:如果所述子任务需要GPU资源,但不是必须使用GPU资源,在GPU节点集群中没有满足GPU资源条件的计算节点时,所述中心节点将所述子任务分配至GPU节点集群中满足CPU资源条件的计算节点;如果所述GPU节点集群没有满足所述CPU资源条件的计算节点,所述中心节点将所述子任务分配至CPU节点集群中满足CPU资源条件的计算节点;如果所述子任务不需要GPU资源,且CPU节点集群中没有满足CPU资源条件的计算节点,所述中心节点将所述子任务分配至GPU节点集群中满足CPU资源要求的计算节点。结合第一方面的第一种可能的实施方式,本专利技术实施例提供了第一方面的第五种可能的实施方式,其中:所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点,还包括:如果所述子任务当前没有满足资源条件的计算节点,则使所述子任务处于等待状态,直到有满足资源条件的计算节点出现时再为所述子任务分配节点。结合第一方面的第一种可能的实施方式,本专利技术实施例提供了第一方面的第六种可能的实施方式,其中:所述中心节点控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小,还包括:将所述用户自定义参数拆分成每个子任务所对应的具体参数;根据每个所述子任务所对应的具体参数计算所述述子任务所需的CPU资源和/或GPU资源所要满足的资源条件。第二方面,本专利技术实施例提供了一种节点,包括:接收模块,用于接收用户请求,所述用户请求携带有待执行的任务和用户自定义参数;确定模块,用于控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小;分配模块,用于根据所述任务所需要的服务器资源类型和资源大小以及当前计算节点的状态信息将所述任务分配到相应的计算节点。结合第二方面,本专利技术实施例提供了第二方面的第一种可能的实施方式,其中:所述确定模块,还包括:分解单元,用于根据所述用户自定义参数对所述任务进行分解成多个子任务;判断单元,用于判断所述子任务是否必须使用GPU资源,生成标记信息;计算单元计算执行每个所述子任务所需的CPU资源和/或GPU资源所要满足的资源条件,生成资源条件信息;所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点。结合第二方面的第一种可能的实施方式,本专利技术实施例提供了第二方面的第二种可能的实施方式,其中:所述分配模块,用于:如果所述子任务需要GPU资源,所述中心节点则优先将所述子任务分配在满足资源条件的GPU节点集群中GPU负载最低的计算节点;如果所述子任务不需要GPU资源,所述中心节点优先将所述子任务分配至在满足资源条件的CPU节点集群中CPU负载最低的计算节点。结合第二方面的第一种可能的实施方式,本专利技术实施例提供了第二方面的第三种可能的实施方式,其中:所述分配模块,还用于:如果所述子任务需要GPU资源,但不是必须使用GPU资源,在GPU节点集群中没有满足GPU资源条件的计算节点时,将所述子任务分配至GPU节点集群中满足CPU资源条件的计算节点;如果所述GPU节点集群没有满足所述CPU资源条件的计算节点,将所述子任务分配至CPU节点集群中满足CPU资源条件的计算节点;如果所述子任务不需要GPU资源,且CPU节点集群中没有满足CPU资源条件的计算节点,将所述子任务分配至GPU节点集群中满足CPU资源要求的计算节点。结合第二方面的第一种可能的实施方式,本专利技术实施例提供了第二方面的第四种可能的实施方式,其中:所述确定模块,还包括本文档来自技高网...
一种节点集群中任务分配的方法、节点和系统

【技术保护点】
一种节点集群中任务分配的方法,其特征在于,所述节点集群包括多个计算节点,所述多个计算节点包括图形处理器GPU节点和中央处理器CPU节点,多个所述GPU节点组成GPU节点集群,多个所述CPU节点组成CPU节点集群,所述CPU节点集群和所述GPU节点集群统一被中心节点管理,所述方法包括:中心节点接收用户请求,所述用户请求携带有待执行的任务和用户自定义参数;所述中心节点控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小;所述中心节点根据所述任务所需要的服务器资源类型和资源大小以及当前计算节点的状态信息将所述任务分配到相应的计算节点。

【技术特征摘要】
1.一种节点集群中任务分配的方法,其特征在于,所述节点集群包括多个计算节点,所述多个计算节点包括图形处理器GPU节点和中央处理器CPU节点,多个所述GPU节点组成GPU节点集群,多个所述CPU节点组成CPU节点集群,所述CPU节点集群和所述GPU节点集群统一被中心节点管理,所述方法包括:中心节点接收用户请求,所述用户请求携带有待执行的任务和用户自定义参数;所述中心节点控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小;所述中心节点根据所述任务所需要的服务器资源类型和资源大小以及当前计算节点的状态信息将所述任务分配到相应的计算节点。2.根据权利要求1所述的方法,其特征在于,所述中心节点控制任一计算节点确定执行所述任务所需要的服务器资源类型和资源大小,包括:根据所述用户自定义参数对所述任务进行分解成多个子任务;判断所述子任务是否必须使用GPU资源,生成标记信息;计算执行每个所述子任务所需的CPU资源和/或GPU资源所要满足的资源条件,生成资源条件信息;所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点。3.根据权利要求1或2所述的方法,其特征在于,所述状态信息包括:CPU使用率和/或GPU使用率。4.根据权利要求2所述的方法,其特征在于,所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点,包括:如果所述子任务需要GPU资源,所述中心节点则优先将所述子任务分配在满足资源条件的GPU节点集群中GPU负载最低的计算节点;如果所述子任务不需要GPU资源,所述中心节点优先将所述子任务分配至在满足资源条件的CPU节点集群中CPU负载最低的计算节点。5.根据权利要求2所述的方法,其特征在于,所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点,还包括:如果所述子任务需要GPU资源,但不是必须使用GPU资源,在GPU节点集群中没有满足GPU资源条件的计算节点时,所述中心节点将所述子任务分配至GPU节点集群中满足CPU资源条件的计算节点;如果所述GPU节点集群没有满足所述CPU资源条件的计算节点,所述中心节点将所述子任务分配至CPU节点集群中满足CPU资源条件的计算节点;如果所述子任务不需要GPU资源,且CPU节点集群中没有满足CPU资源条件的计算节点,所述中心节点将所述子任务分配至GPU节点集群中满足CPU资源要求的计算节点。6.根据权利要求2所述的方法,其特征在于,所述中心节点根据所述标记信息、资源条件信息和当前每个计算节点的状态信息,将所述子任务分配至相应的计算节点,还包括:如果所述子任务当前没有满足资源条件的计算节点,则使所述子任务处于等待状态,直到有满足资源条件的计算节点出现时,中心节点再为所述子任务分配计算节点。7.根...

【专利技术属性】
技术研发人员:周光明李岩
申请(专利权)人:东方网力科技股份有限公司
类型:发明
国别省市:北京,11

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

1