U-SWIM: Universal Selective Write-Verify for Computing-in-Memory Neural Accelerators
This addresses a bottleneck in energy-efficient DNN acceleration for hardware systems, offering a significant speedup over existing methods, though it is incremental as it builds on prior work like SWIM.
The paper tackles the problem of programming time overhead in Computing-in-Memory neural accelerators due to device variations during weight mapping, introducing USWIM, a method that selectively applies write-verify to only a small fraction of weights, achieving up to 10x programming acceleration while maintaining similar accuracy.
Architectures that incorporate Computing-in-Memory (CiM) using emerging non-volatile memory (NVM) devices have become strong contenders for deep neural network (DNN) acceleration due to their impressive energy efficiency. Yet, a significant challenge arises when using these emerging devices: they can show substantial variations during the weight-mapping process. This can severely impact DNN accuracy if not mitigated. A widely accepted remedy for imperfect weight mapping is the iterative write-verify approach, which involves verifying conductance values and adjusting devices if needed. In all existing publications, this procedure is applied to every individual device, resulting in a significant programming time overhead. In our research, we illustrate that only a small fraction of weights need this write-verify treatment for the corresponding devices and the DNN accuracy can be preserved, yielding a notable programming acceleration. Building on this, we introduce USWIM, a novel method based on the second derivative. It leverages a single iteration of forward and backpropagation to pinpoint the weights demanding write-verify. Through extensive tests on diverse DNN designs and datasets, USWIM manifests up to a 10x programming acceleration against the traditional exhaustive write-verify method, all while maintaining a similar accuracy level. Furthermore, compared to our earlier SWIM technique, USWIM excels, showing a 7x speedup when dealing with devices exhibiting non-uniform variations.