-
Notifications
You must be signed in to change notification settings - Fork 13.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Table output for segment size script #8551
Conversation
Also include maximum aka total for every segment key Re-format the file and clean-up the resulting data dict
I'm indifferent on the table vs. the more organic way that @d-a-v was doing it, but I think this line is going to cause concern among people who don't know any better:
Reporting 100% use seems like it's going to make people ask questions or be worried. For this special-case, can we do something similar to before where we don't report the usage? Something like
@d-a-v, thoughts? |
In hindsight, |
There could be misunderstanding about RAM content, which I had tried to show with the three parenthesis
|
(and yeah, I haven't realized what What about something like this
Plus, IDE also prints this right after, through the size recipe
And which may actually be disabled in favour of the script |
The tree looks nice ! |
Just missed, will update the script to add it to total line. Regarding IRAM... what about
So there's also a space for HEAP in the tree output, which is otherwise missing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks !
I get this, all data are there, including percentages.
. Variables and constants in RAM, total 80192 bytes, used 38712 bytes (48%)
├── DATA 1760 initialized variables (global, static)
├── RODATA 5992 constants (global, static)
└── BSS 30960 zeroed variables (global, static)
. Instruction RAM, total 65536 bytes, used 47905 bytes (73%)
├── ICACHE 16384 reserved space for flash instruction cache
└── IRAM 31521 code in IRAM (IRAM_ATTR, ICACHE_RAM_ATTR)
. Code in flash, total 1048576 bytes, used 450264 bytes (42%)
└── IROM 450264 code in flash (default, ICACHE_FLASH_ATTR)
previously
Executable segment sizes:
ICACHE : 16384 - flash instruction cache
IROM : 450264 - code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 31521 / 49152 - code in IRAM (IRAM_ATTR, ISRs...)
DATA : 1760 ) - initialized variables (global, static) in RAM/HEAP
RODATA : 5992 ) / 81920 - constants (global, static) in RAM/HEAP
BSS : 30960 ) - zeroed variables (global, static) in RAM/HEAP
This is trying to remove redundant text, making it more light.
ymmv
Variables and constants in RAM (global, static)
| 48% 38712 / 80192 bytes
├── DATA 1760 initialized variables
├── RODATA 5992 constants
└── BSS 30960 zeroed variables
Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR)
| 73% 47905 / 65536 bytes
├── ICACHE 16384 reserved space for flash instruction cache
└── IRAM 31521 code in IRAM
Code in flash (default, ICACHE_FLASH_ATTR)
| 42% 450264 / 1048576 bytes
└── IROM 450264 code in flash
With the suggestion above
(less dense, but still as wide as it was. only 81 chars btw) |
Re-format the file, hints and clean-up the resulting data dict
Also include maximum aka total for every segment key, so now we could also display it every time
vs. old
idk about the percentage, though... whether it should be for specific segment, or for the memory overall. we could combine data + rodata + bss percentages as "User-data RAM" and IRAM & ICACHE as... "Instruction RAM"?
could just remove it too