Ubuntu Linux で ZRAM を構成する方法

Ubuntu Linux で ZRAM を構成する方法

ZRAM は、CPU の馬力を犠牲にして RAM を増やす素晴らしいソリューションですが、ZRAM 専用の RAM を増減させるように設定するにはどうすればよいでしょうか? 圧縮アルゴリズムを変更するにはどうすればよいですか? このような変更はどのようなシナリオで価値があるのでしょうか? Ubuntu で ZRAM を構成する方法については、この記事を読んでください。

現在の ZRAM 状態を確認する

ほとんどの人は、zram-config スクリプトを通じて Ubuntu および Debian ベースの Linux ディストリビューションで ZRAM を使用しています。それは、可能な限り最も簡単な方法で ZRAM を活用できるからです。次のコマンドでインストールできます。

次に、Ubuntu マシンで ZRAM がすでに有効になっているかどうかを確認します。これを行うには、zramctl ユーティリティを実行します。

Zswap が現在システムで無効になっていることを確認します。

Zswap は、ZRAM と同様に、すべての Linux ディストリビューションにデフォルトで付属する代替 RAM キャッシュ ソリューションです。ただし、ZRAM とは異なり、物理スワップ パーティションに依存しているため、古いディスクでは速度が低下する可能性があります。

コンピューターを再起動して、Ubuntu システムに初期 ZRAM ブロック デバイスを作成します。

正しい ZRAM セットアップを知る

マシンをバックアップして実行している状態で、ZRAM パーティションを報告しているかどうかを確認します。

利用可能なスワップ ファイルと ZRAM ブロック デバイスを表示するターミナル。

スクリーンショットでは、単一の ZRAM ブロック デバイスと共存する典型的なスワップファイルが確認できます。これに関して、私のシステムには 4GB の RAM と 2GB の ZRAM が搭載されており、これは RAM 量の半分です。ただし、ワークロードによっては、そのサイズを変更することが必要になる場合があります。

  • マルチメディアやビデオを扱う場合、それらはあまり圧縮できないため、ZRAM のサイズを減らし、実際のスワップのサイズを増やすことがおそらく最善です。
  • 大規模なデータベースや圧縮率の高いその他の種類のデータを扱う場合は、その逆になります。このようなシナリオでは、ZRAM のサイズを増やすことでコンピューターの応答性を高めることができます。

検討する価値のあるもう 1 つの調整は、ZRAM で使用される圧縮アルゴリズムに関係しています。デフォルトでは、CPU への負担が少ない LZO または LZO-RLE が使用されます。ただし、最新の CPU では、新しい ZSTD アルゴリズムの方が圧縮率が高く、CPU への負荷が多少高くなることは感じられません。PC が 10 年未満のものであれば、古い LZO バリアントの代わりにこのアルゴリズムを使用する価値があります。

ZRAM サイズの変更

ZRAM 設定を変更するには、「/usr/bin」フォルダー内の実行スクリプトを編集する必要があります。ターミナルに次のコマンドを入力します。

「init-zram-swapping」スクリプトをスクロールして、 で始まる行を見つけますmem

zram スワッピング スクリプト内の mem 変数を強調表示するターミナル。

これは、カーネルが ZRAM ブロック デバイスに割り当てるスペースの量を定義します。デフォルトでは、システムの物理メモリの半分が予約されます。「1024」を「512」に置き換えることで、これを 4 分の 1 に減らすことができます。

mem 変数の下位メモリ オフセットを強調表示するターミナル。

mem 値を「1536」に設定することで、ZRAM が使用するメモリの量を増やすこともできます。これにより、物理メモリの 4 分の 3 が ZRAM に割り当てられます。

mem 変数のより高いメモリ オフセットを強調表示するターミナル。

ZRAM圧縮アルゴリズムの変更

同じ場所から ZRAM の圧縮アルゴリズムを変更することもできます。これを行うには、新しいターミナル セッションを開き、ZRAM で利用可能なすべての圧縮アルゴリズムを一覧表示します。

ZRAM モジュールで利用可能なすべての圧縮アルゴリズムを表示するターミナル。

高度なカスタム ZRAM 構成では、アルゴリズムを組み合わせて使用​​できます。ただし、デフォルト値を使用している場合は、すべての ZRAM パーティションで同じアルゴリズムが使用されます。

前に編集した「init-zram-swapping」exec スクリプトに戻ります。そこで、次の行を見つけます。

これをコピーして直下に貼り付け、同じコマンドのインスタンスが 2 つあるようにします。

ZRAM ブロック デバイスの重複エコー UNIX パイプを強調表示する端子。

$mem行頭の最初の を「zstd」に置き換えます。

最初のエコー UNIX パイプの zstd 文字列を強調表示する端末。

行の末尾を「disksize」から「comp_algorithm」に変更します。

最初のエコー UNIX パイプの comp_algorithm 文字列を強調表示する端末。

調整した「init-zram-swapping」ファイルを保存し、コンピュータを再起動します。

コマンドを実行して、新しい ZRAM 設定が機能しているかどうかを確認しますzramctl

より大きなメモリ ベースと異なるアルゴリズムを使用する ZRAM ブロック デバイスを示す端末。

調整したスワップを積極的に使用するときは、負荷がかかった状態でシステムのパフォーマンスを必ず確認してください。ゴロゴロしたり途切れたりする場合は、やりすぎている可能性があるため、選択した値を下げる必要があります。一方、飛行している場合は、おそらくもう少し増やすことができます。

システムの ZRAM の構成は、Ubuntu システムを最適化するための最初のステップにすぎません。Ubuntu 上で独自の Linux カーネルをコンパイルすることで、マシンのパフォーマンスを最大限に引き出す方法を学びましょう。一方、より強力な PC を構築したい場合は、 Linux 用の PC を構築するときに注意すべき点を以下に示します。

画像クレジット: Liam Briese via Unsplash。すべての変更とスクリーンショットは Ramces Red によるものです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です