Fedora 26 Boot and Suspend Speed Test

Fedora 26 Final has just been released! Woot! Woot!

In preparation for an actual distro review of Fedora 26, I have decided to look at the boot times and suspend times of this distro.

Motivation

Fedora 26 Beta Workstation has been out for a while now. So far I have written a piece on how to install it, and another piece for some extra usability tweaks. Both reviews/walkthroughs was done using my trusty Acer Switch Alpha 12, 2-in-1 laptop.

Now that the final version of Fedora 26 has been release, it is as good a time as any to punch those keys, and start a full distro review. Before I do that though, I have decided to look at this distro from a different perspective. I want to examine how fast it boots, and how fast it handles suspends.

Part of the reason for this interest is that for one, I use Fedora on a daily basis, not to just look at shiny icons, but to get actual things done. How long I have to wait, before I can do my stuffs, impacts my satisfaction with the usage. Boot times and suspend times impact users.

The other angle to this, is that other people, non-linux enthusiast might actually start to consider using Linux, for different reasons. When they load up the distro of their choice on their machines, they’ll soon notice the boot and suspend performance, and will contrast their previous experience on other OSes, such as Windows and OS X. How they interpret that experience, might also have an effect on whether this stick with Linux or not. Here, I try to give my perspective on this subject, for future Linux adopters.

Boot Time

First, here’s a full boot video. Let’s first take a look at how the boot process looks. If you are new to Linux, here’s what it looks like.

While the video may have lasted up to a whopping 46 seconds, it is not a good representation of how fast this distro boots. We also need to account for additional factors:

  1. Time it takes to hold the power button. It takes about 5 secs holding the power button, before the machine actually turns on. Should be true for other machines as well.
  2. How fast I press [Enter] during GRUB screen. If I spam the [Enter] key, this will be instant. If I leave it, takes up to 5 secs for it to activate the first option.
  3. How fast I select my profile, and enter my password. This will be super slow on camera, cause I had to hold the camera with one hand, and operate the keyboard with another.

So, in order to make the test more fair, I split the boot sequence into parts, and test them separately. Testing it this way feels a bit counter – intuitive, because I prefer to just time the full boot sequence Off => Desktop, however it is also more consistent. This way, I know exactly how much time, each part of the boot process contributes.

I also try to repeat each section several times over, to get somewhat consistent result. Here, I document the times it takes for each boot section to complete.

Powering On

I start from the machine in Off state. Nothing is on. Power LED is off as well. I press on the power button, takes about 5 sec for the LED to light up.
Time: + 5 sec

We should really discount this time, since this is really on the hardware itself, and has nothing to do with Fedora. But, I document this here for clarity.

GRUB Screen

The power button LED turns on, so the machine is booting up now. After some appropriate Acer logo, The GRUB screen shows up. It takes about 8 sec to get to this screen.

Time: + 8 sec

I don’t think this time actually counts as well, since Grub loading is pretty standard (feel free to let me know). Loading GRUB is just loading GRUB, plain and simple. There’s probably not much the distro can do to optimize this part.

Booting up to the Login Screen

After I press [Enter], or after the timer on the GRUB screen runs out, the Fedora distro will continue with the boot up sequence, I can see the Fedora logo show up. Finally, I am greeted with the Login screen. My name show up here, because I am the only user on this machine. Takes 15 – 18 seconds for the Fedora to boot from the GRUB screen to this Login screen.

Time: + 18 sec

I am not so clear about this part, so feel free to correct me. Basically, during this sequence, the distro will start the systemd service manager, and a whole bunch of processes will start up, in parallel if possible. So, if systemd does its job well, this time will be as low as possible. I am not sure why, but the times for this sequence is a bit inconsistent. Could be that different processes are spawned at different orders each time? I don’t know.

It is possible that I can optimize this section, by simply turning off services I don’t need. I’ve never done it before, I might explore this option in the future. But, when I install a distro, I just expect it to work without me to interfere too much on the internals. A user should be able to just install a distro and use it, plain and simple. So, I feel it fair that we judge this distro’s boot time based on its default condition first, and worry about optimizing later.

Fully Loaded Desktop

After entering my password in the Login Screen, I press [Enter] and Fedora would load the desktop for me. Takes about 2 sec.

Time: + 2 sec

Verdict

From Grub to Desktop : 20 secs

From Power off to Desktop: 33 secs

There you go. From a GRUB screen to fully loaded desktop, it takes about 20 seconds for Fedora to completely load. I have been using Linux exclusively for almost a decade now, and I think, for a distro to get down to this, it’s pretty good. It’s not super impressive, but it’s pretty good.

And, this is for a general purpose OS, that can cater to a majority of use cases. You shouldn’t have to optimize it too much, turning off services and such, and without touching anything, it just works and it’s pretty good.

However, it also depends on perspectives and expectations. I’m not sure how Windows 10 and OS X performs in this regards, but a user moving to Linux is going to contrast this against what they had before. If I have to guess, I would say that Fedora 26, is at least on par, or not that far behind.

Of course, if you feel that the power on time is too long, you should just suspend your session in between uses.

Suspend and resume

As with most modern OSes, Fedora 26 allows you to suspend your current session, instead of completely powering off, in-between uses.To suspend on this machine, you can simply press the power button on the left side. If you followed my Fedora 26 Tweaking guide, you can also use the Suspend Button extension to have easy access via touch screen. The OS will then ‘pause’ all processes, save the session in RAM, and power down the machine. The RAM however, will keep using a small amount of power (< 1 Watt, maybe?), but this is so small that it will last over a week at least.

To resume your session, you press the power button again. The machine will wake itself up and resume your last session. You will be presented with a lock screen, and just have to enter your user password to resume your session. I’ve been using this OS for more than a month now since Beta release, and it has been quite consistent and stable. Everything just works.

I did a small benchmark to test how fast this can be done. To suspend the machine, from the time I press the power button, to when the machine is completely off (power LED is off), takes about 5 seconds. When resuming the machine, from the time I press the power button, until my session is loaded (minus time taken to type my password), takes about 5 seconds as well. I believe those are pretty standard times, and pretty good.

I almost exclusively just suspend the machine after each use. It works every time without issues. This way, I can get rid of the wait times. However, once a week, I will apply updates to the OS and give it a good reboot or two, to make sure everything loads correctly. I also power it off when I am traveling longer distances.

Conclusion

Well, there you have it. I don’t have a full distro review this time, BUT I managed to discuss a somewhat important factor of laptop usage, and how Fedora 26 performs here. I hope that this was a good read, and it helps you somehow.
Cheers!

Leave a Comment