The ESP32-Espruino numbers seem to be valid. Did some tests (only with 100x1000 iterations, didn't want to wait minutes). All boards with 2v03, code running in memory, timing just with new Date()
ESP32 (240MHz) - 42.7 sec
Pixl.Js (64MHz Cortex M4) - 32.6 sec
Espruino Wifi (100MHz Cortex M4) - 21.6 sec
ESP8266 - watchdog reset even at 100x100 iterations...
Looks like the ESP32 at 4x clock speed was slower than the Cortex M4 in Pixl.JS. I think we all knew that the ESP32 port needs some optimisation. The two M4 cores run at roughly same speed if you compensate with the clock rate.
If my math is right, the ESP32 is 4.7 times slower for the same clock rate. No PSRAM on my ESP32 board, all code is ran from memory, so neither flash nor PSRAM access speed could affect this.
Did someone / can someone (with enough time) run some arbitrary benchmarks in C on an ESP32 and some ARM core? Is this the lack of optimisation in Espruino port, or the Xtensa core itself is significantly slower than ARMs?
@neoniousTR your board + the dev experience looks cool! Added it to the waaaa-looks-interesting-but-don't-get-one-already-have-too-much-stuff category :)
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
The ESP32-Espruino numbers seem to be valid. Did some tests (only with 100x1000 iterations, didn't want to wait minutes). All boards with 2v03, code running in memory, timing just with
new Date()
Looks like the ESP32 at 4x clock speed was slower than the Cortex M4 in Pixl.JS. I think we all knew that the ESP32 port needs some optimisation. The two M4 cores run at roughly same speed if you compensate with the clock rate.
If my math is right, the ESP32 is 4.7 times slower for the same clock rate. No PSRAM on my ESP32 board, all code is ran from memory, so neither flash nor PSRAM access speed could affect this.
Did someone / can someone (with enough time) run some arbitrary benchmarks in C on an ESP32 and some ARM core? Is this the lack of optimisation in Espruino port, or the Xtensa core itself is significantly slower than ARMs?
@neoniousTR your board + the dev experience looks cool! Added it to the waaaa-looks-interesting-but-don't-get-one-already-have-too-much-stuff category :)