非阻塞同步多线程:利用深度神经网络的算法弹性
机器学习
2020-09-21 v2 硬件体系结构
计算机视觉与模式识别
信号处理
摘要
深度神经网络(DNNs)因硬件易受稀疏激活与权重影响而无法充分利用底层硬件资源而著称。即便在更细粒度上,许多非零值也含有一定比例的零值位,在硬件上执行时可能导致效率低下。受传统 CPU 同步多线程(SMT)通过跨多个线程共享资源以提高计算机资源利用率的启发,我们提出了面向 DNN 加速器的非阻塞 SMT(NB-SMT)。与传统 SMT 类似,NB-SMT 在多个执行流之间共享硬件资源。然而,与 SMT 不同,NB-SMT 是非阻塞的,因为它通过利用 DNN 的算法弹性来处理结构冒险。NB-SMT 并非在指令于保留站中等待可用硬件时机会主义地分发指令,而是临时降低计算精度以一次性容纳所有线程,从而实现非阻塞操作。我们使用 SySMT(一种支持 NB-SMT 的输出驻留 systolic array(OS-SA))证明了 NB-SMT 的适用性。与传统的 OS-SA 相比,2 线程 SySMT 占用 1.4 倍面积,在 ImageNet 上实现 2 倍加速与 33% 的能耗节省,且最先进 CNNs 的精度下降小于 1%。4 线程 SySMT 占用 2.5 倍面积,例如对 40% 剪枝的 ResNet-18 实现 3.4 倍加速与 39% 能耗节省,精度下降 1%。
引用
@article{arxiv.2004.09309,
title = {Non-Blocking Simultaneous Multithreading: Embracing the Resiliency of Deep Neural Networks},
author = {Gil Shomron and Uri Weiser},
journal= {arXiv preprint arXiv:2004.09309},
year = {2020}
}
备注
MICRO-53