On-Chip Communication Network for Efficient Training of Deep Convolutional Networks on Heterogeneous Manycore Systems
| 作者: |
Wonje Choi; Radu Marculescu |
| 机构: |
Washington State University |
| Conf/Jour: |
IEEE TRANSACTIONS ON COMPUTERS |
| 时间: |
2017 |
目录
Summary
在基于传统的基于CPU-GPU的异构多核平台中使用的典型的片上通信基础结构无法有效地满足CPU和GPU的通信需求。为了解决此问题,我们首先分析由芯片上的流量模式,这些流量是由与训练两种深层CNN架构LeNet和CDBNet的计算过程产生的,以进行图像分类。利用这些知识,我们设计了一种混合的片上网络(NoC)架构,该架构包含有线和无线连接,以提高运行上述CNN训练工作负载的基于CPU-GPU的异构多核平台的性能。与高度优化的有线网状(highly-optimized wireline mes)NoC相比,提出的NoC减少了1.8的网络等待时间,并将网络训练吞吐量提高了2.2倍。
Contribution:
我们探索了异构(即cpu和gpu的组合)系统与混合(即有线和无线链路的组合)NoC架构相结合的深度学习。我们通过严格的实验证明,所提出的NoC在使cnn的训练速度加快15%的同时,实现了25%的全系统能量延迟乘积(Energy Delay Product (EDP))的降低。
Basis
- CNN的训练除了高数据并行外,还需要大量的数据传输,比如相邻CNN层间的数据转发(forwarding)和存储。在离散的GPU系统中,CPU和GPU之间的通信是通过片外互联如PCIe实现的,延迟大、功耗高。异构单芯片多处理器(heterogeneous single chip multichip,CMP)中,CPU和GPU可以通过片上网络互联。
- 因此,本文:我们设想一种数据中心芯片(DoC)体系结构,专门针对深度学习应用,其中整个系统或其大部分可以使用基于多核的异构单芯片体系结构进行设计。这种大规模集成情况下,传统的tree、mesh、ring等不能提供可扩展、低延迟、节能的通信。
- 研究表明,基于毫米波的WiNoC在可实现带宽和能量消耗方面优于传统的有线NoC架构[13]。
- 跳数信息从源到目的地所需要的跳数(或它穿过的连接数)。最大hop count就是网络的直径。平均hop count常代表网络的传输延时。假设相同数量的node,每个node发送的概率相同,则ring的hop count要更高一些。比如最大hop count,ring是4,mesh是4,torus是2。
- 包含CPU,GPU的异构架构:many-to-few的通信方式,多个GPU可以被连接在一个router上。GPU-MC的通讯对throughput更敏感,CPU-MC的通信对延迟更敏感。
Background
训练cnn涉及大量CPU GPU通信,最适合于NoC支持的异构CPU-GPU-CMP平台,而不是传统的具有昂贵片外CPU -GPU数据传输的离散GPU系统[9]。由于CPU和GPU的线程级并行性不同,用于异构系统的NoC被期望处理具有不同服务质量(QoS)约束的流量模式[31]。CPU对内存访问时间非常敏感,因此涉及CPU的通信需要低延迟的数据交换。另一方面,GPU通信要求高带宽[31]。现代用于离散GPU系统的NoC设计通常只试图最大化系统的整体带宽。因此,这些NoC设计不适合在同一个芯片上集成多个CPU和GPU的异构CMP架构。研究表明,异构系统中的共享内存资源常常被GPU独占,导致CPU内存访问延迟的显著降低和高执行时间惩罚[32]。因此,一个为异构CMP设计的高效片上网络应该平衡核心间的流量,并符合CPU和GPU通信所需的不同QoS标准。
到目前为止,大多数针对离散GPU系统的NoC都是基于传统的有线NoC架构。由于与这些NoC相关的固有限制,所提出策略的可实现性能效益受到限制。传统的有线NoC(如mesh)使用多跳multi-hop、分组交换packet-switched通信,这导致了高网络延迟[10]。为了克服这些限制,人们提出了基于smallworld网络的无线NoC架构[11],[12]。事实上,通过使用一些远程无线快捷方式,这些体系结构甚至可以在物理上相距很远的计算核心之间实现低延迟通信。以往的工作[35]、[36]、[37]已经研究了片上无线通信的可行性。片上无线通信的可行性已经通过原型[13]得到了证明。此外,最近一项关于新兴片上互连的研究得出结论,射频(RF)链路(例如,mmwave无线和表面波互连)比片上光链路具有更高的功率和成本效益[38]。在两个射频互连之间,片上无线技术更为成熟,完全兼容CMOS[12],[38]。在设计由无线链路支持的NoC时,需要注意的是,可以添加到NoC中的无线接口(WIs)的数量通常受到许多因素的限制。这些因素包括:(1)所采用的介质访问控制(MAC)协议的性质,(2)允许添加WIs的面积和功率开销。因此,有必要使用创新的系统架构设计来充分挖掘无线noc的潜力[39]。为了实现这一目标,在本论文中,我们提出了一种混合(有线+无线)片上互连架构,以满足由CPU和GPU核组成的异构CMP平台中特有的通信需求。
Method
在CPU和MC之间采用single-hop无线连接(无论距离远近,可以保证单跳);GPU和MC之间采用无线加有线连接;
建模:
对于R个router;L个links,对应的link k的利用是:
其中Pij是指router i 到router j的通信;fij指频率;优化Uk的平均值,也即是优化整个网络的通信过程中的总跳数目;优化Uk的标准差,也即是平衡各个link的利用率。
针对有线网络连接的优化:一种模拟退火算法:AMOSA;
针对无线网络连接:首先替换有线网络中延迟大的连接;ALASH算法;还用了distributed MAC 协议