Main Content

Which microcontroller is faster: Arduinos, ESPs, or the STM32? This video examines this question, where I perform a speed test, the SpeedTest, with several devices running the same series of commands.
Follow and see the result!
Our main goal will be to show how much time each of the chosen microcontrollers spends to execute a series of commands of a simple program. We will perform this test with a program that will execute one million iterations and, from the iteration of 100,000; we will execute commands so that the internal led flashes.
I found other speed tests with microcontrollers on the Internet, including one from Chester Lowrey, which produced this table below. I placed it here for you to observe.
So I decided to perform my own test which is based on a common program: it goes into loop repetition, does a lot of loop comparisons, calls the function and commands it to light a pinmode, runs a digitalwrite, among other simple actions that we have done a million times.
This test, therefore, has no scientific character, and I dont wish to berate the performance of any microcontroller, but simply show the magnitude of processing that each model has.
We performed and compared with a million iterations, and my result resembled what Chester found in some respects. For example, the ESP32, per core, was 60 times faster than the Arduino Uno. In Chester’s case, he did a Divide Float, that is, a floating-point operation, and recorded 83,462 milliseconds for the Arduino Uno against 1,398ms for the ESP. After performing the calculations, this shows that the ESP is 59.7 times faster than the Arduino Uno. Contrarily, there are some characteristics that show many similarities. For example, other parameters range from 10 to 170 times the speed in the comparison between these two microcontrollers.”

Link to article