[Ovmsdev] ESP32/3 benchmark (was: External Wifi antenna)
Craig Leres
leres at xse.com
Mon Mar 15 02:01:41 HKT 2021
On 3/14/21 12:15 AM, Michael Balzer wrote:
> you triggered the watchdog by pasting all commands into the shell, you
> need to leave 1-2 seconds between the commands to feed the dog.
I didn't realize that was possible!
Do persistent metrics impact test mode 2? Looking at the ESP32-WROVER
dat sheet (version 2.4) I see:
ESP32-D0WDQ6 contains two low-power Xtensa 32-bit LX6
microprocessors. The internal memory includes:
- 448 KB of ROM for booting and core functions.
- 520 KB of on-chip SRAM for data and instructions.
- 8 KB of SRAM in RTC, which is called RTC FAST Memory and can
be used for data storage; it is accessed by the main CPU
during RTC Boot from the Deep-sleep mode.
- 8 KB of SRAM in RTC, which is called RTC SLOW Memory and can
be accessed by the co-processor during the Deep-sleep mode.
- 1 Kbit of eFuse: 256 bits are used for the system (MAC address
and chip configuration) and the remaining 768 bits are
reserved for customer applications, including flash-encryption
and chip-ID.
And:
3.2 External Flash and SRAM
SP32-WROVER integrates a 4 MB of external SPI flash and an 8
MB PSRAM for more memory space.
It's confusing to me that the external ram is interchangeably called
PSRAM (pseudo static RAM), SPI SRAM, and SPIRAM.
Anyway, does test mode 2 only access SPIRAM or does it also pull from
RTC slow memory?
> Your results could indicate the SPIRAM workaround doesn't really degrade
> performance for the kind of RAM accesses the test does.
>
> Or it indicates something's wrong in your build / configuration, i.e.
> the SPIRAM workaround is still in place.
>
> Ideas:
>
> a) Did you do a "make clean" after disabling the SPIRAM workaround?
I've had the workaround disabled ever since I upgraded my modules to V3
and I don't bother with "make clean", I usually use "rm -rf build" (!)
> b) Verify your toolkit version (should be crosstool-ng-1.22.0-97-gc752ad5)
ice 1243 % xtensa-esp32-elf-gcc --version
xtensa-esp32-elf-gcc (crosstool-NG crosstool-ng-1.22.0-97-gc752ad5) 5.2.0
> c) Verify the actual compiler & linker options given by doing "make -n"
I did something like:
rm -rf build ; gmake -n | fgrep esp32can.o | fmt -1 > file
with CONFIG_SPIRAM_CACHE_WORKAROUND enabled and disabled and it looks
like the flag is present/flag:
ice 1277 % diff /tmp/workaround.txt /tmp/noworkaround.txt
21d20
< -mfix-esp32-psram-cache-issue
So my setup looks correct to me.
Craig
More information about the OvmsDev
mailing list