一种执行异步任务的方法、设备和计算机程序产品技术

技术编号:33997037 阅读:29 留言:0更新日期:2022-07-02 11:08
本公开提供过一种执行异步任务的方法和设备,该方法可以实现在计算装置中,其中计算装置可以包括在组合处理装置中,该组合处理装置还可以包括通用互联接口和其他处理装置。所述计算装置与其他处理装置进行交互,共同完成用户指定的计算操作。组合处理装置还可以包括存储装置,该存储装置分别与计算装置和其他处理装置连接,用于计算装置和其他处理装置的数据。据。据。

【技术实现步骤摘要】
一种执行异步任务的方法、设备和计算机程序产品


[0001]本公开涉及计算机领域,更具体地,涉及任务的串行和并行执行。

技术介绍

[0002]在目前的深度网络训练过程中,为了加速网络训练收敛的速度,通常会将一些甚至全部的训练任务(包括计算任务,通信任务,控制逻辑任务等)下发到专门的加速芯片中去执行(比如GPU,MLU,TPU等)。
[0003]网络训练任务会以异步形式被CPU下发给加速卡执行,加速卡中会有任务队列的概念,相同队列上的任务会按下发顺序依次执行,因此同一队列上的任务存在依赖关系,不同队列上的任务可以根据硬件资源的空闲情况并发执行。而目前的训练任务通常仅会下发在一个队列中执行,这不可避免地会影响任务的执行效率。

技术实现思路

[0004]本公开的一个目的是克服现有技术中不能充分利用通信或运算资源,并且容错能力较低的缺陷。
[0005]根据本公开的第一方面,提供一种执行异步任务的方法,包括:将任务队列中的一个总任务划分为多个分任务,每个分任务处于不同的分任务队列中;并行地执行所述多个分任务;响应于所述分任务本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种执行异步任务的方法,包括:将任务队列中的一个总任务划分为多个分任务,每个分任务处于不同的分任务队列中;并行地执行所述多个分任务;响应于所述分任务执行完毕,从而使得所述总任务执行完毕。2.根据权利要求1所述的方法,其中,将任务队列中的一个总任务划分为多个分任务包括:在所述队列中插入允许所述总任务开始执行的第一写入标识;在所述分任务队列中插入禁止所述分任务开始执行的第一等待标识;当所述第一写入标识未被执行时,执行所述第一等待标识以禁止所述分任务开始执行。3.根据权利要求2所述的方法,其中,并行地执行所述多个分任务包括:响应于所述第一写入标识被执行,关断所述第一等待标识,从而并行地执行所述多个分任务。4.根据权利要求1

3中任意一项所述的方法,进一步包括:在所述总任务队列中插入第二等待标识,以禁止执行所述总任务之后的其他任务。5.根据权利要求4所述的方法,进一步包括:每当一个分任务执行完毕,则修改所述第二等待标识,直至所有分任务执行完毕;响应于所有分任务执行完毕,将所述第二等待标识修改为等待结束标识,从而使得所述总任务执行完毕。6.根据权利要求1

5中任意一项所述的方法,其中将任务队列中的一个总任务划分为多个执行时间等效的分任务。7.根据权利要求1

6中任意一项所述的方法,其中,响应于所述总任务的数据量超过特定阈...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:安徽寒武纪信息科技有限公司
类型:发明
国别省市:

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

1