Fedora 25 Review: A Stable Release, But Slightly Slow to Boot (on rotational disks)

The last version of Fedora operating system I reviewed was Fedora 23, and I quite deliberately skipped Fedora 24. The main reason was that starting with Fedora 22, Fedora developers had decided to abandon a core utility (‘systemd-readahead‘) that was capable of speeding up boot-up times quite significantly on rotational hard disk drives.

The reason for its exclusion according to Fedora developers was because they don’t use rotational disks anymore, that was basically their explanation. Now, I do believe that I have a firm grasp on of the mentality of Fedora & GNOME (they’re very close communities), and thus I knew it mattered little what the users had to say about such decisions, because user criticism doesn’t change much in their world. Therefore I was no surprised to realize that systemd-readahead was not present in Fedora 23.

So I skipped the next release (Fedora 24) out of anger to be honest, but then again, I thought reviewing it once every while would help those that love this GNU/Linux distribution. So that’s why I decided to review the latest release, Fedora 25 which was officially released a little over a week ago.

fedora-25-desktop

So anyhow, the most important change in this Fedora release is ‘Wayland’, which is the default display server protocol used. Wayland was created to address the drawbacks of the old X.Org display server, because X.Org was created to address issues in the old days of computing and it was becoming exceedingly difficult to patch to suit the needs of today. While there are many technological differences between the two (again because they belong to two different ‘worlds’), in simple terms, they are both key components of a modern computer operating system because they’re responsible for ‘drawing’ the Graphical User Interface (GUI). Due to its design, Wayland significantly simplifies the whole process and is more efficient at it compared to X.Org as well. So yes, this is a big change.

Wayland has been available for Fedora users in few of the recent releases for testing it out, but Fedora 25 uses it by default. However, proprietary GPU drivers (such as those from Nvidia & ATI) may not fully support the new display server and the protocol. Therefore, there can be issues while trying to run Wayland under them. But, the open-source counterparts (back-engineered drivers) seem to be quite stable at the moment. That said, the X.Org session is still available under the login manager, and there is also a wrapper called XWayland for letting applications written X.Org in mind to run smoothly in Wayland, such as Firefox, for instance.

Fedora 25 also ships with Kernel 4.8.6, X.Org 1.18, Wayland 1.12, Mozilla Firefox 49.0, LibreOffice 5.2.3.3, Rhythmox 3.4.1 and features the GNOME 3.22.1 release, mainly. The GNOME Software [center] now fully supports Flatpack application packages handling (installing/removing) as well (Flatpack is a way of packing software applications for GNU/Linux where developers can include everything their application need to run properly, including libraries and its other dependencies, in a single package, which can be used in any GNU/Linux system. It’s quite identical to Ubuntu‘s Snappy packages, which Ubuntu introduced in Ubuntu 16.04 LTS).

how-flatpack-packing-works-illustration

For this review I downloaded the 64-bit version that comes with the GNOME desktop (of course). The downloadable ISO disc image size is about 1.4 GB. I’ll stick mostly with performance related info in this Fedora 25 review because there aren’t huge changes (which are easily visible to end-users) as far as I know, and I’ll be using the default GNOMEShell interface as my desktop session. I’ve also been using Fedora 25 for the past 4 days as my primary operating system so that I can better assess the stability as well.

Below are the hardware details of the laptop computer I used to test it:

Intel Core i7-5500U, Hybrid GPU Setup (Intel Broadwell HD Graphics 5500, Nvidia 920M), 4GB RAM DDR3, Hybrid Permanent Storage Setup (Seagate 5400 RPM, 500 GB rotational disk and a Kingston 24 GB SSD), Qualcomm Atheros AR9565 Wireless Adapter, Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller, Realtek ALC3236 Sound Card, LED Display (1366 x 768 resolution, 60 FPS/HZ). It's an Asus laptop (F302LJ-FN024H).

As you can see, this laptop comes with two separate hard drives. One is small (24 GB in capacity) but a faster SSD drive, and the other is a more roomy but a slower rotational disk drive (500 GB). I completely avoided using the SSD because that’s where my main operating system is installed (Ubuntu 16.10 these days). But that’s not the main reason actually. I did this because I’ve created a ‘EFI’, ‘Boot’ and a ‘root’ partition (20 GB) in the slower rotational disk for the exact purpose of using them to review different GNU/Linux distributions. And those are the partitions that I’ve used on this laptop to measure all the performance related data on other distributions.

