This work introduces lightweight extensions to the RISC-V ISA to boost the efficiency of heavily Quantized Neural Network (QNN) inference on microcontroller-class cores. By extending the ISA with nibble (4-bit) and crumb (2-bit) SIMD instructions, we are able to show near-linear speedup with respect to higher precision integer computation on the key kernels for QNN computation. Also, we propose a custom execution paradigm for SIMD sum-of-dot-product operations, which consists of fusing a dot product with a load operation, with an up to 1.64x peak MAC/cycle improvement compared to a standard execution scenario. To further push the efficiency, we integrate the RISC-V extended core in a parallel cluster of 8 processors, with near-linear improvement with respect to a single core architecture. To evaluate the proposed extensions, we fully implement the cluster of processors in GF22FDX technology. QNN convolution kernels on a parallel cluster implementing the proposed extension run 6 x and 8 x faster when considering 4- and 2-bit data operands, respectively, compared to a baseline processing cluster only supporting 8-bit SIMD instructions. With a peak of 2.22 TOPs/s/W, the proposed solution achieves efficiency levels comparable with dedicated DNN inference accelerators, and up to three orders of magnitude better than state-of-the-art ARM Cortex-M based microcontroller systems such as the low-end STM32L4 MCU and the high-end STM32H7 MCU.
翻译:这项工作引入了RIRC-V ISA的轻量级扩展, 以提高微控制器级核心高度量化神经网络( QNNN) 测试效率。 通过扩展ISA, 使用点数( 4比特) 和 crumb (2比特) SIMD 指令, 我们能够显示在QNN计算的关键内核中, 更精确的整数计算方法的近线性加速。 另外, 我们还提议了SIMD32 和多产品操作的定制执行模式, 其中包括用负载操作来使用点数产品, 与标准执行情景相比, 最大MAC/周期改进达1.64比 1.64x 峰值。 为了进一步推进效率, 我们把RISC-V 扩展核心部分纳入一个由8个处理器组成的平行组, 与单一核心结构的近线性整数计算。 为了评估拟议的扩展, 我们完全在 GF22FDX 技术中安装了D类处理器。 QNNNC- 低量级中, 在平行的集群执行拟议的扩展部分中, 6x级和8x峰值MCMCRMD- s- sal- sal- 分别考虑S- sal- sq- sal- sal- sal 的比值为4和2 的比值 的比值 的比值 级, 级, 级, 级, 级, 级, 级 级 级 级 级, 和2 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级比 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级比 级 级 级 级 级 级 级比 级 级 级 级 级 级 级 级 级 级 级 级 级比 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级 级