Analog computing has reemerged as a promising avenue for accelerating deep neural networks (DNNs) due to its potential to overcome the energy efficiency and scalability challenges posed by traditional digital architectures. However, achieving high precision and DNN accuracy using such technologies is challenging, as high-precision data converters are costly and impractical. In this paper, we address this challenge by using the residue number system (RNS). RNS allows composing high-precision operations from multiple low-precision operations, thereby eliminating the information loss caused by the limited precision of the data converters. Our study demonstrates that analog accelerators utilizing the RNS-based approach can achieve ${\geq}99\%$ of FP32 accuracy for state-of-the-art DNN inference using data converters with only $6$-bit precision whereas a conventional analog core requires more than $8$-bit precision to achieve the same accuracy in the same DNNs. The reduced precision requirements imply that using RNS can reduce the energy consumption of analog accelerators by several orders of magnitude while maintaining the same throughput and precision. Our study extends this approach to DNN training, where we can efficiently train DNNs using $7$-bit integer arithmetic while achieving accuracy comparable to FP32 precision. Lastly, we present a fault-tolerant dataflow using redundant RNS error-correcting codes to protect the computation against noise and errors inherent within an analog accelerator.
翻译:模拟计算因其在克服传统数字架构在能效与可扩展性方面的瓶颈方面具有潜力,已重新成为加速深度神经网络(DNN)的重要方向。然而,利用此类技术实现高精度与DNN准确度极具挑战性,因为高精度数据转换器成本高昂且不切实际。本文通过采用余数系统(RNS)应对这一挑战。RNS能够通过组合多个低精度运算实现高精度操作,从而消除由数据转换器精度限制导致的信息损失。研究表明,基于RNS方法的模拟加速器在使用仅6位精度的数据转换器时,即可实现最先进DNN推理中FP32精度${\geq}99\%$的准确度,而传统模拟核心在相同DNN中需超过8位精度才能达到同等准确度。精度要求的降低意味着使用RNS可在保持相同吞吐量与精度的条件下,将模拟加速器的能耗降低数个数量级。本研究将该方法推广至DNN训练领域,通过7位整数算术即可高效训练DNN,并达到与FP32精度相当的准确度。最后,我们提出一种基于冗余RNS纠错码的容错数据流,用于保护模拟加速器中固有噪声与误差影响下的计算过程。