So, before starting, I completely destroyed all the data on those partitions so that I end up with a ‘clean’ system which in turn should increase the accuracy of the performance related data. Then, after I was done installing Fedora 25, I boot into the newly install operating system 5-6 times for letting things settle down (first time setups etc) as well. The only change I made to the newly installed system was adding the System Monitor to the Application Dash in GNOMEShell. This was done to avoid unnecessarily increasing the memory usage, because whenever I was measuring the memory usage, if I were to open it by searching on Dash, that would’ve increased the memory usage thus negatively affecting the reading. And while measuring Boot Up Times, Memory Usage and Shutdown Times, I also took 5 samples for coming up with the average results as well.

Other tests such as Power Usage (idle) doesn’t require such attention because it uses a software tool for that, and it’s very accurate. It takes lots of samples and runs for couple of minutes as well. I also ran the System Responsiveness test 2 times (I’ll explain why) as well. It was only after I was done running these tests that I actually started use the operating system and to look for what’s new etc. And, I’ve compared Fedora 25’s performance with Ubuntu 16.10 & Ubuntu GNOME 16.10 because I don’t have performance data of a recent Fedora release that was tested under this laptop (Fedora 22 & 23 were tested on my old laptop). That said, Ubuntu GNOME 16.10 should be a pretty good candidate for comparing with Fedora 25 since it’s also based on the GNOME 3 desktop.

The Installer…

anaconda-fedora-25-installer-in-action

(appearances can be deceiving!)

Fedora’s installer (Anaconda) can be a bit confusing because its installation steps are not progressive. You just have to go forward and then come back, select something else, go forward then come back and select another setting and go forward etc etc. Also, the partition setup is not the most user friendly interface either. I actually like the old Anaconda far better than I like the new version. Other than this, my usual criticism of its UI, nothing major has changed as far as the Anaconda’s appearance is concerned. And I didn’t encounter any errors while installing it either.

I’ll skip the GRUB theme and the boot logo, because they look exactly the same compared to many previous releases (plus, it’s a little difficult capturing the boot-logo. Therefore, unless there is something new, I don’t usually include one in my reviews).

The Desktop…

As mentioned in the beginning, Fedora 25 features GNOME 3.22.1 release. Except for the new wallpaper (which looks nice), there are no changes in the look-n-feel of the desktop layout.

fedora-25-desktop

The file manager has changed slightly. By default, it uses huge icons for folders (it has been doing that in few of the previous releases as well). I honestly don’t understand the logic behind this setup. It’s ugly! Luckily, it can be changed pretty easily.

files-3-22-1-folder-options-feature-changes-fedora-25

You just click on the button that is located left to the Close button and change the zoom level (I prefer it zoomed out at 50%). Compared to some of the recent GNOME releases, this button and the one right next to it (left) have changed in terms of options that they used to provide.

For instance, when you click the button next to it (one with four small squares), it changes the folder into the list view. And that’s it. Previously, it was through this button that you could change the zoom levels and folder & files arrangement. Now that it’s heavily simplified, rest of its functions have been moved to the other button. All in all, I like these changes.

There actually are a few subtle enhancements in this GNOME release. The best way of exposing them to you is to show you the below video:

Multimedia Playback & Adobe Flash…

Fedora does not include support for proprietary multimedia codecs. However, installing them is not difficult at all. I usually use the RPMFusion repository and install either VLC or SMPlayer. Here I’ve been using VLC for watching movies and playing audio tracks (I don’t have a huge audio collection, so I’m always more than happy to open them hand picked in VLC!) and so far no issues.

As for Adobe Flash, I installed Google Chrome and Adobe Flash playback is also excellent under it.

google-chrome-running-flash-player-on-fedora-25

I also installed Skype (the old version) and unfortunately didn’t have a chance to make a call with an actual person. But I made a simple ‘test call’ and I didn’t ran into any issues. I also checked the video camera under ‘Options’, and Skype was able to capture the video feed coming in. Other features like Skype’s icon being displayed on the system tray area of GNOMEShell is also working.

