Dual Core Microcontroller Battle Royale - Performance and Power Efficiency

  Переглядів 17,693

Gary Explains

Gary Explains

Рік тому

Some microcontrollers have two CPU cores like the RP2040, in the Raspberry Pi Pico; the ESP32; and the ESP32-S3. Does using the second core incur a power usage penalty? Which one is the most efficient? Which one is the fastest? Let's find out.
---
Let Me Explain T-shirt: teespring.com/gary-explains-l...
Twitter: / garyexplains
Instagram: / garyexplains
#garyexplains

КОМЕНТАРІ: 57
@bluegizmo1983
@bluegizmo1983 Рік тому
If your going to continue doing power consumption tests on microcontrollers, you should get a Nordic Power Profiler Kit 2. It only $99 and it allows you to get MUCH more detailed current usage over time compared to just using a shunt and voltmeter. It can also accurately measure down to the very low uA and even nA range.
@avejst
@avejst Рік тому
great video as always 👍 thanks for sharing your experience with all of us 👍🙂
@marklewus5468
@marklewus5468 Рік тому
hi Gary, great work as always. I wanted to add my voice to the chorus who thinks you should test the pico at the same clock rate as the ESP 32. As others have mentioned, the Pico is capable of clocking well in excess of 300 MHz. It would give a more fair comparison
@GaryExplains
@GaryExplains Рік тому
I would say it was a chorus of people saying that!!! Because, I did that in previous video. Try here: ukposts.info/have/v-deo/kHqSq6xvr32luWg.html
@bennguyen1313
@bennguyen1313 Рік тому
Any thoughts how the TWO Ultra-Low co-processors on the ESP32-S3 (ULP-RISC-V , ULP-FSM) could be used to improve performance / power-efficiency?
@parapotamus
@parapotamus Рік тому
What voltage was used for powering the boards? If it was 5 V, then the results are skewed in favor of Pi Pico, which has an efficient switching mode 3.3 V regulator instead of a linear one wasting about 1/3 of the power.
@GaryExplains
@GaryExplains Рік тому
As I have stated in other videos in this series, the testing was done using 5v and 3.3v (for all boards). The relative results don't change.
@timlai1091
@timlai1091 Рік тому
@@GaryExplains it is not reasonable. Normally, switching regulation have much higher energy efficiency than linear regulation, such as 90% vs 66%. Normally, switching power regulation has more noise than linear one and it affect the ADC noise much.
@gizmoguyar
@gizmoguyar 7 місяців тому
I'd be very interested to hear how these powerful microcontrollers compare to some of the old 8 bit ultra low power microcontrollers such as ATMEGA AVR line. Often my projects have no speed requirement. Maybe they only need to wake up and read some sensors every few minutes. In these cases, I'd be curious to know what is the absolute most efficient. Additionally, those chips can run without any external components at voltages as low as 1.8V, and clock speeds around 250 kHz. ...would be cool to compare all of those options.
@WhiteError37
@WhiteError37 5 місяців тому
Excellent video
@marklewus5468
@marklewus5468 Рік тому
One more comment, given that the RP2040 does not have single cycle divide (STM32 M3/M4/M7 all do) I was surprised at how well it performed on the clock for clock basis against the LX6 and LX7. it might be interesting to repeat this test against an STM32M4.
@GaryExplains
@GaryExplains Рік тому
I have tested it against the STM32 M4 in other videos in this series.
@TheEulerID
@TheEulerID Рік тому
I suspect that the most important power issue with microcontrollers is not how many micro-joules are required per million instructions (or whatever you care to use), but the total amount of energy used for what is often intermittent usage. Of course, if there's a simple-minded program that runs in a tight loop, as is often the case, then that won't help much. However, with a well designed micro-controller and software which is interrupt driven and has the ability to put it into a proper "sleep" mode when not executing code, then I would hope that the power consumption can be minimised. Also, those CPU architectures which have power saving modes when running light usage applications might have an advantage, although I suspect that sort of thing doesn't apply to micro-controllers in general, and is more likely to be found on the sort of processors to be found in tablets and smartphones.
@daveb7999
@daveb7999 Рік тому
Thanks Gary, great comparison, well explained. I'm curious how the 'Arduino Nano RP2040 Connect' would do in this "Battle Royale". My guess is that it would be close to the Raspberry Pi Pico, but not sure. Any ideas?
@GaryExplains
@GaryExplains Рік тому
I suspect it would be close to the Pico since they have the same processor. However I am measuring the board current, so if the Arduino one has a more sophisticated board then it could draw more current.
@theugobosschannel8466
@theugobosschannel8466 Рік тому
Good video Garry. Have you had a chance to play with the ESP32-S3? I want to know if migrating an Arduino ESP32 project to the ESP32-S3 is straightforward. Either way, ill be working on that this week to find out for myself.
@GaryExplains
@GaryExplains Рік тому
I have used the S3 while making this video. Anything in particular you wanted to know?
@GaryExplains
@GaryExplains Рік тому
Ah, I see your edit now. You should be able to run your Arduino project on the S3 with no alterations, assuming the pinout is the same on the new board.
@PaulSpades
@PaulSpades 7 місяців тому
Amazing. Despite different architectures and features in silicon, these 3 perform basically the same amount of computation for the power used. And it sort of makes sense, for this test they mostly move the same amount of data between registers, trough mostly the same cmos circuits, with the same size transistors. I would've thought the tensilica cores had an edge with their divide circuit, but I guess it just requires it to power a whole lot of transistors. So, maybe faster but with the power expense. Maybe us software guys get too hung up on architecture and api debates, the cmos circuits and sram blocks just do what they do.
@olafschermann1592
@olafschermann1592 Рік тому
Are there boards with the same CPU that are more power efficient (because of better regulator, …)
@heliosak
@heliosak Рік тому
Hey Gary, can you do speedtest G for Galaxy Z Fold 4 vs iphone 14 pro/max?
@GaryExplains
@GaryExplains Рік тому
Sadly no. Speed Test G is on pause, it wasn't popular.
@Bismuth208
@Bismuth208 Рік тому
Results are strange... In my case, when i switched from ESP32 to ESP32-S3 i've got more performance when decoding Jpg from ov2640 on the fly. Like +15FPS on avg. in HQVGA, what allowed me to move into QVGA mode. Now i'm wondering how... Could it be due to better IRAM/DRAM cache subsystem?
@peterschets1380
@peterschets1380 Рік тому
The S3 has 512 KB sram, this is more than the older models. Also the S3 has AI Acceleration Support. This can also help to decode JPG. Anyhow, how much FPS do you get with the ESP32-S3 and the ov2640?
@Bismuth208
@Bismuth208 Рік тому
@@peterschets1380 A bit of pre-conditions: - ESP-CAM (From Ai-Thinker) transmits over ESP_NOW with cap at 1Mbit/s and LR mode; - Camera is set to QVGA and quality=20 with 2 framebuffers in PSRAM; - On receiver side there is a ESP32-S3 which decode received data at one core (APP_CPU) and draw image on another (PRO_CPU) via SPI; - I use modified by myself Tjpg C library (added IRAM_ATTR to all functions and DRAM_ATTR to const arrays); - In menuconfig for ESP32-S3 set I/D cache sizes to maximum (32/64 KB); So, with an average data rate as: - something like ~86kB/s, i have 27±1.5FPS (Complex scene with bunch of text and objects). - something like ~54kB/s, i have 33±1.5FPS (Just blank dark image with closed camera lens). As a side effect: - I'm using active cooling for ESP-CAM, otherwise it will burn within 1 minute \(o_0)/ Hehe, entirely not the best to make an FPV cam :)
@peterschets1380
@peterschets1380 Рік тому
@@Bismuth208 Ow, and if you send 5 fps, can you use a pasive cooler?
@Bismuth208
@Bismuth208 Рік тому
@@peterschets1380 Hi! Well, i've tested ESP_CAM with 80MHz CPU freq. and 5fps limit at max Tx power (19.5dBm) for 20mins. With a room temp. at +24C it heated up to +50±2C. (Measured with non calibrated DIY thermal camera). Also, one heatsink (10x10x10mm) was attached to ESP module and another on top of AMS1117 voltage regulator. So, yeah, passive cooling is possible.
@thibdub2752
@thibdub2752 Рік тому
What is the efficiency with Wifi enabled ?
@yuai339
@yuai339 Рік тому
esp32 c3 is the risc v single core, and the frequency is low. maybe you can have a test for risc v controllors.
@GaryExplains
@GaryExplains Рік тому
I tested the ESP32-C3 in the previous video in this series.
@robingrosset6941
@robingrosset6941 Рік тому
Hey Gary, nice video. The RPI Pico W has a configurable clock speed up to about 400Mhz. You could set the Pico to 240MHz to exactly match the ESP32 boards. I usually run the clock on the Pico at application specific speeds for example HD Video output needs specific speed depending on resolution. I suspect higher clock speeds might be less power efficient but faster to complete your test. I wonder how this might impact things? 😬 as always great content
@GaryExplains
@GaryExplains Рік тому
Yes, I already did that in a previous video, no need to repeat myself.
@robingrosset6941
@robingrosset6941 Рік тому
@@GaryExplains This video compares performance and power consumption, in your previous video does it show click speed changes does not change power usage? Can you share your prime factor code so I can test this?
@santosvella
@santosvella Рік тому
@@GaryExplains bench-marking with different clock speeds is a bit misleading though.
@GaryExplains
@GaryExplains Рік тому
@Robin Grosset Yes clock speed changes the power usage, as I show here: ukposts.info/have/v-deo/kHqSq6xvr32luWg.html
@GaryExplains
@GaryExplains Рік тому
@rob d I don't understand. I show the performance and the power usage (across several videos now) at the default clock speed and at overclocked/underclocked frequencies. Are you saying that if I have an i7 Intel CPU I can't compare it to an AMD Ryzen 7 CPU if the clock speeds are different?
@jyvben1520
@jyvben1520 Рік тому
presented with double efficiency
@GaryExplains
@GaryExplains Рік тому
🤣👍
@MUHAMMADYAWARIFRAHEEM
@MUHAMMADYAWARIFRAHEEM Рік тому
Can you also test stm32 for fun
@GaryExplains
@GaryExplains Рік тому
I tested some STM32 boards in previous videos in this series.
@MUHAMMADYAWARIFRAHEEM
@MUHAMMADYAWARIFRAHEEM Рік тому
@@GaryExplains i will going to see it 👍
@lovemadeinjapan
@lovemadeinjapan 2 місяці тому
How would a Teensy 4 do in this test?
@GaryExplains
@GaryExplains 2 місяці тому
That is a good question. Of course there are several different models with different CPUs. Unfortunately they are hard to get hold of, very USA-centric sales.
@lovemadeinjapan
@lovemadeinjapan 2 місяці тому
@@GaryExplains Hard to get Teensy's? Here (NL) most arduino-like webshops have them in store, I do see half of them have a little delay in shipping right now, but also quite a few options with stock.
@GaryExplains
@GaryExplains 2 місяці тому
Could you please suggest a good European website for them, I have wanted to get some for quite a while but the price and/or availability has always been a problem. If UKposts doesn't let you post a URL directly then just spell it out and I will google the store. Many thanks!
@lovemadeinjapan
@lovemadeinjapan 2 місяці тому
@@GaryExplains I get them at Tinytronics. They have most in stock right now.
@GaryExplains
@GaryExplains 2 місяці тому
Thanks, much appreciated. Unfortunately the cheapest is €27.50, which I think is quite expensive for a microcontroller board. The Pi Pico is more than 3 times cheaper.
@edgejayronneaguilar573
@edgejayronneaguilar573 Рік тому
Esp32 with 9sec, 87mA Pico with 20sec, 38mA Esp 2.22 times faster, devide the 87mA with 2.22 To make it even, its gonna be 39mA, So for me same efficiency😁
@GaryExplains
@GaryExplains Рік тому
Which is what I show in the video, but you are using rounded numbers (i.e. it isn't 9.0 seconds for the ESP32, etc).
@MUHAMMADYAWARIFRAHEEM
@MUHAMMADYAWARIFRAHEEM Рік тому
Runs more fast in micropython compared to c++
@GaryExplains
@GaryExplains Рік тому
What runs faster in Micropython?
How to Program the Built-in Arduino in the Odyssey Blue mini PC
12:20
Gary Explains
Переглядів 7 тис.
Arduino vs Pico - Which is the Best Microcontroller For You?
20:38
Gary Explains
Переглядів 279 тис.
Glow Stick Secret 😱 #shorts
00:37
Mr DegrEE
Переглядів 117 млн
I compared 3 modern ZX spectrum boards with PI Zero, PI PIco and ESP32 chips.
29:57
Arm vs RISC-V? Which One Is The Most Efficient?
17:12
Gary Explains
Переглядів 116 тис.
451 Which Processor can kill the ESP32?
11:24
Andreas Spiess
Переглядів 332 тис.
Which ESP32 is Best for Your Project?
11:12
Predictable Designs
Переглядів 16 тис.
#372 How to use the two Cores of the Pi Pico? And how fast are Interrupts?
14:25
Try these 16 Brilliant ESP32 projects!!!
11:18
ToP Projects Compilation
Переглядів 516 тис.
How to Run Linux on an ESP32
18:53
element14 presents
Переглядів 144 тис.
#370 Raspberry Pi Pico vs ESP32 (-S2) and STM32 Blackpill
15:53
Andreas Spiess
Переглядів 383 тис.
ESP32 in a commercial product? - From prototype to production
7:58
Predictable Designs
Переглядів 45 тис.