TinyML: Analysis of Xtensa LX6 microprocessor for Neural Network
  Applications by ESP32 SoC
  In recent decades, Machine Learning (ML) has become extremely important for
many computing applications. The pervasiveness of ultra-low-power embedded
devices such as ESP32 or ESP32 Cam with tiny Machine Learning (tinyML)
applications will enable the mass proliferation of Artificial Intelligent
powered Embedded IoT Devices. In the last few years, the microcontroller device
(Espressif ESP32) became powerful enough to be used for small/tiny machine
learning (tinyML) tasks. The ease of use of platforms like Arduino IDE,
MicroPython and TensorFlow Lite (TF) with tinyML application make it an
indispensable topic of research for mobile robotics, modern computer science
and electrical engineering. The goal of this paper is to analyze the speed of
the Xtensa dual core 32-bit LX6 microprocessor by running a neural network
application. The different number of inputs (9, 36, 144 and 576) inputted
through the different number of neurons in neural networks with one and two
hidden layers. Xtensa LX6 microprocessor has been analyzed because it comes
inside with Espressif ESP32 and ESP32 Cam which are very easy to use, plug and
play IoT device. In this paper speed of the Xtensa LX6 microprocessor in
feed-forward mode has been analyzed.
