-
-
Notifications
You must be signed in to change notification settings - Fork 488
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
Slow Raspberry Pi 4 boot time #5237
Comments
Well, the major part of the boot time is not the bootloader, kernel and device tree stage, but the init system which sets up the userland and starts the services which drive your OS and applications. The tutorial is an experiment how to boot fastest into a limited busybox "shell" (ah not even that), no real OS, no service management, no multi user system/authentication, not package manager, nothing. It boots fast, but you cannot do anything. If you want to run a single script or process on that machine (like the Qt application mentioned in the tutorial, manually compiled and copied to the RPi, some sort of status monitor it seems), that's fine, but an RPi 4 is wasted hardware for this. We use the official, tested and capable RPi kernel, bootloader, dtb and firmware stack and won't offer a feature to compile a custom kernel, given how much can go wrong when someone without any experience with kernel compiling starts doing it. There are guides and instructions how to compile a custom kernel, but I do not see a reason to do so, as long as you do not need additional kernel features/modules which are not enabled in the official kernel. As said the major boot time comes from the init system userland part, not from the kernel. DietPi is a minimised OS, but still Debian based, with the intention to have the power and flexibility of systemd service management, APT package manager with Debian's ~60,000 available software packages, a proper UNIX user management with authentication systems, network management, and a capable shell with the basic command-line utilities. Only with this, we are able to provide the system configuration options we do, and the options to install from a larger number of server software options and stacks, which do require some sorts of underlying OS like this. If you want to make a fair comparison, check out Raspberry Pi OS Lite, Ubuntu Server or other distributions server/lite images which do have a package manager, init system with service management, shell, multi user system etc. With what we did compare with, DietPi boots fastest 😉. |
Thank you for your detailed and very prompt reply.
We may be wrong, but our little experiment so far seems to locate the culprit somewhere within the bootloader, kernel and/or device tree stage, outside of "systemd" (we never booted into the systemd during the test). PS: |
Whole bootloader and kernel is not provided by DietPi. It's the original one directly delivered by RPi foundation. |
Did you check Not sure how your The question also is what you actually want to measure and want to do with the system. If you really want to boot into a custom script and don't want to load any init system, then this may be interesting and you may be able to improve this boot time (sacrificing mentioned full server capabilities). But if you actually want to boot into a multi user init system, then what you measure has not really much relevance, but Also if you suspect any suboptimal bootloader behaviour, I recommend to watch its output with a UART adapter. E.g. the EEPROM on RPi 4 can be configured, like the boot order so that the SD card is checked at first (should be the default, though) and other parameters. Also you can add If you really find an issue or possible optimisation without downsides, you should report it to the RPi devs: https://github.com/raspberrypi/firmware |
I'll mark this as closed. Feel free to reopen if required. |
Creating a feature request
Is your feature request related to a problem? Please describe:
Describe the solution you'd like:
Describe alternatives you've considered:
Additional context
I really believe this would better the DietPi mission of creating a swift OS
The text was updated successfully, but these errors were encountered: