Evaluation of Convolution Primitives for Embedded Neural Networks on 32-bit Microcontrollers

03/19/2023
by   Baptiste Nguyen, et al.
0

Deploying neural networks on constrained hardware platforms such as 32-bit microcontrollers is a challenging task because of the large memory, computing and energy requirements of their inference process. To tackle these issues, several convolution primitives have been proposed to make the standard convolution more computationally efficient. However, few of these primitives are really implemented for 32-bit microcontrollers. In this work, we collect different state-of-the-art convolutional primitives and propose an implementation for ARM Cortex-M processor family with an open source deployment platform (NNoM). Then, we carry out experimental characterization tests on these implementations. Our benchmark reveals a linear relationship between theoretical MACs and energy consumption. Thus showing the advantages of using computationally efficient primitives like shift convolution. We discuss about the significant reduction in latency and energy consumption due to the use of SIMD instructions and highlight the importance of data reuse in those performance gains. For reproducibility purpose and further experiments, codes and experiments are publicly available.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/13/2021

BoolNet: Minimizing The Energy Consumption of Binary Neural Networks

Recent works on Binary Neural Networks (BNNs) have made promising progre...
research
09/22/2018

Shift-based Primitives for Efficient Convolutional Neural Networks

We propose a collection of three shift-based primitives for building eff...
research
10/11/2021

A comprehensive review of Binary Neural Network

Deep learning (DL) has recently changed the development of intelligent s...
research
04/15/2019

IoD-Crypt: A Lightweight Cryptographic Framework for Internet of Drones

Internet of Drones (IoD) is expected to play a central role in many civi...
research
10/11/2012

Computationally Efficient Implementation of Convolution-based Locally Adaptive Binarization Techniques

One of the most important steps of document image processing is binariza...
research
09/25/2018

Network Coding for Critical Infrastructure Networks

The applications in the critical infrastructure systems pose simultaneou...
research
10/20/2020

Optimising the Performance of Convolutional Neural Networks across Computing Systems using Transfer Learning

The choice of convolutional routines (primitives) to implement neural ne...

Please sign up or login with your details

Forgot password? Click here to reset