Arm Mbed OS support forum

Huge RAM consumption on Mbed-os-6.2.0

Hi all,
I compile my program and observed huge RAM consumption as below.


If I use Nucleo-F446RE as target, os5 is only 16.0kB but os6 is 127.3kB.
I modified the program “Serial” to “BufferedSerial” and a timer read function(Chrono usage).
In the beginning, I thought “BufferedSerial” uses big buffer RAM but nRF52-DK does NOT consume on same program.
Is this linker script problem?

Program:
https://os.mbed.com/users/kenjiArai/code/SD_Card_Control_on_OS5/
IDE:
On-line compiler

Additional information:
Mbed Studio 1.10 + Nucleo-F446RE
—os5.15.0
Total Static RAM memory (data + bss): 16425(+0) bytes
Total Flash memory (text + data): 89174(+283) bytes
—os6.2.0
Total Static RAM memory (data + bss): 16642(+217) bytes
Total Flash memory (text + data): 82659(-6515) bytes

Thanks your support in advance.
Kenji

Hi Kenji,

Current online compiler defaults to OS5 rev.7088 ?
I think its been wound back because of issues.

I have been using 6.2 on Studio off-line and testing Studio on-line.
Both appear to working correctly with a F767 and I have compiled for the F446 (Studio offline) and this was the result.
Looks normal to me and I’m using quite large buffers.

Elf2Bin: Firebase-mbed

Module .text .data .bss
BME280\BME.o 1460(+1460) 0(+0) 0(+0)
DS1820\DS1820.o 1458(+1458) 0(+0) 4(+4)
DS1820\LinkedList2 92(+92) 0(+0) 0(+0)
Firebase-https\http_parser 9856(+9856) 0(+0) 0(+0)
GPS\GPS.o 3285(+3285) 0(+0) 0(+0)
NTPclient\NTPclient.o 634(+634) 0(+0) 0(+0)
[lib]\c_w.l 20339(+20339) 16(+16) 460(+460)
[lib]\fz_wm.l 3172(+3172) 0(+0) 0(+0)
[lib]\libcpp_w.l 737(+737) 0(+0) 0(+0)
[lib]\libcppabi_w.l 44(+44) 0(+0) 0(+0)
[lib]\m_wm.l 858(+858) 0(+0) 0(+0)
anon$$obj.o 32(+32) 0(+0) 1024(+1024)
eeprom\eeprom.o 2335(+2335) 0(+0) 72(+72)
main.o 19907(+19907) 196(+196) 12312(+12312)
mbed-os\components 13898(+13898) 0(+0) 1572(+1572)
mbed-os\drivers 4650(+4650) 0(+0) 84(+84)
mbed-os\events 1528(+1528) 0(+0) 3104(+3104)
mbed-os\features 186258(+186258) 221(+221) 305(+305)
mbed-os\hal 1390(+1390) 4(+4) 66(+66)
mbed-os\platform 6005(+6005) 80(+80) 484(+484)
mbed-os\rtos 10806(+10806) 168(+168) 10714(+10714)
mbed-os\targets 18338(+18338) 12(+12) 664(+664)
Subtotals 307082(+307082) 697(+697) 30865(+30865)

Total Static RAM memory (data + bss): 31562(+31562) bytes
Total Flash memory (text + data): 307779(+307779) bytes
Image: BUILD/NUCLEO_F446ZE/ARMC6\Firebase-mbed.bin

Try Studio offline if you can, I find much faster re-compiles compared to Mbed online.

Paul

Hi Paul,
Thanks your answer.
I understood that online compiler is still OS5 not OS6.
I will wait official os6 release announcement from arm.

In the past, online compiler is a center of gravity but right now Mbed world is dramatically changed and I cannot understand all of the changes.
Priority for maintenance online compiler came lower.
For beginners like me, I believe online compiler is best entry way.
If someone starts the Mbed world today, how to feel current Mbed world.
Anyway, this is not this subject .
Kenji

ps:
Mbed Studio, I also confirmed seems okay as above.