skype-running-on-fedora-25

I know this is hardly a assessment of Skype, but as of now, this is what I have to offer. I’ll keep you updated if I encounter issues.

Yep, if you have watched the above official video of GNOME 3.22 release, then I think that’s pretty much it when it comes to ‘new features’ in this release. Therefore I’ll move on to the performance comparison.

Performance Comparison…

Boot-Up Times

I used the timer app on my android phone to calculate the boot-up times. I start measuring the moment I hit the Enter key at the GRUB menu and stop measuring when the desktop was loaded (yes I’ve enabled the auto-user login). I do not necessarily wait till the desktop is fully loaded all the time. For instance, if the desktop was loaded and was usable (if I knew that I could open an application) then I consider it’s loaded, even though rarely on some distributions a start-up app or two maybe still loading in the system tray area. But this happens very rarely, and on Fedora 25 the desktop was in fact fully loaded when I stopped measuring.

Below is the graph for comparing:

ubuntu-16-10-vs-fedora-25-boot_up-times-graph

As you can see, of the three operating systems, Fedora 25 is the slowest (14.2% compared to Ubuntu 16.10 and 24.4% compared to Ubuntu GNOME 16.10) to boot which is not surprising because as mentioned in the beginning, the developers have refused to include a utility that could’ve potentially cut down the boot-up times anywhere between 30-39% on rotational disks! But who cares right? I mean, this is the year 2060 and rotational disks are history!

Memory Usage

When measuring the memory usage, after the desktop is fully loaded, I waited for another couple of seconds, and then opened the system monitor application. After I opened the system monitor, I usually wait for another 5-6 minutes and observe any unusual memory ups and downs, and when I feel confidant that everything is calmed down to a certain degree, then I write down the reading. Below is the graph I created based on those data:

ubuntu-16-10-vs-fedora-25-memory-usage-graph

Yes here too Fedora was the loser but the margin was quite close when it came to Ubuntu 16.10 (Ubuntu was 3.3% lightweight), and Ubuntu GNOME 16.10 was still about 9.6% lightweight compared to Fedora 25.

CPU Usage (idle)

cpu-usage-at-idle-fedora-25

When no user applications were running (applications that were manually opened by me), I let the system to idle, and for 7-8 seconds the CPU usage under Fedora 25 was 0% which was excellent. It rarely went beyond 1%, when observed for long periods (30-40 seconds). I loved it. Both Ubuntu 16.10 and Ubuntu GNOME 16.10 also delivered quite identical results.

Power Usage (idle)

When measuring power I use a utility called ‘powerstat‘. This utility, as briefly mentioned in the beginning, takes lots of samples and is highly accurate. And from the OS settings’ point of view, I made sure WiFi was turned ON (connected to my wireless router), Bluetooth Turned OFF, screen brightness set to its max and any setting related to the screen brightness (screen-savers, dimming, turning OFF etc) were turned OFF. Then I let the operating system to idle.

Below is the actual screenshot from the utility showing the actual readings under Fedora 25:

power-usage-idle-of-fedora-25

Below is the graph for comparing:

ubuntu-16-10-vs-fedora-25-power-usage-graph

Here as you can see, both Ubuntu 16.10 and Fedora 25 recorded identical power usage readings and Ubuntu GNOME 16.10 was the most power hungry from the bunch (9.7% compared to other two).

Hardware Recognition…

All three of these operating systems were able to correctly recognize and configure my hardware devices (correctly restores the previously set screen brightness, state of Wi-Fi & Bluetooth etc), except for the touch-pad. My touch-pad (Focaltech) works well (gesture recognition etc) however, as soon as I put the laptop computer to sleep and then turns it back on, the touch-pad stops working. This is a known issue with the driver, and there isn’t even a proprietary driver for it at the moment either.

As pointed out in the hardware details, my laptop comes with a hybrid graphics setup -- Intel HD Graphics 5500 & Nvidia 920M. Intel provides open source drivers so it works out in any modern GNU/Linux operating system by default. The Nvidia 920M GPU is also configured by the reverse engineered open-source driver ‘nouveau’ and it works quite well. However, the proprietary driver provided by Nvidia lets you access many settings and delivers better performance on most occasions.

