Ancestors
Written by Manawyrm | Sarah -> FOSDEM on 2024-09-01 at 21:22
New blog post:
Executing Linux applications on a Raspberry Pi in less than 3.5s from power-up! 🚀🏎️
(and other power saving tricks)
https://kittenlabs.de/blog/2024/09/01/extreme-pi-boot-optimization/
=> More informations about this toot | More toots from manawyrm@chaos.social
Written by Marcus Müller on 2024-09-02 at 15:57
@manawyrm having slept over this:
- Assuming you can do an immutable root (you probably can, and actually want to, makes the whole thing less likely to fail), rootfs on EROFS is probably the way to go
- Still surprised about LZ4 vmlinuz not being in total less energy than uncompressed vmlinux, might actually need to investigate that at some point: in the end, if reading twice as much data, to really reduce energy usage, you'd have to run at ~less than half the system current draw, and I don't…
=> More informations about this toot | More toots from funkylab@mastodon.social
Toot
Written by Marcus Müller on 2024-09-02 at 16:02
@manawyrm … see LZ4 really being a significant sink of CPU cycles
- once you made the root FS read-only (and thus faster to mount), you can already boot, while, if necessary at all, your system starts mounting your persistent mutable storage. Here, again, same considerations as for the kernel image apply regarding compression: an SD card is so much slower than a CPU, it'd be surprising if the time saved by not reading twice the amount of data was not outweighing the energy cost
=> More informations about this toot | More toots from funkylab@mastodon.social
Descendants
Written by Marcus Müller on 2024-09-02 at 16:12
@manawyrm
- are you familiar with scripts/bootgraph.pl?
- is putting a minimal initramfs (uncompressed) into the kernel image (compressed) an option? That'd eliminate the time needed for the bootloader to find the root fs / initramfs, and could be very slim (statically linked compiled /bin/init, just enough stuff to mount the immutable main rootfs and maybe kick off things like powering up the modem)
- bootlin has a boottime opti slide deck, can't find it, it was cool. Most of above from there
=> More informations about this toot | More toots from funkylab@mastodon.social
Written by Marcus Müller on 2024-09-02 at 16:18
@manawyrm
- cmdline include quiet: console is among slooowest devices you have! (maybe instead convince kernel to disable console when some GPIO isn't pulled high, so you can have debug möde?)
- already using pre-measured bogomips value at cmdline, right?
- maybe one additional layer of abstraction would help on the "strangeness" that is old RPi: If you, instead of Linux directly, only load the much slimmer uboot romboot,that's fewer bytes that a freaking GPU management controller has to fetch;
=> More informations about this toot | More toots from funkylab@mastodon.social
Written by Marcus Müller on 2024-09-02 at 16:20
@manawyrm and then the much faster (main) CPU takes over, executes the small uboot SPL, which then initializes just enough things to be able to jump to linux.
=> More informations about this toot | More toots from funkylab@mastodon.social
Written by Marcus Müller on 2024-09-02 at 16:22
@manawyrm hey, wait, is @bootlin on here? They might simply know what slide deck I'm referring to!
=> More informations about this toot | More toots from funkylab@mastodon.social
Written by 23n27 on 2024-09-02 at 23:14
@funkylab @manawyrm @bootlin I think you mean https://bootlin.com/pub/conferences/2009/elce/boot-time.pdf?
=> More informations about this toot | More toots from 23n27@dgc.social
Written by Marcus Müller on 2024-09-02 at 23:47
@23n27 @manawyrm @bootlin no don't think so, much newer
=> More informations about this toot | More toots from funkylab@mastodon.social
Written by Marcus Müller on 2024-09-02 at 23:57
@23n27 @manawyrm @bootlin found it and wow it's been touched in the last 4 hrs: https://bootlin.com/doc/training/boot-time/
=> More informations about this toot | More toots from funkylab@mastodon.social
Proxy Information
- Original URL
- gemini://mastogem.picasoft.net/thread/113068797950327644
- Status Code
- Success (20)
- Meta
text/gemini
- Capsule Response Time
- 297.781773 milliseconds
- Gemini-to-HTML Time
- 3.166134 milliseconds
This content has been proxied by September (3851b).