Replies: 4 comments 10 replies
-
I cram F Prime onto a 128k program memory device with 64 kb of SRAM. I’d say we get about 30 kb of application code on a 8 bit system if you want the nice services like commands, telemetry, and events. We also have to use a number of code-reduction techniques, and top out around 10-12 components, total. I would argue this is about as low as you can go, if you are asking for a self-contained system. I am looking into smaller options if your deployment is essentially hung on the side of a bigger processor that supplies the nice services like command dispatching and telemetry reporting. |
Beta Was this translation helpful? Give feedback.
-
I turn these off as mentioned here.
Sterling
Sent from my mobile.
On Oct 4, 2022, at 2:11 PM, Joshua Anderson ***@***.***> wrote:
@kbotteon<https://github.com/kbotteon> Disabling FW_OBJECT_NAMES in your config<https://github.com/nasa/fprime/blob/master/config/FpConfig.hpp#L91> should significantly reduce the number of strings in the binary
—
Reply to this email directly, view it on GitHub<#1675 (reply in thread)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AAO7KVRSTARYUHBHAE7YMQ3WBRXLRANCNFSM6AAAAAAQWJ5RNE>.
You are receiving this because you commented.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
I'll give that a try. Thank you both! |
Beta Was this translation helpful? Give feedback.
-
@SterlingPeet I tried to see the minimum footprint of F' by playing around with disabling symbols but I admit to being surprised at what I find. By doing a lot of tests I may have lost my way, here is the repository where I did my tests: https://github.com/ThibFrgsGmz/fprime-mem-footprint-benchmark Can you tell me what you think? |
Beta Was this translation helpful? Give feedback.
-
For those of you who use FPrime on microcontrollers, what approximate binary sizes have you seen for minimal deployments, without the overhead of your application specific code?
I've heard of using FPrime on platforms with as little as 256 kiB of flash, but more commonly I see it used on platforms with 4 MiB or more available to store the program itself.
I'm trying to estimate the approximate minimum binary size for just the FPrime plumbing: PassiveComponentBase, Ports, Rate Groups, etc. to understand what is the floor on microcontroller non-volatile memory specs.
Beta Was this translation helpful? Give feedback.
All reactions