Page 1 of 1

Significant increase in IRAM usage from 3.0 to 3.2

Posted: Tue Jun 18, 2019 4:28 pm
by vonnieda
Hi folks,

I'm in the process of trying to upgrade my app from IDF 3.0 to IDF 3.2 and have noticed that it won't even build, saying that there is an IRAM overflow. By switching from Debug to Release mode I was able to get it to build so I could compare memory usage, and this is what I found:
Screen Shot 2019-06-18 at 11.21.20 AM.png
Screen Shot 2019-06-18 at 11.21.20 AM.png (88.05 KiB) Viewed 4537 times
This shows the same app built against 3.2 and 3.0, both in Release mode. All options were defaulted when switching to 3.2, aside from MQTT which I turned off since I use my own. The results are from the output of make clean && make size-components.

This seems like an extremely large increase to me, for what is the exact same target codebase. Are there obvious things I can do to reduce this?

Thanks,
Jason

Re: Significant increase in IRAM usage from 3.0 to 3.2

Posted: Sun Jun 23, 2019 3:48 am
by jumjum123
I had similiar problem.
At the end feedback from ESP was something like "we switched some libs from ROM to new source"
From my best knowledge we have to live with this increase, "it is like it is"

Re: Significant increase in IRAM usage from 3.0 to 3.2

Posted: Thu Jun 27, 2019 2:53 am
by ESP_Angus
Hi all,

Sorry for the slow response, we were hoping to announce v3.2.1 last week but we had some issues with the RTD documentation build for that version so instead we rolled over to v3.2.2 which has just been released:
https://github.com/espressif/esp-idf/re ... tag/v3.2.2

There are some improvements around binary size overall, and in particular there's a new config item which lets you reduce the IRAM footprint of the Wi-Fi libraries, trading off against a potential reduction in throughput depending on the firmware's exact behaviour:
https://docs.espressif.com/projects/esp ... i-iram-opt

Hopefully this option is helpful to reclaim some IRAM.