Now installing the proprietary driver on Ubuntu & Ubuntu GNOME was so easy because they include a GUI utility that does pretty much everything for you and it works without any issues under them as well.

On Fedora there is no such tool provided by default, but installing one is not that difficult once you have enabled a trusted third party repository such as RPMFusion. The problem with this release is that, since Fedora now uses Wayland display server protocol (the display server is called the ‘Wayland Compositor’), the proprietary Nvidia driver may run into issues while running on Wayland. So until the driver ‘matures’ so that it can handle Wayland without major issues, you will have to wait. That being said, if you must have the proprietary GPU driver, then the best solution would be to select the XServer on the login screen thus disabling Wayland, and then installing the proprietary driver from a trusted third party Fedora repository such as RPMFusion.

If interested, follow these instructions on RPMfusion and you should have your system configured in a matter of minutes.

There is an alternative, though…

Fedora 25 comes with an interesting feature. And that is, under Dash, for certain applications you can open one by using the dedicated GPU (if you have a hybrid GPU setup). To do that, just right click on an application’s icon and from the menu choose ‘Launch Using Dedicated Graphics Card’, if that option is available, that it!

For opening applications in this manner Fedora uses the reverse-engineered open-source driver.

launching-vlc-using-the-dedicated-gpu-on-fedora-25

There is however a patched proprietary driver if you desire the optimal performance, but it may not be highly stable. There is an excellent article written by Christian Schaller on the subject, I highly recommend you read it if interested in knowing more.

Stability

Fedora 25 really shines here. For all these days I’ve used it so far (this is the 5th day), I’ve not seen a single application crash!

System Responsiveness

Of the main key components of a computer, the main storage device is still one of the most slowest. Sure there are some fast SSDs out there, but to ‘make up’ for it, the file sizes have also increased nowadays. Therefore copying files with 20-40 GB in size is quite common these days. And thus, just because the drive is a fast one, it does not necessarily mean that it is going to fix all performance related lags.

So anyhow, my test however is a simple one, and since I’m using a rotational disk, I also use a quite small file for the test. What I do is simple. I start to copy a file that’s about 1.5 GB in size, and as soon it’s started, I try to play a multimedia file, and then I also try to open a few programs, some by searching through the main menu (or Dash or whatever way is present in the OS) for adding more pressure on the rotational disk, and one or two if shortcuts are present in the main menu. And then (yes, I’ve become exceedingly fast at doing all this, I’ve been doing this for many years you know! 😀 ), I also try to open a location that’s filled with a somewhat large number of files & folders (I usually open ‘/usr/bin‘) through the file manager.

When all this is happening, I also make sure to notice the mouse pointer’s sensitivity because it’s a good indicator of the operating system’s responsiveness. So at the end, if the multimedia file was played without major interruptions, and if most of the applications were opened (I don’t give a whole lot of importance to the file manager opening that location as I’ve already put the OS under a lot of stress) and while all this was happening, if the mouse pointer didn’t lose its sensitivity that much, then I consider the OS to be a quite responsive one.

So what happened in Fedora 25?

(the below screenshot is only an illustration)

system-responsiveness-test-illustration-fedora-25

At first it sucked! VLC was not able to play the file at all, and it actually was able to open the file fully (let alone start the playback) only after the file copy finished. However, some applications were opened but I couldn’t even enter the location to open in file manager! What a disappointment! Then I looked at the I/O scheduler (this is the software tool the OS uses to manage read/write requests send to the main storage disk) and unsurprisingly Fedora 25 by default uses ‘CFQ’. And ‘CFQ’ has a tendency to not give the optimal results when it comes making the OS responsive when it’s put under a lot of stress. This didn’t worry me because Fedora comes with three I/O scheduler with each optimized to suit different requirement. From the 3 I choose ‘deadline’ because this usually fixes all these issues in my experience (yes that’s what Ubuntu and Ubuntu GNOME use by default).

