中文

FPDeep:基于深度流水线 FPGA 集群的 CNN 训练可扩展加速框架

机器学习 2020-06-23 v4 硬件体系结构 分布式、并行与集群计算 机器学习

摘要

深度神经网络(DNN)已彻底改变了众多应用,但对更高性能的需求仍未减弱。将 DNN 计算扩展到更大集群的通用做法是通过分布式同步 SGD 等方法以批处理模式分发任务。该方法存在的问题之一是,为使分布式集群保持高利用率,分发到每个节点的工作负载必须足够大,这意味着 SGD 小批量尺寸的非平凡增长。本文提出一种称为 FPDeep 的框架,它采用模型并行与层并行的混合方式来配置分布式可重配置集群以训练 DNN。该方法具有诸多优势。首先,该设计不受批量尺寸增长的影响。其次,新颖的工作负载与权重划分使得各节点间两者负载均均衡。第三,整个系统是一条细粒度流水线。这带来了高并行度与高利用率,并最小化了特征在等待反向传播时所需缓存的时间。因此,存储需求被降低至仅使用片上存储器用于卷积层。我们使用 Alexnet、VGG-16 和 VGG-19 基准测试评估 FPDeep。实验结果表明,FPDeep 对大量 FPGA 具有良好的可扩展性,限制因素在于 FPGA 间带宽。在每个 FPGA 具有 6 个收发器的情况下,FPDeep 在多达 83 个 FPGA 时仍呈现线性扩展。能效以 GOPs/J 评估。FPDeep 平均提供比可比 GPU 服务器高 6.36 倍的能效。

关键词

引用

@article{arxiv.1901.01007,
  title  = {FPDeep: Scalable Acceleration of CNN Training on Deeply-Pipelined FPGA Clusters},
  author = {Tong Geng and Tianqi Wang and Ang Li and Xi Jin and Martin Herbordt},
  journal= {arXiv preprint arXiv:1901.01007},
  year   = {2020}
}

备注

Accepted by IEEE TRANSACTIONS ON COMPUTERS (TC)