《有序混乱:针对边缘设备的不规则连接神经网络的内存感知调度》(五)

SERENITY 的调度时间。

图 13 总结了 SERENITY 为调度网络所花费的(静态)调度时间。结果显示,平均调度时间为 40.6 秒(未进行图重写)和 48.8 秒(进行图重写),差异来源于图重写后节点数量的增加。结果表明,SERENITY 的所有上述收益平均只增加了不到一分钟的编译时间。尽管基于动态编程的调度存在指数时间复杂度,SERENITY 通过提出的分治和自适应软预算方法,使调度变得可处理。
在这里插入图片描述

通过分治和自适应软预算加速

表 2 总结了 SwiftNet(Zhang et al., 2019)在不同算法下的调度时间,以展示分治和自适应软预算技术带来的加速。因此,表中列出了不同算法组合、节点数量及其对应的调度时间。上述基于动态编程的调度的直接实现导致无论是否进行图重写,调度时间均无法测量。然而,额外应用分治(1 + 2)导致了可测量的调度时间:未进行图重写的调度时间为 56.53 秒,进行图重写时为 7.29 小时。此外,我们观察到,进一步应用自适应软预算(1 + 2 + 3)显著减少了调度时间,未进行图重写时为 37.9 秒,进行图重写时为 111.9 秒。上述结果表明,应用所提算法可以实现实际可用的调度时间。

在这里插入图片描述

表 2. 不同算法调度 SwiftNet 的调度时间比较。1、2 和 3 分别代表动态编程、分治和自适应软预算。N/A 表示在实际时间内不可行。

相关工作

神经网络的普及导致了多个用于深度学习的编译框架的发展(Abadi et al., 2016; Paszke et al., 2019; Rotem et al., 2018; Cyphers et al., 2018)。然而,甚至行业级工具大多专注于常规硬件(NVIDIA, 2017; Google)或加速器(Chen et al., 2016; 2014; Han et al., 2016a; Judd et al., 2016; Jouppi et al., 2017; Gao et al., 2017; Parashar et al., 2017; Sharma et al., 2018; Fowers et al., 2018)上微操作的切分和细粒度调度。然而,这些框架大多是为从深度学习几乎开始以来主宰的常见规则模式设计的。因此,这些工具本质上没有激励去处理新兴 NAS(Zoph & Le, 2017; Cortes et al., 2017; Zoph et al., 2018; Liu et al., 2019a; Cai et al., 2019; Real et al., 2019; Zhang et al., 2019)和随机网络(Xie et al., 2019; Wortsman et al., 2019)带来的不规则形式。相对而言,本文关注于这一突破常规规则的新兴类别,并旨在使其在内存受限的边缘设备上执行。

神经网络的调度与切分

虽然以往关于调度的工作(Lee et al., 2003; Keßler & Bednarski, 2001; Wilken et al., 2000)侧重于经典计算工作负载,但在神经网络领域关于调度的影响研究相对有限。还有大量关于在硬件加速器上调度操作(Abdelfattah et al., 2018)的工作,这些工作也考虑了切分(Chen et al., 2018; Vasilache et al., 2018; Liu et al., 2019b; Ahn et al., 2020)。然而,针对不规则连接神经网络的图调度,特别是带有内存限制的调度,是一个新兴问题,这是本文的重点。

神经网络的图重写

使用基于规则的(Abadi et al., 2016; Paszke et al., 2019; Rotem et al., 2018; Cyphers et al., 2018; NVIDIA, 2017)或系统化的方法重写图的部分以暴露并行性并使模型更具目标意识(Jia et al., 2018; 2019; Schosser & Geiß, 2007)已成为一种常见做法。虽然这些方法可能在一定程度上减轻图的复杂性,并作为副作用减少峰值内存占用,但这些框架并未探索且不关心调度。我们的工作专门探讨了在改善峰值内存占用的背景下进行图重写。

优化神经网络

有不同的优化技术旨在以不同维度简化神经网络。稀疏化/压缩(LeCun et al., 1990; Han et al., 2015; Zhu & Gupta, 2018; Anwar et al., 2017)、量化(Han et al., 2016b; Courbariaux et al., 2016; Zhou et al., 2016; Mishra & Marr, 2018; Esser et al., 2020)、激活压缩(Jain et al., 2018)和内核修改减少了个别操作的复杂性或移除某些计算。然而,我们关注的内存感知图调度问题仍与这些鼓舞人心的努力相互独立。

结论

随着神经网络中新连接形式的出现,需要系统支持以有效利用它们,特别是在边缘进行智能处理。本文采取了初步措施,以在严格的物理内存容量限制下协调此类网络。我们设计了签名以启用动态编程和自适应软预算,使优化变得可处理。更重要的是,开发了一种身份图写入以进一步提高潜在收益。对一系列新兴网络的鼓舞人心的结果表明,编译器技术在支持新形态智能工作负载方面有显著潜力。

猜你喜欢

转载自blog.csdn.net/weixin_38498942/article/details/143213801