We introduce the IBM Analog Hardware Acceleration Kit, a new and first of a kind open source toolkit to simulate analog crossbar arrays in a convenient fashion from within PyTorch (freely available at https://github.com/IBM/aihwkit). The toolkit is under active development and is centered around the concept of an "analog tile" which captures the computations performed on a crossbar array. Analog tiles are building blocks that can be used to extend existing network modules with analog components and compose arbitrary artificial neural networks (ANNs) using the flexibility of the PyTorch framework. Analog tiles can be conveniently configured to emulate a plethora of different analog hardware characteristics and their non-idealities, such as device-to-device and cycle-to-cycle variations, resistive device response curves, and weight and output noise. Additionally, the toolkit makes it possible to design custom unit cell configurations and to use advanced analog optimization algorithms such as Tiki-Taka. Moreover, the backward and update behavior can be set to "ideal" to enable hardware-aware training features for chips that target inference acceleration only. To evaluate the inference accuracy of such chips over time, we provide statistical programming noise and drift models calibrated on phase-change memory hardware. Our new toolkit is fully GPU accelerated and can be used to conveniently estimate the impact of material properties and non-idealities of future analog technology on the accuracy for arbitrary ANNs.
翻译:我们引入了IBM Analog 硬件加速工具包(IBM Analog 硬件加速器),这是首个新型开放源码工具包,从PyTorrch内部以方便的方式模拟模拟模拟跨条阵列(可免费查阅https://github.com/IBM/aihwkit)。该工具包正在积极开发之中,围绕“分析器”的概念,该“分析器”可以捕捉在横条阵列上进行的计算。Analog 瓷砖可以用来扩大现有网络模块,配有模拟组件,并利用PyTorrch框架的灵活性,任意建造人工神经网络。Analog 直径直径直径直径图可以方便地配置,以模仿大量不同的模拟硬件特性及其非理想性,例如设备对设备的不同版本和周期的变异变、耐抗装置反应曲线以及重量和输出噪音。此外,该工具包可以设计定制定制定制定制自定制单元的单元配置,并使用高级模拟缩缩算法,例如Tiki-Taka。此外,对于快速的内存和不断更新的行为模式只能设定为“快速精确度”的缩缩缩缩缩缩缩缩缩图,用于我们使用的统计技术的缩动的缩略图。在使用。