Ubuntu 19.10 to use LZ4 compression to boot even faster

The Ubuntu kernel team concluded that LZ4 was the best way to go as it was much faster than the method they currently use in their kernels, GZIP. Read on for details.

Canonical’s Ubuntu 19.10 “Eoan Ermine” will boot even faster than its predecessor, Ubuntu 19.04 “Disco Dingo” according to Ubuntu’s kernel team.

After extensive testing on a variety of compression options on the Ubuntu installation image, Canonical engineers determined that the LZ4 decompression method provided a most appreciable gain in speed.

Ubuntu 19.10
Ubuntu 19.10

The purpose of the kernel team’s testing was to find the most effective compromise between best compression (i.e., small file sizes) and decompression (i.e., speedy unpack times).

Ubuntu’s early boot requires loading and decompressing the kernel and initramfs from the boot storage device. A variety of factors determine this speed, including memory/cache speed for decompression and the compression type, the CPU, and speed of loading an image from the boot device.

Ubuntu 19.10 Developmental Build
Ubuntu 19.10 Developmental Build

The Canonical engineers conducted multiple experiments benchmarking several x86 configurations using the x86 TSC (Time Stamp Counter) to measure kernel load and decompression time.  The team tested six different compression types: BZIP2, GZIP, LZ4, LZMA, LZMO, and XZ.

The Ubuntu kernel team concluded that LZ4 was the best way to go as it was much faster than the method they currently use in their kernels, GZIP.

However, the compressed LZ4 kernel was ~25% larger than was GZIP.  This was of no considerable consequence since the longer LZ4 kernel load time was overcome by far faster decompression time.  This was true even with a slow CPU and slow spinny media.

The faster the media became, the clear compression choice was LZ4 decompressing as the load time difference between GZIP LZ4 and LZO diminished.

Kernel compression shaves but fractions (~0.29 seconds on the slow x220 and ~0.05 seconds on faster servers) of a second in terms of total boot time.

Although not huge wins, the sin is but a simple config change. Canonical’s Colin King simplified the explanation on his blog:

Even with slow-spinning media and a slow CPU, the longer load time of the LZ4 kernel is overcome by faster decompression time.

According to the official release schedule on the Ubuntu wiki, Canonical’s Ubuntu 19.10 “Eoan Ermine” release schedule is:

  • Beta Release: September 26, 2019
  • Final Release: October 17, 2019
Travis Rose
Hi, I'm M Travis Rose, a contributor to FOSS Linux. I have over thirty years of experience in the IT arena, at least fifteen of which has been working with Linux. I enjoy converting existing Windows users to the wonderful world of Linux. I guess you could call me a Linux-evangelist. Long live Linux!

LEAVE A REPLY

Please enter your comment!
Please enter your name here

STAY CONNECTED

23,422FansLike
377FollowersFollow
16SubscribersSubscribe

LATEST ARTICLES

How to Create a Comprehensive Mail Server on Ubuntu

Postal is a free and open-source mail server used to send and receive emails. It comes loaded with tons of excellent features and functionalities, making it extremely popular among large organizations as well as in enterprise settings.

The 10 Best Linux Performance Monitoring Tools

Do you want to monitor the performance of your Linux system? Are you looking for some powerful performance monitoring tools to help you out? If you agree, it's your day as we have put together a detailed list of the ten best Linux performance monitoring tools.

How to Boot your Windows or Linux PC from a USB Drive

Sometime back, the process of installing an operating system required users to pop a bootable media disk into their DVD or CD drive and use it to boot the PC. But times have changed. Nowadays, the most common way of installing an OS is booting from a USB drive. The use of USB drives is further propelled by the current production of slim and lightweight laptops with no support for DVD/CD drives.

Python For Loop: Everything You Need to Know

Loops are one of the essential elements in any programming language, and Python is not an exception to it. Loops are used to repeat a statement or a block of statements multiple times. If there were no concept of loops in programming languages, we have to write each statement again and again for the number of times we want to execute it.

How to install LibreOffice on Fedora

If you are looking for a feature-rich and reliable Office Suite for your Fedora PC, then you have an excellent option at hand. LibreOffice, a free and opensource app, has stood the test of time and evolved into a beautiful alternative to Microsoft Office.

How to change Hostname on Ubuntu

Generally, a hostname is just an assigned name to a computer, laptop, or any other connected device to a network. You can say a hostname is a computer's nickname, and it is used to identify the machine over the network uniquely.

MUST READ

Buyers who wish to go for a machine that is based on Linux often show interest in Chromebooks due to the form factor and extended battery life capabilities. Although ChromeOS power these machines, users can still miss out on a more genuine Linux experience. For those who happen to agree, the new Lemur Pro by System76 might get some heads turning.
Linux is growing faster than ever. As per the latest report, there is a drop in the Windows 10 market share for the first time, and Linux's market share has improved to 2.87% this month. Most of the features in the list were rolled out in the Pop OS 20.04. Let's a detailed look into the new features, how to upgrade, and a ride through video.

5 ways to send emails using the command-line in Linux

Did you master using the command-line in Linux? There is no limit to what one can do via the Linux Terminal. One of such things we are going to discuss today are methods of sending an email using the command-line.

6 best task managers for Linux

One of the essential tools in any Linux distribution is a Task Manager. It is a system monitor application that gives you a report of all programs running on your computer and the status of your RAM and CPU usage.

How to create a Live Linux USB drive using Etcher

In the Linux community, one thing is common between almost all of the users: trying out different Linux distributions. Most of the Linux based distributions have a great way of being tested as they provide ISO images for creating a Live USB.

How to make Ubuntu look like Windows XP

If you are in a nostalgic mood and would like to make your Ubuntu look like Windows XP, you just landed in the right place. In this article, we will show you how you can make Ubuntu look like Windows XP by applying the GTK+ theme. Our Ubuntu distribution of choice is Ubuntu 20.04 LTS.