FEATHER Accelerator

FEATHER(Flexible Engine for Acceleration of Tensors with Hardware Element for Reordering)是 Georgia Tech 提出的可重构 ML 推理加速器:在每层切换最优 (dataflow, layout) 对,用 RIR(Reorder in Reduction)在归约阶段隐式重排片上 buffer 布局,消除 bank conflict 与显式 reorder 延迟。

Authors: Jianming Tong, Anirudh Itagi, Prasanth Chatarasi, Tushar Krishna | arXiv: 2405.13170 (2024) | Code: https://github.com/maeri-project/FEATHER

核心问题:dataflow–layout 失配

DNN 层 dataflow 由 loop nest 的 TOPS 四维定义:

维度含义
Tiling分块适配片上存储
Orderingloop 顺序 / stationarity(input/output/weight)
Parallelism空间并行维度
ShapePE 阵列虚拟分组

Timeloop 等框架只建模 buffer 带宽,忽略 layout(inter-line / intra-line 维度顺序)→ 最优 dataflow 在 practice 中可慢 128×(bank port 冲突 stall PE)。

discordant (dataflow, layout) → 同 cycle 读 > NP 个 bank line → slowdown
concordant → 无 bank conflict

片上 buffer 逻辑为 num_line × line_size 2D 阵列;TSMC 28nm SRAM 每 bank 最多 2 port——并发访问超 port 数即冲突。

架构(Fig. 7)

StaB/StrB (ping-pong) → NEST (2D PE) → BIRRD → OB → Quantize → StaB (新 layout)
组件功能
NESTNeural Engine with Spatial forwarding + Temporal reduction;2D PE 阵列,行时分复用共享归约网络(vs MAERI/SIGMA 全互联)
BIRRDButterfly Interconnect for Reduction and Reordering in Dataflows;EGG 开关:Pass/Swap/Add-Left/Add-Right
StaB / StrBStationary / Streaming ping-pong buffer
RIR归约输出 oActs 时直接写入下一层 concordant layout,非 RAR(Reorder After Reduction)

NEST 两阶段

  1. Phase 1:PE 内 local temporal reduction(partial sum 累加)
  2. Phase 2:按依次 spatial reduction(BIRRD 时分),同列 PE 共享 output bus 无冲突

结合 ping-pong weight 寄存器,steady state 全 PE 利用。

BIRRD vs prior art

能力SIGMA/MAERIBIRRD
归约全互联 / fat-tree,面积大蝶形网络,AW×AH 行共享
重排无 / 片外 / RAR(critical path)Arbitrary reorder + RIR
分发需复杂 multicast NoCRIR 对齐 layout → 点对点直送 NEST

Reorder pattern 谱系:Fixed → Line Rotation → Transpose → Row Reorder → Arbitrary(FEATHER);仅 Arbitrary 扩展 O/P/S 全 concordant 空间。

Layoutloop

Timeloop 增强版:物理 storage 建模(num_line × line_size、conflict depth、NP port)+ layout 评估 + dataflow-layout co-search(每层最小 EDP)。

Insight:weights 可 offline reorder;iActs 须 online reorder——RIR 在 compute 归约中完成。

评估摘要

设置结果
Layoutloop vs NVDLA/Eyeriss/SIGMA延迟 1.27–2.89×,能效 1.3–6.43×(ResNet-50、MobileNet-V3)
ZCU104 FPGA vs Gemmini / Xilinx DPU3.91× / 2.65× 归一化吞吐;vs Edge TPU 4.56× geomean
vs 固定 dataflow Eyeriss-like面积仅 +6%
(dataflow, layout) co-switch能效节省 27–33%(含 reorder 开销)

与 wiki 的关系

相关页面

Citations

[1] FEATHER_Reconfigurable_Accelerator_Dataflow_Switching_2024.pdf — Tong et al. (2024), arXiv:2405.13170