Variable Precision Multiplication for Software-Based Neural Networks

被引:3
|
作者
Singh, Richa [1 ]
Conroy, Thomas [1 ]
Schaumont, Patrick [2 ]
机构
[1] Virginia Tech, Blacksburg, VA 24061 USA
[2] WPI, Worcester, MA USA
基金
美国国家科学基金会;
关键词
Bitslice compilation; Neural networks; Software Acceleration;
D O I
10.1109/hpec43674.2020.9286170
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
As the number of applications of neural networks continues to grow, so does the need to efficiently perform inference computations on highly constrained devices. In this paper, we propose a methodology to accelerate neural networks in software. We exploit the limited-precision requirements of typical neural networks by formulating recurring operations in a bit-slice computation format. Bit-slice computation ensures that every bit of an M-bit processor word contributes useful work even while computing a limited-precision n-bit (with n < M) operation. This paper brings the following contributions. We first present an environment to efficiently create bitslice descriptions in software, by synthesizing them from Verilog. We then develop bitsliced designs of matrix multiplication and evaluate their performance. Our target is a small microcontroller, and we rely solely on software optimization. Our driving application is a neural network classifier for the MNIST database. Range-Based Linear Quantization in symmetric mode quantizes pre-trained 32-bit floating point weights and activation to low-precision data-widths. Experiments on RISC-V with varying levels of hardware-support show that for data-widths common to neural network applications, the bit-sliced code produces a speedup over traditional methods, which leads to faster and efficient inference without incurring significant loss in accuracy. For example, 8-bit matrix multiplications are sped up by a factor of 2.62x when compared with non-bitsliced rv32i ISA implementation with no hardware multiplier.
引用
收藏
页数:7
相关论文
共 50 条
  • [1] Software-Based Management for Ethernet Networks
    Markus Hager
    Thomas Finke
    Jochen Seitz
    Thomas Waas
    Wireless Personal Communications, 2014, 74 : 1021 - 1032
  • [2] Software-Based Management for Ethernet Networks
    Hager, Markus
    Finke, Thomas
    Seitz, Jochen
    Waas, Thomas
    WIRELESS PERSONAL COMMUNICATIONS, 2014, 74 (03) : 1021 - 1032
  • [3] A Northbound Interface for Software-based Networks
    Tuncer, Daphne
    Charalambides, Marinos
    Tangari, Gioacchino
    Pavlou, George
    2018 14TH INTERNATIONAL CONFERENCE ON NETWORK AND SERVICE MANAGEMENT (CNSM), 2018, : 99 - 107
  • [4] Improving precision and accuracy with software-based signal filtering
    Schibler, JA
    AMERICAN LABORATORY, 1997, 29 (24) : 52 - +
  • [5] Management Application Interactions in Software-Based Networks
    Tuncer, Daphne
    Charalambides, Marinos
    Pavlou, George
    IEEE NETWORK, 2019, 33 (05): : 149 - 155
  • [7] A Variable Precision Approach for Deep Neural Networks
    Xuan-Tuyen Tran
    Duy-Anh Nguyen
    Duy-Hieu Bui
    Xuan-Tu Tran
    2019 12TH INTERNATIONAL CONFERENCE ON ADVANCED TECHNOLOGIES FOR COMMUNICATIONS (ATC 2019), 2019, : 313 - 318
  • [8] An Efficient and Experimentally Tuned Software-Based Hardening Strategy for Matrix Multiplication on GPUs
    Rech, P.
    Aguiar, C.
    Frost, C.
    Carro, L.
    IEEE TRANSACTIONS ON NUCLEAR SCIENCE, 2013, 60 (04) : 2797 - 2804
  • [9] Neuro-Lab:: A highly reusable software-based environment to teach artificial neural networks
    Roselló, EG
    Pérez-Schofield, JBG
    Dacosta, JG
    Pérez-Cota, M
    COMPUTER APPLICATIONS IN ENGINEERING EDUCATION, 2003, 11 (02) : 93 - 102
  • [10] A Software-based Redundancy Concept for Building Automation Networks
    Krammer, Lukas
    Bunyai, Dominik
    Kastner, Wolfgang
    39TH ANNUAL CONFERENCE OF THE IEEE INDUSTRIAL ELECTRONICS SOCIETY (IECON 2013), 2013, : 5702 - 5709