神经网络处理器优化设计(一)

神经网络处理器优化设计,涉及到一些特殊和通用处理流程,一是降低硬件成本,二是提高性能。

一 跨层流水线调度

这里主要针对深度可分离卷积,将Pointwise conv与Depthwise卷积并行处理,好处是,减小整体流水时延,增加吞吐量,同时隐藏中间层数据写入/读出DDR。需要平衡两者之间的缓存和吞吐速率。

二 输入通道聚合

通常,输入特征图第一层输入的通道一般是RGB三通道或者单通道(灰度图或者红外)。而我们自己在设计神经网络处理器的输入通道并行度Tn时,一般Tn远大于3或者1,因此会在计算第一层输入特征图的卷积计算时,导致计算单元利用率较低。如下图所示。

以Tn=32,Kernel=3*3为例,通道聚合前,第一层卷积计算过程中,一个时钟周期,计算引擎32个输入并行度仅有3个特征图通道参与有效计算,PE计算利用率仅有3/32,造成计算资源浪费;按照图b,对输入通道进行重排和聚合后,在一个时钟周期内,计算引擎可以并行计算27个通道的卷积计算(一个完整3*3卷积窗口重排聚合为27的并行像素),PE计算效率提升为27/32,极大提升加速器吞吐量。

接下来给出一种简化的通道聚合硬件实现方案。该方案以较小的资源消耗和代价,数据调度架构和控制和其他层处理复用相同逻辑,只是针对第一层特征图做一些预处理,即可完成通道融合处理。

三 多算子融合

待补充

相关推荐
草莓熊Lotso26 分钟前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
Coder_Boy_2 小时前
技术发展的核心规律是「加法打底,减法优化,重构平衡」
人工智能·spring boot·spring·重构
会飞的老朱4 小时前
医药集团数智化转型,智能综合管理平台激活集团管理新效能
大数据·人工智能·oa协同办公
聆风吟º5 小时前
CANN runtime 实战指南:异构计算场景中运行时组件的部署、调优与扩展技巧
人工智能·神经网络·cann·异构计算
Codebee7 小时前
能力中心 (Agent SkillCenter):开启AI技能管理新时代
人工智能
聆风吟º8 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys8 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_56788 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子8 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
maverick_1118 小时前
【FPGA】 在Verilog中,! 和 ~ 的区别
fpga开发