多模块GPU的分时调度方法、系统、电子设备及存储介质技术方案

技术编号:37472037 阅读:29 留言:0更新日期:2023-05-06 09:54
本发明专利技术的实施方式提供了一种多模块GPU的分时调度方法、系统、电子设备及存储介质。该方法包括:获取待处理任务组;判断待处理任务组是否支持批处理,若是,则向待处理任务组分配所有图形处理器GPU计算资源,直至待处理任务组完成,释放GPU计算资源;否则采用多流并行方式向待处理任务组分配所有GPU计算资源,直至待处理任务组完成,释放GPU计算资源。通过可批处理的任务与非批处理任务的分时占用GPU的调度方式,本发明专利技术的方法减少了GPU内耗和任务流的延迟,显著地提高了GPU计算效率。显著地提高了GPU计算效率。显著地提高了GPU计算效率。

【技术实现步骤摘要】
多模块GPU的分时调度方法、系统、电子设备及存储介质


[0001]本专利技术的实施方式涉及计算机处理器领域,更具体地,本专利技术的实施方式涉及多模块GPU的分时调度方法、系统、电子设备及存储介质。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。
[0003]现有的深度学习的应用中,通常具有多个计算模块,例如自动语音识别技术中常见的Conformer模型,其具有解码器模块和编码器模块,均需要使用到GPU计算资源。但由于多个计算模块之间对于计算资源的需求量并不均匀,因此多个计算模块之间如何共享计算资源成为深度学习应用领域的一大技术难题。
[0004]采用分别对每个计算模块提供一个GPU的方案,会造成资源浪费,也不利于应用容器引擎的部署。采用多流叠加的方式让多个计算模块共享一个GPU的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种多模块GPU的分时调度方法,其特征在于,包括:获取待处理任务组;判断所述待处理任务组是否支持批处理,若是,则向所述待处理任务组分配所有图形处理器GPU计算资源,直至所述待处理任务组完成,释放GPU计算资源;否则采用多流并行方式向所述待处理任务组分配所有GPU计算资源,直至所述待处理任务组完成,释放GPU计算资源。2.根据权利要求1所述的多模块GPU的分时调度方法,其特征在于,所述获取待处理任务组之前,包括:对GPU的所有模块进行分类,得到多个计算任务组;根据分类结果计算每一计算任务组的优先度;取最大优先度的计算任务组作为所述待处理任务组。3.根据权利要求2所述的多模块GPU的分时调度方法,其特征在于,所述对GPU的所有模块进行分类,得到多个计算任务组,包括:在GPU的所有模块中筛选出M个第一类模块;其中,所述第一类模块支持批处理;所述M为自然数;将每一个第一类模块的所有单位任务作为一个计算任务组,得到M个工作任务;将所有第二类模块的所有单位任务作为一个计算任务组;所述第二类模块为GPU的所有模块中除第一类模块外的模块。4.根据权利要求1所述的多模块GPU的分时调度方法,其特征在于,所述采用多流并行方式向所述待处理任务组分配GPU计算资源,包括:在GPU上设置预设数量的并行资源槽,并为每个并行资源槽分配GPU计算资源;在所述待处理任务组中选取单位任务并将其添加至空闲的并行资源槽;轮询所述待处理任务组中的单位任务,若当前单位任务已完成,则释放对应的并行资源槽后返回执行添加单位任务的步骤,直至所述待处理任务组中的所有单位任务均已被添加完毕。5.一种多模块GPU的分时调度方法,其特征在于,所述GPU内包括第一线程和第二线程;相应地,所述方法包括:响应于GPU满足第二线程运行条件,第二线程执行数据预处理步骤和数据输入步骤以将下一待处理任务组的数据输入至显存,并在数据预处理步骤和数据输入步骤完成后进入等待状态;所述第二线程运行条件包括:GPU计算资源被第一线程占用以执行当前待处理任务组;响应于GPU满足第二线程计算条件,第二线程退出等待状态并占用GPU计算资源以执行下一待处理任务组;所述第二线程计算条件包括:所述第一线程释放GPU...

【专利技术属性】
技术研发人员:蒲永杰张广勇段亦涛
申请(专利权)人:网易有道信息技术北京有限公司
类型:发明
国别省市:

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

1