ApproxTorch: An Approximate Multiplier Evaluation Environment for CNNs based on Pytorch
Ke Ma, Shinji Kimura · 2022 19th International SoC Design Conference (ISOCC) · 2022
Recently, approximate multipliers for CNNs have been studied hard, but evaluation of CNNs with approximate multipliers is always slow and requires many coding efforts. To solve this problem, we present ApproxTorch, an evaluation environment to simulate CNN models with 8-bit approximate multipliers. ApproxTorch provides Python classes for approximate convolution layers and fully-connected layers just like Pytorch classes which makes model transformation much easier. The behavior of an approximate multiplier is represented as a look-up-table and implemented as memory access. By exploiting the powerful Pytorch library for GPU, ApproxTorch can run CNNs with approximate multipliers much faster than traditional methods on CPU.