kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu 19.10 その20 - Linux kernelとinitramfsのアーカイブ形式をLZ4に・Ubuntuの起動時間の改善

Linux kernelとinitramfsのアーカイブ形式をLZ4に

現在開発中の「Ubuntu 19.10」では、「Linux kernel」と「initramfs」のデフォルトのアーカイブ形式が「LZ4」になる予定です。
この変更により「Ubuntu」の起動にかかる時間が改善されます。


  • Boot speed improvements for Ubuntu 19.10 Eoan Ermine

Linux kernel及びinitramfsの読み込みと展開

「Ubuntu」を起動すると、起動ストレージから「Linux kernel」及び「initramfs」イメージの読み込みと展開が行われます。
展開は圧縮されたアーカイブを展開する処理を指します。
この時ストレージの速度や展開にかかる時間(CPUやメモリーの性能)が起動時間に影響を与えます。
「Linux kernel」のアップデート時などイメージを作成する時も同様に、これらの要素に影響を受けます。

読み込みにかかる時間と展開速度のトレードオフ

ストレージからイメージを読み込む際、イメージサイズ(ファイルサイズ)が小さいほど読み込みにかかる時間を抑えることができます。
イメージサイズを小さくするには、圧縮率が高い圧縮形式でイメージを作成する必要があります。

その一方で圧縮及び展開にかかる時間は圧縮・展開のアルゴリズムに依存し、複雑なアルゴリズムほど時間がかかる傾向にあります。
一般的に高い圧縮率を求めるなら、高度なアルゴリズム(コストがかかるアルゴリズム)を選択することになります。

つまりイメージサイズを小さくするには圧縮率を高くする必要がありますが、圧縮・展開を早く行うには圧縮率が高くないアルゴリズムを採用する必要があります。

何が一番影響を与えるのか

イメージの読み込みにかかる時間と展開にかかる時間に着目すると、これらに強い影響を与える要素はハードウェア環境によって変わってきます。

遅いCPU + 遅いストレージ

「遅いCPU + 遅いストレージ(例:HDD 5400 RPM)」を搭載した環境では、イメージの読み込みにかかる時間が最も影響を与えます。

遅いCPU + 速いストレージ

「遅いCPU + 遅いストレージ(例:SSD)」を搭載した環境では、イメージの展開にかかる時間が最も影響を与えます。

速いCPU + 速いストレージ

様々な圧縮形式において僅かな読み込み時間の差しかありません。

Ubuntu kernel teamでテストを行った

「Ubuntu kernel team」は以下の圧縮形式でイメージを圧縮し、x86環境でテストを行いました。

  • BZIP2
  • GZIP
  • LZ4
  • LZMA
  • LZMO
  • XZ

このうち「BZIP2」「LZMA」「XZ」は展開に時間がかかり、早々に候補から除外されました。

イメージサイズ

イメージサイズの観点で見てみると、イメージサイズが最も小さくなるのは「GZIP」です。
続いて「LZO」で最大16%のサイズ増加、「LZ4」で最大25%のサイズ増加が見られました。

展開にかかる時間

展開にかかる時間で見てみると、「LZ4」や「LZO」が「GZIP」より高速な展開を行ったケースが計測され、特に「LZ4」はそのケースが「LZO」よりも多くありました。

LZ4でどのくらい速くなるのか

起動時間の短縮はハードウェア環境によって異なり、テストでは「GZIP」と比較し「0.3秒(遅いハードウェア)」から「0.05秒(高速なハードウェア)」の短縮結果が測定されています。
例え「遅いCPU + 遅いストレージ」を搭載した環境でも、展開速度の速さにより「GZIP」よりも望ましい結果が出ています。



デフォルトのアーカイブ形式をLZ4に

上記のテスト結果を受け「Ubuntu 19.10」では、「Linux kernel」と「initramfs」のデフォルトのアーカイブ形式が「LZ4」になる予定です。
本件の対象となるアーキテクチャーは以下の通りです。

  • x86
  • ppc64el 
  • s390

Ubuntu
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu CPUfreq その1 - CPUfreqについて・ CPUfreqドライバーについて・ CPUfreqガバナーについて
    CPUfreq   CPUfreqは、CPUのクロック数を動的に変更する機能です。   CPUfreqを利用することで、OSの負荷に応じて動的にCPUのクロック数を調整することができます。  これにより、省電力効果を得ることができます。   CPUfreqを利用する場合...
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Ubuntu 24.04 その93 - Linux kernel 7.0 が利用可能に・Linux kernel 7.0 にアップグレードするには
    Linux kernel 7.0 が利用可能に 現在 Ubuntu 24.04 LTS を利用しているユーザーは、Linux kernel 7.0 へアップグレードできるようになりました。
  • Ubuntu 26.04 その59 - amdgpu ドライバーでパフォーマンス低下のお知らせ
    amdgpu ドライバーでパフォーマンス低下のお知らせ 次期 Linux kernel のアップデートで、amdgpu ドライバーのパフォーマンスが低下するお知らせが出ています。
  • Linux その407 - COSMIC DE 開発7ヶ月の歩み・COSMIC DE に搭載された新機能のまとめ
    COSMIC DE 開発7ヶ月の歩み COSMIC デスクトップ環境の開発者が、ここ7ヶ月の開発の歩みと、今までに COSMIC デスクトップ環境に搭載された新機能を紹介しています。
  • Linux その404 - COSMIC Epoch 1.3.0 リリース・ウィンドウのすりガラス効果に対応
    COSMIC Epoch 1.3.0 リリース 2026年7月15日、COSMIC Epoch 1.3.0 がリリースされました。
  • Ubuntu 26.04 その64 - AMD 環境で PC をシャットダウンできない現象
    AMD 環境で PC をシャットダウンできない現象 AMD 環境で PC をシャットダウンできない現象が報告されています。
  • Ubuntu 26.10 その18 - GRUB の機能削減とセキュリティー強化
    GRUB の機能削減とセキュリティー強化 GRUB の機能削減とセキュリティー強化が予定されています。
  • Ubuntu 22.04 その79 - 画面ロックの有効・無効を設定するには・画面ロック時の設定をカスタマイズするには
    画面ロックの有効・無効を設定するには 一定時間ユーザーによる操作がない時に、自動的に画面をロックしパスワードで保護したり、画面をブランク状態にできます。
  • Ubuntu 26.04 その65 - ソフトウェアのアップデート通知が表示されない現象
    ソフトウェアのアップデート通知が表示されない現象 ソフトウェアのアップデート通知が表示されなくなる現象が報告されています。
記事のピックアップ
オプション