Fast Boot & Reboot
"Fast" is a relative term when it comes to server hardware. The BIOS tends to do a lot more checks, which makes the process inherently slow. But the OS itself has a lot to do when shutting down everything and bringing it back. I prefer this to be as fast as possible.
Setup
Unlike the installation times in a VM, these times are on actual server hardware. As such, it's important to describe the servers a bit and what they're doing.
- Process load
- FreeBSD: 8 jails (considerably more)
- Debian: 1 LXC/LXD container
- Disk Encryption
- FreeBSD: 6 geli-encrypted HDDs, 5400 RPM
- Debian: 4 luks-encrypted HDDs, 7200 RPM
- CPU
- FreeBSD: Xeon E3-1275 v6 (much less powerful)
- Debian: Xeon E-2388G
Spec-for-spec, Debian has an unfair advantage. Less load, less drives, newer drives, faster drives, and a faster CPU.
Results
FreeBSD reboots in two-thirds of the time of Debian, despite the hardware disadvantages and despite having more things to get started at boot.
OS | Reboot to BIOS |
BIOS to Loader (BTL) |
Loader to Kernel |
Kernel to Login |
Total | Total Minus BTL |
---|---|---|---|---|---|---|
FreeBSD 13.2 | 20s | 39s | 5s | 58s | 122s | 83s |
Debian 12.1 | 25s | 42s | 10s | 91s | 168s | 126s |
These results are far from scientific, but FreeBSD consistently boots faster for me. On the same hardware, Linux systems like Void would take incredibly long to shutdown virtualization tasks. I found Arch Linux configured with systemd boot would perform the best of the Linux options, but still slower than FreeBSD. I suspect the main bottleneck is the LUKS decryption step. FreeBSD seems to zip right through this with geli(8).
In short, FreeBSD wins the race. It's probably not the most important criteria, but less downtime is better. If I must reboot, I want it to be snappy.