一种基于分布式深度学习的GPU调度方法及系统技术方案

技术编号:28622462 阅读:11 留言:0更新日期:2021-05-28 16:18
本发明专利技术涉及计算机技术领域,尤其涉及一种基于分布式深度学习的GPU调度方法,包括:向调度中心创建任务,任务根据优先级被依次放入任务队列中,等待被调度;调度中心周期性地从任务队列中调取任务,并根据任务所需的GPU资源,向节点选择器查询空闲的工作节点;节点选择器在复数个工作节点中查询到空闲的工作节点后,将空闲的工作节点的节点信息反馈给调度中心;调度中心将任务与节点信息组成一个综合任务信息放入任务池中;各个节点对任务池进行实时监测,当工作节点监测到任务池中存在可执行任务时,调取对应的综合任务信息以执行。有益效果:提升GPU的使用率并对任务进行有效管理,提高了深度学习的训练和测试效率。

【技术实现步骤摘要】
一种基于分布式深度学习的GPU调度方法及系统
本专利技术涉及计算机
,尤其涉及一种基于分布式深度学习的GPU调度方法及系统。
技术介绍
随着计算机技术的快速发展,深度学习已经被广泛地运用于信息搜索、数据挖掘、图像识别、语音处理、自然语言、推理、决策等各方面实际场景中。深度学习是学习样本数据的内在规律和表示层次,在多层神经网络上运用各种机器学习算法解决图像、文本等各种问题的算法集合,其最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。当前深度学习所面临的问题除了数据处理、算法网络外,还需要对大量的数据进行训练与测试,因此需要足够的GPU(GraphicsProcessingUnit,图形处理器)算力来支撑,通常一台计算机不足以执行深度学习的任务,因此需要采用多台计算机组成的分布式系统,将任务拆分给多个GPU来进行处理,由多台计算机分别计算,再上传运算结果后,将结果统一合并得出数据结论的科学。在一个分布式系统中,一组独立的计算机展现给用户的是一个统一的整体,系统拥有多种通用的物理和逻辑资源,可以动态的分配任务,分散的物理和逻辑资源通过计算机网络实现信息交换。因此,如何协调分配任务是实现GPU调度的核心问题。
技术实现思路
本专利技术的其他特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过说明书、权利要求书以及其他说明书附图中所特别指出的结构来实现和获得。本专利技术的目的在于克服上述不足,提供一种基于分布式深度学习的GPU调度方法及系统。为实现上述目的,本专利技术的技术解决方案是:本专利技术包括一种基于分布式深度学习的GPU调度方法,包括以下步骤:步骤S1,向调度中心创建任务,所述任务根据优先级被依次放入任务队列中,等待被调度;步骤S2,所述调度中心周期性地从所述任务队列中调取所述任务,并根据所述任务所需的GPU资源,向节点选择器查询空闲的工作节点;步骤S3,所述节点选择器在复数个所述工作节点中查询到空闲的所述工作节点后,将空闲的所述工作节点的节点信息反馈给所述调度中心;步骤S4,所述调度中心将所述任务与所述节点信息组成一个综合任务信息放入任务池中;步骤S5,各个所述节点对所述任务池进行实时监测,当所述工作节点监测到所述任务池中存在可执行任务时,调取对应的所述综合任务信息以执行。优选的,所述步骤S1包括:步骤S101,创建所述任务;步骤S102,将所述任务传送至所述调度中心;步骤S103,所述调度中心判断所述任务的优先级;步骤S104,依照所述优先级将所述任务放入所述任务队列中。优选的,所述步骤S3包括:步骤S301,所述节点选择器在复数个所述工作节点中查询是否存在空闲的所述工作节点:若是,则转向步骤S302;若否,则返回所述步骤S301;步骤S302,所述节点选择器查询当前所述工作节点的负载,判断所述工作节点是否能够执行所述调度中心当前分配的所述任务:若是,则转向步骤S303;若否,则返回所述步骤S301;步骤S303,所述节点选择器将当前选择的所述工作节点的所述节点信息反馈给所述调度中心。优选的,于所述步骤S5中,所述工作节点在调取所述综合任务信息后,通知所述调度中心当前已有任务执行,确保下次任务调度时不会将任务分配到同一所述工作节点上。优选的,于所述步骤S5中,所述工作节点在执行任务完毕后主动将执行结果反馈给所述调度中心,同时向所述节点选择器反馈当前节点资源已释放。优选的,在进行所述步骤S1之前,所述调度中心启动时主动向一服务注册集群注册服务地址以及服务信息,复数个所述工作节点启动时先向所述服务注册集群查询所述调度中心的所述服务地址以及所述服务信息,以发现所述调度中心并连接,同时向所述调度中心注册所述工作节点自身的所述节点信息。本专利技术还包括一种基于分布式深度学习的GPU调度系统,包括:任务创建单元,用于创建任务;调度中心,连接所述任务创建单元,将所述任务按照优先级依次放入任务队列中,并周期性地从所述任务队列中调取所述任务;节点选择单元,分别连接所述调度中心以及复数个工作节点,用于根据所述任务所需的GPU资源,查询空闲的所述工作节点,并将空闲的所述工作节点的节点信息反馈给所述调度中心;所述调度中心将所述任务与所述节点信息组成一个综合任务信息放入任务池中,各个所述节点对所述任务池进行实时监测,当所述工作节点监测到所述任务池中存在可执行任务时,调取对应的所述综合任务信息以执行。通过采用上述的技术方案,本专利技术的有益效果是:提升了GPU的使用率并对任务进行有效管理,本专利技术的GPU调度系统通过将GPU容器化,把多个可以进行GPU运算的工作节点组成GPU运算池,通过分布式调度系统按需分配GPU任务到每个工作节点中执行,同时支持多任务并行处理、调度和管理,提高深度学习的训练和测试效率。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。无疑的,本专利技术的此类目的与其他目的在下文以多种附图与绘图来描述的较佳实施例细节说明后将变为更加显见。为让本专利技术的上述和其他目的、特征和优点能更明显易懂,下文特举一个或数个较佳实施例,并配合所示附图,作详细说明如下。附图说明附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例共同用于解释本专利技术,并不构成对本专利技术的限制。在附图中,相同的部件使用相同的附图标记,并且附图是示意性的,并不一定按照实际的比例绘制。为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一个或数个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据此类附图获得其他的附图。图1为本专利技术实施例中的GPU调度方法的步骤图;图2为本专利技术实施例中的GPU调度方法的原理流程图;图3为本专利技术实施例中调度中心与工作节点的注册流程图;图4为本专利技术实施例中调度中心与工作节点的工作原理示意图;图5为本专利技术实施例中的GPU调度系统的原理框图。具体实施方式以下将结合附图及实施例来详细说明本专利技术的实施方式,借此对本专利技术如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本专利技术中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本专利技术的保护范围之内。同时,在以下说明中,处于解释的目的而阐述了许多具体细节,以提供对本专利技术实施例的彻底理解。然而,对本领域的技术人员来说显而易见的是,本专利技术可以不用这里的具体细节或者所描述的特定方式来实施。本专利技术包括一种基于分布式深度学习的本文档来自技高网...

【技术保护点】
1.一种基于分布式深度学习的GPU调度方法,其特征在于,包括以下步骤:/n步骤S1,向调度中心创建任务,所述任务根据优先级被依次放入任务队列中,等待被调度;/n步骤S2,所述调度中心周期性地从所述任务队列中调取所述任务,并根据所述任务所需的GPU资源,向节点选择器查询空闲的工作节点;/n步骤S3,所述节点选择器在复数个所述工作节点中查询到空闲的所述工作节点后,将空闲的所述工作节点的节点信息反馈给所述调度中心;/n步骤S4,所述调度中心将所述任务与所述节点信息组成一个综合任务信息放入任务池中;/n步骤S5,各个所述节点对所述任务池进行实时监测,当所述工作节点监测到所述任务池中存在可执行任务时,调取对应的所述综合任务信息以执行。/n

【技术特征摘要】
1.一种基于分布式深度学习的GPU调度方法,其特征在于,包括以下步骤:
步骤S1,向调度中心创建任务,所述任务根据优先级被依次放入任务队列中,等待被调度;
步骤S2,所述调度中心周期性地从所述任务队列中调取所述任务,并根据所述任务所需的GPU资源,向节点选择器查询空闲的工作节点;
步骤S3,所述节点选择器在复数个所述工作节点中查询到空闲的所述工作节点后,将空闲的所述工作节点的节点信息反馈给所述调度中心;
步骤S4,所述调度中心将所述任务与所述节点信息组成一个综合任务信息放入任务池中;
步骤S5,各个所述节点对所述任务池进行实时监测,当所述工作节点监测到所述任务池中存在可执行任务时,调取对应的所述综合任务信息以执行。


2.根据权利要求1所述的GPU调度方法,其特征在于,所述步骤S1包括:
步骤S101,创建所述任务;
步骤S102,将所述任务传送至所述调度中心;
步骤S103,所述调度中心判断所述任务的优先级;
步骤S104,依照所述优先级将所述任务放入所述任务队列中。


3.根据权利要求1所述的GPU调度方法,其特征在于,所述步骤S3包括:
步骤S301,所述节点选择器在复数个所述工作节点中查询是否存在空闲的所述工作节点:
若是,则转向步骤S302;
若否,则返回所述步骤S301;
步骤S302,所述节点选择器查询当前所述工作节点的负载,判断所述工作节点是否能够执行所述调度中心当前分配的所述任务:
若是,则转向步骤S303;
若否,则返回所述步骤S301;
步骤S303,所...

【专利技术属性】
技术研发人员:陈光泽陈健法史憬烨李剑辉
申请(专利权)人:福建紫辰信息科技有限公司
类型:发明
国别省市:福建;35

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

1