【技术实现步骤摘要】
操作处理方法、装置、用于操作处理的装置及存储介质
[0001]本专利技术涉及通信
,特别是涉及一种操作处理方法、一种操作处理装置、一种用于操作处理的装置以及一种存储介质。
技术介绍
[0002]深度学习是人工智能领域一个热门方向,广泛应用于搜索技术、图形图像处理、数据挖掘、机器学习、机器翻译、自然语言处理等各个领域。典型的深度学习模型有CNN(Convolutional Neural Networks,卷积神经网络)模型,主要应用于图形图像处理方面。
[0003]基于CNN的深度学习模型中通常大量使用循环结构,在循环次数较大的情况下,不仅循环次数较多,导致循环操作较为耗时,而且大量的循环计算需要多次进行内存访问,严重影响深度学习模型的性能。
技术实现思路
[0004]鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种操作处理方法,以优化卷积神经网络模型中的循环结构,减少循环次数,进而提高深度学习模型的性能。
[0005]相应的,本专利技术实施例还 ...
【技术保护点】
【技术特征摘要】
1.一种操作处理方法,其特征在于,应用于卷积神经网络模型,所述方法包括:从所述卷积神经网络模型的池化算子中提取待转换的循环结构;确定循环结构中参与循环计算的操作数;定义与所述操作数的数据类型相匹配向量数据,其中,每个向量数据包含预设个数的操作数;将所述循环结构中对所述操作数进行循环计算的循环体语句转换为对所述向量数据进行循环计算的单指令多数据流SIMD指令;执行转换后的循环结构,并且在至少一次的循环计算中,通过执行所述SIMD指令对所述预设个数的操作数并行进行循环计算。2.根据权利要求1所述的方法,其特征在于,所述在至少一次的循环计算中,通过执行所述SIMD指令对所述预设个数的操作数并行进行循环计算,包括:若所述循环结构的循环次数是所述预设个数的整数倍,则在每一次的循环计算中,通过执行所述SIMD指令对所述预设个数的操作数并行进行循环计算,直到循环结束;或者,若所述循环结构的循环次数不是所述预设个数的整数倍,则在最后一次的循环计算中,通过执行转换前的循环体语句对剩余的操作数进行循环计算。3.根据权利要求1所述的方法,其特征在于,所述将所述循环结构中对所述操作数进行循环计算的循环体语句转换为对所述向量数据进行循环计算的SIMD指令之前,所述方法还包括:定义用于指向所述操作数的偏移地址的指针变量;所述在至少一次的循环计算中,通过执行所述SIMD指令对所述预设个数的操作数并行进行循环计算,包括:在至少一次的循环计算中,根据所述指针变量指向的偏移地址读取所述预设个数的操作数;通过执行所述SIMD指令对所述预设个数的操作数并行进行循环计算;所述通过执行所述SIMD指令对所述预设个数的操作数并行进行循环计算之后,所述方法还包括:将所述偏移地址移动所述预设个数的操作数对应的长度,并将移动后的偏移地址赋值给所述指针变量,以在下一次的循环计算中依据移动后的偏移地址读取预设个数的操作数。4.根据权利要求1所述的方法,其特征在于,所述将所述循环结构中对所述操作数进行循环计算的循环体语句转换为对所述向量数据进行循环计算的SIMD指令之前,所述方法还包括:确定所述循环结构中循环体语句的操作类型;所述将所述循环结构中对所述操作数进行循环计算的循环体语句转换为对所述向量数据进行循环计算的SIMD指令,包括:确定与所述操作类型相匹配的SIMD指令内置函数;基于所述SIMD指令内置函数,将所述循环结构中对所述操作数进行循环计算的循环体语句转换为对所述向量数据进行循环计算的SIMD指令。5.根据权利要求4所述的方法,其特征在于,所述操作类型包括比较操作类型和/或赋
值操作类型。6.根据权利要求1至5任一所述的方法,其特征在于,所述待转换的循环结构的循环次数超过第一阈值,和/或,所述待转换的循环结构的被调用次数超过第二阈值。7.根据权利要求1至5任一所述的方法,其特征在于,所述SIMD指令为无内部互锁流水级的微处理器MIPS平台中的MSA指令。8.一种操作处理装置,其特征在于,应用于卷积神经网络模型,所述装置包括:结构确定模块,用于从所述卷积神经网络模型的池化算子中提取待转换的循环结构;数据确定模块,用于确定循环结构中参与循环计算的操作数;向量定义模块,用于定义与所述操作数的数据类型相匹配向量数据,其中,每个向量数据包含预...
【专利技术属性】
技术研发人员:张强,彭飞,李明星,
申请(专利权)人:龙芯中科合肥技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。