【技术实现步骤摘要】
异构计算中计算单元的管理方法及相应处理器
[0001]本申请涉及高性能计算和异构计算,尤其涉及异构计算中计算单元的管理方法及相应处理器。
技术介绍
[0002]本部分的陈述仅仅是为了提供与本申请的技术方案有关的背景信息,以帮助理解,其对于本申请的技术方案而言并不一定构成现有技术。
[0003]近年来,深度神经网络已经非常流行,其计算任务具有数据量大、计算量大,计算种类多等特点。深度神经网络的计算任务通常是以有向无环数据流图为组织形式。这些计算任务的执行顺序可以是串行执行,也可以是并行执行。根据图的拓扑关系,这些计算任务往往会分配到多个命令列表中。需要串行执行的计算任务通常会被分配到同一命令列表中,以便让硬件顺序执行;而可以并行执行的计算任务通常会被分配到多个不同的命令列表中,以便让硬件并行执行来提高计算效率。现有的串行指令执行方式的中央处理器CPU执行并行算法的效率很低,因此出现了“CPU+硬件加速器”的异构计算架构,其中硬件加速器(也可称为协处理器)专门处理大量计算任务,而其他非计算任务可由CPU(也可称为主处理器 ...
【技术保护点】
【技术特征摘要】
1.一种异构计算中计算单元的管理方法,其中为每个计算单元设置有与其对应的命令管理寄存器和命令状态寄存器,命令管理寄存器的各个比特位指示对应计算单元的命令缓存中各个条目是否处于空闲状态,命令状态寄存器的各个比特位指示对应计算单元中各个命令的执行状态;所述方法包括:根据待执行的命令的类型,确定适于执行该类型命令的计算单元相对应的命令管理寄存器;从所确定的命令管理寄存器中,选择具有指示空闲状态的比特位的命令管理寄存器,将其中一个指示空闲状态的比特位在命令管理寄存器中的序号作为所述待执行的命令的序号,并将该比特位设置为指示非空闲状态;将所述待执行的命令及其序号发送到与所选择的命令管理寄存器相对应的计算单元,并在该计算单元对应的命令状态寄存器中将与所述序号对应的比特位设置为指示未完成状态;响应于收到来自计算单元的命令完成信号,在该计算单元对应的命令状态寄存器中将与所完成的命令的序号对应的比特位设置为指示已完成状态,并在该计算单元对应的命令管理寄存器中将与所完成的命令的序号对应的比特位设置为指示空闲状态。2.根据权利要求1所述的方法,选择具有指示空闲状态的比特位的命令管理寄存器包括:通过读取命令管理寄存器的值来识别命令管理寄存器中具有指示空闲状态的比特位的数量;选择具有最大数量的指示空闲状态的比特位的命令管理寄存器。3.根据权利要求1所述的方法,选择具有指示空闲状态的比特位的命令管理寄存器包括:以轮询的方式选择具有指示空闲状态的比特位的命令管理寄存器。4.根据权利要求1所述的方法,还包括通过设置计算单元的相对应的命令管理寄存器的值来将该计算单元的状态设置为不可用。5.根据权利要求1所述的方法,所述命令管理寄存器和命令状态寄存器的宽度依赖于其对应计算单元...
【专利技术属性】
技术研发人员:马亮,
申请(专利权)人:上海登临科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。