Then I rebooted the laptop computer re-ran the same test. So how was the results afterwards? The improvements were remarkable, although not unanticipated. VLC was able to open the multimedia file extremely fast and the playback was interrupted for about half a second (it’s nothing!), all the programs (Firefox, LibreOffice Writer, Shotwell, Gnome Software, Terminal, System Settings, Evolution, System Monitor) were opened before the file copy finished, and file manager was also able open the location as well. And the mouse pointer sensitivity was also excellent. As far as system responsiveness was concerned, after switching over to ‘deadline’, it completely reversed the results!

Shutdown Delay

ubuntu-16-10-vs-fedora-25-shutdown-times-graph

As you can see, Fedora 25 took almost twice the amount of time while shutting down. But, unlike the other tests, I’m more forgiving when it comes to turning off the computer, unless it’s painfully long. 8 seconds to shutdown is alright.

Final Words…

If you have a rotational disk, then Fedora 25 will be a little slow to boot and there is nothing you or I can do to fix it. But if you have an SSD, then you shall have no issues here. Other than that, I’m quite pleased with this release actually. Sure the responsiveness sucked the first time on, but as mentioned, it can be fixed, permanently. And the stability is also excellent. While I’m not a huge fan of the GNOMEShell (I think it’s stupid!), the ‘Classic’ session is also available, nonetheless. If you fancy giving it a go, then get it from here, but first make sure to read the release notes. Good luck and thank you for reading!

7 thoughts on “Fedora 25 Review: A Stable Release, But Slightly Slow to Boot (on rotational disks)

  1. Mixed feeling on this, Fedora is very slow to boot nothing to do with readahead it was discontinued from systemd 217 that is a fair while ago most of the slow booting is due to selinux and plymouth. I find Fedora once booted quite fast but not the best way to implement Gnome If you compare with Arch that boots in 20secs on a spinner setup correctly, compare to fedora that is optimised so they have you to believe just under 50secs and astronomical use of ram gnome 3.22 runs around 400 mb at startup again optimised by the user Fedora drops back to around 500mb after disabling plymouth and selinux and data tracking and boot times do come down to the mid 30sec. Gnome classic is gnome shell with a few extensions nothing more and with a few extra extensions is the best looking fully functional de its for using not playing but the so is JWM and that is a WM.
    But a good review nether less
    By the way I’m dyslexic so bear with the bad spelling and composition blame spell-check

    • Hi,

      Thank you for for the input mate. However, when it comes to systemd-readahead, it was directly due to its exclusion why Fedora got slow while booting on rotational media because I’ve observed a Fedora release with and without systemd-readahead. When readahead was enabled the OS boot(ed) 39% faster! That said, you could be right, there maybe other reasons that are responsible for making an OS slower.

  2. Just as an FYI, readahead was removed not because the Fedora team decided to remove it, but because the systemd developers removed it.

    https://cgit.freedesktop.org/systemd/systemd/tree/NEWS#n605

    “systemd’s readahead implementation has been removed. In many circumstances it didn’t give expected benefits even for rotational disk drives and was becoming less relevant in the age of SSDs. As none of the developers has been using rotating media anymore, and nobody stepped up to actively maintain this component of systemd it has now been removed.”

    This would apply to any other distribution that uses systemd. Fedora only follows what’s included upstream.

    • Hi Chris,

      I can’t now remember exactly who (names) was behind maintaining the systemd’s implementation of readahead, but they were Red Hat employees if I’m not mistaken. That said, the point I was trying to make was this. Ubuntu had a similar tool called ‘ureadahead’ which was originally written to run in upstart. But when they made the switch to systemd, they were nice enough to ‘convert’ it so that it’s included as a systemd service (I don’t know if it’s Fedora’s policy only to include upstream code, but if it is, then that’s not a good strategy at all). And, thirdly, in my experience, systemd-readahead did improve the boot-up times by as much as 39% according to my testing.

  3. At the time it certainly did improve boot time but as systemd refined its tuning was really not relevant on arch in fact I did not notice its absence till I read about it and I use spinners. The other bad with Fedora is Nvidia compatibility + its mainly RPM distros that have problems very hit and miss

  4. Hey Gayan old friend, have a merry Christmas and a happy New Year.

    We, who use Antix, have no systemd problems 😉

    Best wishes from Alan

Leave a Comment