通过重新思考计算堆栈的所有层,包括硬件、软件和软硬件基本方法和方案 [1, 2, 4]。由于有望同时实现密集存储和节能模拟处理,基于非易失性电阻技术的内存计算已成为克服上述挑战的一种有吸引力的解决方案。非易失性电阻器件是一种具有可编程电阻的双端器件,可以使用忆阻器 [11, 35]、电阻随机存取存储器 (ReRAM) [23, 38]、相变存储器 (PCM) [20, 39] 或自旋转移力矩磁性随机存取存储器 (STT-RAM) [18, 31] 来实现。通过将新兴设备集成到电阻交叉阵列 (RCA) 中,可以在模拟域中执行近似矩阵向量乘法 (MVM)。这是很有希望的,因为计算比数字域中的能源效率高得多(数量级)[17]。通过将矩阵存储在内存中并现场执行计算,数据移动也大大减少[9, 32]。此外,MVM 是许多 AI 应用中的主要计算,例如深度学习 [22]、图像处理 [24] 和图形分析 [34]。利用模拟内存计算的主要挑战是,各种错误和变化源可能会降低计算精度。这包括设备写入错误、非零阵列寄生效应、有限的设备产量、电阻漂移、温度变化、随机电报噪声和有限的设备耐久性。此外,在模拟域中引入的任何错误都可能损害加速应用程序的功能正确性。例如,神经网络的硬件分类准确性可能明显低于软件级别。相反,数字计算系统中的稳健性问题只会引入时序违规,可以使用动态电压频率缩放 (DVFS) 来缓解。为了在系统级性能上提供保证,需要在设备级、算法级和软件应用程序级进行协同创新。虽然设备级研究人员不断尝试改进制造设备的特性,但开发所需的算法和软件级支持变得迫在眉睫。在本文中,我们回顾了使用模拟内存计算加速 AI 应用所面临的挑战、解决方案和未来研究方向。第 4 节概述了未来研究的机会。第 2 节讨论了模拟矩阵向量乘法的基本概念、目标 AI 应用以及不同误差的建模。第 3 节回顾了在算法和软件层面上提高对误差的鲁棒性的最新解决方案。第 5 节总结了本文。