【技术实现步骤摘要】
用于AI芯片的数据处理方法、装置、芯片及计算机设备
[0001]本申请实施例涉及芯片
,特别涉及一种用于AI芯片的数据处理方法、装置、芯片及计算机设备。
技术介绍
[0002]人工智能(Artificial Intelligence,AI)芯片也称为AI加速器,是一类专门用于加速人工智能算法的硬件加速器。
[0003]在通过AI芯片处理神经网络时,受限于片上缓存的容量,通常将神经网络中某个网络层的输入特征图分块后读入AI芯片的片上缓冲,并在AI芯片上对读入的特征数据进行处理,计算完成后,将结果数据输出至片外进行存储。神经网络中的各个网络层按照上述方式逐层进行处理。
[0004]然而,上述逐层处理方式受片外存储的带宽限制较大,且需要频繁的片外访问操作,影响AI芯片对神经网络的处理效率。
技术实现思路
[0005]本申请实施例提供了一种用于AI芯片的数据处理方法、装置、芯片及计算机设备。所述技术方案包括:
[0006]一方面,本申请实施例提供了一种用于AI芯片的数据处理方法,所述方法 ...
【技术保护点】
【技术特征摘要】
1.一种用于人工智能AI芯片的数据处理方法,其特征在于,所述方法包括:获取神经网络中的连续n个网络层分别对应的缓冲区内的未消费数据的数据量;所述缓冲区是从所述AI芯片的片上缓存中分配的;所述未消费数据是对应的所述网络层后续执行时使用的数据;所述缓冲区中的数据是按照目标维度进行分块的特征数据,且所述网络层按照所述目标维度进行数据处理;n大于等于2,且n为整数;所述未消费数据由对应的所述缓冲区中新写入的数据构成;或者,所述未消费数据由对应的所述缓冲区中新写入的数据,以及所述缓冲区中未被所述网络层在上一次执行时所消费的数据构成;响应于目标输入数据的数据量满足执行条件,在所述AI芯片上执行目标网络层,以对所述目标输入数据进行处理,获得目标输出数据;所述目标输入数据是所述目标网络层对应的所述缓冲区中的未消费数据;所述目标网络层是n个所述网络层中的至少一个;将所述目标输出数据写入所述目标网络层的下一网络层对应的所述缓冲区。2.根据权利要求1所述的方法,其特征在于,所述响应于目标输入数据的数据量满足执行条件,在所述AI芯片上执行目标网络层,以对所述目标输入数据进行处理,获得目标输出数据,包括:响应于所述目标网络层的数量为至少两个,按照在所述神经网络中从深到浅的顺序,在所述AI芯片上依次执行至少两个所述目标网络层。3.根据权利要求2所述的方法,其特征在于,所述将所述目标输出数据写入所述目标网络层的下一网络层对应的所述缓冲区,包括:响应于所述目标网络层的下一网络层对应的所述缓冲区中不存在空闲的缓冲空间,将所述目标输出数据以覆盖的方式写入所述目标网络层的下一网络层对应的所述缓冲区中的已消费数据的缓冲空间;所述已消费数据是对应的所述网络层后续执行时不再使用的数据。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:响应于n个所述网络层中的第一个网络层对应的缓冲区内的未消费数据的数据量不满足所述执行条件,向所述第一个网络层对应的缓冲区内写入新的数据块,所述数据块是按照所述目标维度,从所述第一个网络层的输入特征图中切分出的特征数据。5.根据权利要求1所述的方法,其特征在于,所述获取神经网络中的连续n个网络层分别对应的缓冲区内的未消费数据的数据量之前,还包括:获取将所述AI芯片的片上缓存分配给n个所述网络层的至少两种有效划分方案;所述有效划分方案是指分配给n个所述网络层中的每个所述网络层的缓冲容量,大于对应的所述网络层执行一次所需要的输入数据的数据量的方案;获取至少两种所述有效划分方案分别对应的片外访存量;基于至少两种所述有效划分方案分别对应的片外访存量,从至少两种所述有效划分方案中确定目标划分方案;按照所述目标划分方案,从所述AI芯片的片上缓存中为n个所述网络层分配所述缓冲区。6.根据权利要求5所述的方法,其特征在于,所述基于至少两种所述有效划分方案分别对应的片外访存量,从至少两种所述有效划分方案中确定目标划分方案,包括:将至少两种所述有效划分方案中,对应的片外访存量最小的方案确定为所述目标划分
方案。7.根据权利要求1至6任一所述的方法,其特征在于,所述缓冲区中的数据是按照行进行分块的特征数据,所述网络层按行进行数据处理。8.一种用于人工智能AI芯片的数据处理装置,其特征在于,所述装置包括:数据量获取模块,用于获取神经网络中的连续n个网络层分...
【专利技术属性】
技术研发人员:李达,蒋理,
申请(专利权)人:OPPO广东移动通信有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。