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

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

一 跨层流水线调度

这里主要针对深度可分离卷积,将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,极大提升加速器吞吐量。

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

三 多算子融合

待补充

相关推荐
郝学胜-神的一滴几秒前
Pytorch张量拼接秘籍:cat与stack的深度解析与实战
人工智能·pytorch·python·深度学习·程序人生·算法·机器学习
共绩算力2 分钟前
共绩算力如何定义弹性算力:从资源整合到成本优化的全面解析
人工智能·共绩算力
Flandern11113 分钟前
Go程序员学习AI大模型项目实战:从环境管理到核心架构抽象
人工智能·python·学习·ai·golang
多年小白3 分钟前
谷歌Gemma 4开源模型实战解析:31B参数登顶全球前三,Apache 2.0全开放
人工智能·科技·开源·知识图谱
爱代码的小黄人5 分钟前
10分钟讲清楚 Prompt、Agent、MCP 是什么
人工智能·prompt
李子焱8 分钟前
第一节:AI Agent与Skills的本质重构
人工智能·重构·skills
海兰9 分钟前
【分析思考】资管行业科技智能化转型
人工智能·科技·银行系统
Thomas.Sir10 分钟前
第十二章:RAG知识库开发之【RAG的预检索和后检索:核心优化策略与实践】
人工智能·python·ai·rag·预检索·后检索
yunhuibin11 分钟前
yolov3学习之训练原理
人工智能·深度学习·神经网络·yolo
做cv的小昊13 分钟前
【TJU】应用统计学——第四周作业(2.3 C-R不等式、2.4区间估计)
c语言·人工智能·算法·机器学习·数学建模·r语言·概率论