小批量序列化:利用层间数据复用的 CNN 训练方法
机器学习
2019-05-07 v4 硬件体系结构
摘要
训练卷积神经网络(CNNs)需要密集的计算和高内存带宽。我们发现当今的带宽存在过度配置,因为 CNN 训练中的大多数内存访问可通过重新安排计算以更好地利用片上缓冲区并避免由每层较大的内存占用所引起的流量来消除。我们提出了 MBS CNN 训练方法,该方法通过跨层组部分序列化小批量处理来显著减少内存流量。这优化了片上缓冲区内的复用,并平衡了层内与层间复用。我们还提出了 WaveCore CNN 训练加速器,其以高功能单元利用率在 MBS 方法下高效地训练 CNNs。与传统训练机制和加速器相比,WaveCore 与 MBS 相结合可将 DRAM 流量减少 75%,将性能提升 53%,并为现代深度 CNN 训练节省 26% 的系统能耗。
引用
@article{arxiv.1810.00307,
title = {Mini-batch Serialization: CNN Training with Inter-layer Data Reuse},
author = {Sangkug Lym and Armand Behroozi and Wei Wen and Ge Li and Yongkee Kwon and Mattan Erez},
journal= {arXiv preprint arXiv:1810.00307},
year = {2019}
}