Skip to content
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

TEST: Enable ulab and attempt to catch app/filesystem overlap #926

Closed
wants to merge 6 commits into from

Conversation

Gadgetoid
Copy link
Member

@Gadgetoid Gadgetoid commented Apr 8, 2024

Try to enable ulab for additional builds.

TODO: Most of the required tooling changes to know if ulab builds will work or not have been moved to #927 which needs merged and this PR rebased.

Generally it seems additional ulab builds are... unlikely... but we can always monkey with the filesystem size for people who really want to make that tradeoff.

⚠️ There's a pimoroni-pico build in this PR/branch which adjusts the memory split from 640k/1408k to 1024k/1024k. This makes room for ulab and perhaps other things, but since the filesystem has moved, it is not compatible with our Pico or the stock Pico build. ✨ Back up your files! ✨

@Gadgetoid Gadgetoid force-pushed the test/enable-ulab branch 2 times, most recently from 8f68d2b to c13faa0 Compare April 8, 2024 15:50
@Gadgetoid
Copy link
Member Author

Cool cool, despite checking it twice I had my app/filesystem sizes backwards...

@Gadgetoid
Copy link
Member Author

Results... uh, the prognosis 🦉 is not so good:

Board Avail Used Usage Note
Pico 640k 723k 112.96% ulab wont fit
Pico W 1200k 1192k 99.34% ulab just fits
Tiny 2040 640k 610k 95.38% no ulab or custom linker, percentage calculated
Galactic 1200k 1124k 93.67% ulab just fits, and we currently ship with it!
Cosmic 1200k 1124k 93.66% ulab just fits, and we currently ship with it!
Stellar 1200k 1124k 93.66% ulab just fits, and we currently ship with it!
Inky Frame 1200k 1071k 89.25% ulab... might fit?

Add a patch for CMakeLists.txt which adds -Wl,--print-memory-usage so
we can get at least some useful information about which builds are
running close to the limits.
Using a custom patch against MicroPython's CMakeLists.txt this will
optionally use a memmap_mp.ld file from the *board* directory and
allow us to check if the allocated app flash overflows.

Linker scripts need configured on a per board basis.
This build has plenty of room for fancy extras.

Replaces #570
@Gadgetoid
Copy link
Member Author

Using py_decl to analyze .uf2 files post build has replaced the method used here.

See also: #951

@Gadgetoid Gadgetoid closed this Jun 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant