当前,卷积神经网络(Convolutional Neural Network,CNN)被广泛应用在图像分类、目标检测等领域,嵌入式计算平台是较为常见的应用设备之一。由于单一计算资源难以有效应对较为复杂的计算任务,异构多核逐渐成为目前较为主流的嵌入式处理器架构。但相较于高性能计算机,嵌入式计算平台始终存在存储和计算资源有限的问题,CNN部署于此类平台后,其计算速度往往有所下降。 一方面,CNN算法的复杂度与参数量与日俱增,在落地部署时会出现参数冗余的问题,占用过多计算资源;另一方面,嵌入式异构多核平台会将CNN计算流程中的预处理、推理、后处理任务分配给不同的处理器核心执行,凭借AI加速器适配于卷积运算的硬件设计与并行计算框架,推理部分的计算速度相对较快,但预处理和后处理通常在并行度较低的CPU上进行,因此二者的计算速度受到限制,其耗时甚至远远超出推理用时。 针对应用于异构多核计算平台的图像处理技术,本文考虑采用轻量化策略以解决CNN算法参数冗余的问题,并充分利用硬件平台异构多核架构的特点,整合计算资源,实现图像预处理、后处理以及整体处理流程的并行计算,寻求从各处理阶段到整体流程的多层次计算加速优化。主要研究工作总结如下: (1)CNN算法轻量化:以YOLOv5为例,采取剪枝、量化、主干网络替换等轻量化策略对部署的CNN算法进行推理计算加速。选用Min Max量化、KL散度量化作为主要使用的量化方法;设计通道剪枝,选取批量归一化层的缩放因子作为重要性评估标准,通过L1正则化进行稀疏化训练;选取两种轻量化网络结构进行主干网络替换与模块化设计;最后通过实验证明了轻量化方法的有效性。 (2)并行计算加速设计:基于Yulong810A的异构多核架构特点,对于图像预处理,结合NEON指令集、Open MP在CPU上进行加速,结合Open VX并行计算框架在GPU上进行加速,对于图像后处理,使用Open MP对简单循环结构作并行加速。最后,对上述方法进行实验验证,实验结果表明,各方法均有效起到加速作用,其中GPU的加速效果最为明显。 (3)多线程方案设计:将预处理-推理-后处理的整体流程分解为各个单独线程,并创建多个相同结构的Graph,各线程流水线式获取Graph执行对应阶段的计算任务,利用不同任务线程在不同处理器核心上同时执行的时间重叠性以缩短耗时。最后整合各阶段的加速方法,通过实验检测多线程处理在不同组合下的加速效果,实验结果验证了该加速方案的有效性。 摘要译文
异构多核; 嵌入式平台; 卷积神经网络; 轻量化; 并行计算加速
TP391.41[图形图像识别];TP183[人工神经网络与计算]
140502[人工智能];081103[系统工程];081104[模式识别与智能系统];081107[建模仿真理论与技术]
10.27728/d.cnki.gdzkx.2025.000132