Skip to main content
QUICK REVIEW

[论文解读] Dynamic Stripes: Exploiting the Dynamic Precision Requirements of Activation Values in Neural Networks

Alberto Delmás, Patrick Judd|arXiv (Cornell University)|Jun 1, 2017
Advanced Neural Network Applications参考文献 2被引用 15
一句话总结

Dynamic Stripes 为深度神经网络加速器引入了一种运行时精度自适应技术,通过检测每组16个激活值的最小所需精度,动态减少位串行计算。与按层进行精度分析相比,该技术在更细粒度上实现可变精度,相较于基线 Stripes 设计实现了41%的性能提升,相较于 DaDianNao 在现代CNN上最高实现3.28倍的加速。

ABSTRACT

Stripes is a Deep Neural Network (DNN) accelerator that uses bit-serial computation to offer performance that is proportional to the fixed-point precision of the activation values. The fixed-point precisions are determined a priori using profiling and are selected at a per layer granularity. This paper presents Dynamic Stripes, an extension to Stripes that detects precision variance at runtime and at a finer granularity. This extra level of precision reduction increases performance by 41% over Stripes.

研究动机与目标

  • 为解决如 Stripes 等DNN加速器中固定按层精度导致的效率低下问题,该问题未能充分利用动态精度变化。
  • 探究是否可通过细粒度、运行时优化的精度选择(细化至每16个激活值为一组)显著提升性能。
  • 设计并评估一种软硬件协同方案,实现实时检测每组激活值的最小所需精度(nH 和 nL)。
  • 将动态精度自适应与静态分析及替代优化策略(如 Pragmatic 的1位检测)进行性能对比。

提出的方法

  • 系统使用调度器,通过基于或门的最高有效位(nH)和最低有效位(nL)检测电路,检测每组16个激活值中1的最高位和最低位位置。
  • 一个4位偏移编码器将nH和nL值传输至处理单元,支持从nH开始、到nL结束的位串行计算。
  • 每个处理单元使用经过修改的串行内积单元(SIP),通过受nH/nL偏移控制的右移位器,确保部分积正确对齐。
  • 系统采用计数器与比较器,通过结束组信号(EOG)线在每组处理完成后发出信号,确保各处理单元间同步。
  • 该设计支持每组精度动态调整,无需全宽数据通路,从而最小化面积与带宽开销。
  • 该方法通过扩展支持动态精度检测的周期精确模拟器进行评估,结果与 Stripes 和 DaDianNao 进行对比。

实验结果

研究问题

  • RQ1在DNN加速器中,是否能在16个激活值为一组的粒度上,通过动态、细粒度的精度自适应显著优于按层精度分析?
  • RQ2通过实时检测并利用激活值的实际动态精度需求,可实现多大程度的性能提升?
  • RQ3与替代优化策略(如 Pragmatic 的1位检测或固定精度计算)相比,动态精度降低有何优势?
  • RQ4在组级别支持动态精度检测的硬件开销与面积开销是多少?
  • RQ5所提出的方法是否能与基于数值的优化(如截断低有效位的1比特)有效结合,以进一步提升性能?

主要发现

  • Dynamic Stripes 通过在16个激活值为一组的粒度上实现每组精度自适应,相较于基线 Stripes 加速器实现了41%的性能提升。
  • 相较于 DaDianNao,其在不同网络上的加速比范围为1.27x至3.28x,几何平均加速比为2.61x。
  • 在 AlexNet 上,结合动态精度与基于数值的优化(如截断低有效位的1比特),使用全范围移位器可实现4.83倍的加速。
  • 该方法通过消除在无用位上的冗余位串行操作,显著减少了计算周期,尤其在1比特稀疏的激活值中效果明显。
  • 硬件扩展每组16个激活值仅增加5根线(4根用于偏移,1根用于EOG),面积与带宽开销极低。
  • 性能提升在 VGG-S 和 GoogLeNet 等网络中最为显著,动态精度自适应显著减少了计算周期。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。