数週間前に投稿しました
Raspberry Pi をデバイスにインストールした後、
Raspberry Pi で ZRAM をアクティブ化する
Raspberry Pi 4 には、1、2、4、または 8 GB の RAM が搭載されています。 今回は1GBモデルを使用しますので、お使いのモデルに合わせて手順を調整してください。 1 GB ZRAM を使用すると、デフォルトのスワップ ファイル (遅い!) の使用頻度が低くなります。 このスクリプトを使用しました
手順は、上にリンクされたリポジトリに記載されています。 インストール:
git clone https://github.com/foundObjects/zram-swap.git
cd zram-swap && sudo ./install.sh
構成を編集したい場合:
vi /etc/default/zram-swap
さらに、インストールすることで ZRAM を有効にすることができます。 zram-tools
. この方法を使用する場合は、必ず設定を編集してください ファイル内 /etc/default/zramswap
、約 1 GB ZRAM をインストールします。
sudo apt install zram-tools
インストール後、次のコマンドを使用して ZRAM ストレージ統計を表示できます。
sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 265472 5
pi@raspberrypi:~ $
ZRAM をより効果的に使用するためのカーネル パラメータの追加
次に、Raspberry Pi が最後の瞬間にスワッピングに切り替わったときのシステムの動作を修正しましょう。これにより、フリーズが発生することがよくあります。 ファイルに数行追加してみましょう /etc/sysctl.conf そして再起動します。
これらの行 1) 避けられない記憶の枯渇を遅らせるでしょう、カーネル キャッシュへの負荷が増加し、2) 彼らはメモリ枯渇への準備を早くから始めます、事前にスワップを開始します。 ただし、ZRAM を介して圧縮メモリを交換する方がはるかに効率的です。
ファイルの最後に追加する行は次のとおりです /etc/sysctl.conf:
vm.vfs_cache_pressure=500
vm.swappiness=100
vm.dirty_background_ratio=1
vm.dirty_ratio=50
次に、システムを再起動するか、次のコマンドを使用して変更を有効にします。
sudo sysctl --system
vm.vfs_cache_pressure=500 キャッシュ圧力が増加し、カーネルがディレクトリのキャッシュやオブジェクトのインデックス作成に使用されるメモリを再利用する傾向が高まります。 長期間使用するとメモリの使用量が減ります。 パフォーマンスの急激な低下は、早めのスワップによって打ち消されます。
vm.swappiness = 100 最初に ZRAM を使用しているため、カーネルがメモリ ページをどの程度積極的にスワップするかパラメータを増加します。
vm.dirty_background_ratio=1 & vm.dirty_ratio=50 - バックグラウンド プロセスは、1% 制限に達するとすぐに記録を開始しますが、システムは、dirty_ratio が 50% に達するまで同期 I/O を強制しません。
これら XNUMX 行 (ZRAM で使用する場合) は、次の場合にパフォーマンスの向上に役立ちます。 必然的に 私と同じように、RAMが不足するとスワップへの移行が始まります。 この事実を理解し、また ZRAM のメモリが XNUMX 倍圧縮されることを考慮すると、このスワップを事前に開始することをお勧めします。
キャッシュに圧力をかけると、基本的にカーネルに「キャッシュに使用する余分なメモリがないので、できるだけ早く削除して、最も頻繁に使用される/重要なメモリのみを保存してください」と伝えることになるため、役に立ちます。データ。"
キャッシュを減らしても、時間の経過とともにインストールされているメモリの大部分が占有されると、カーネルはずっと早く日和見スワップを開始するため、CPU (圧縮) とスワップ I/O は最後の瞬間まで待たずに、すべてのリソースを一度に使用します。もう遅い。 ZRAM は圧縮に少量の CPU を使用しますが、少量のメモリを備えたほとんどのシステムでは、ZRAM を使用しないスワップよりもパフォーマンスへの影響がはるかに小さくなります。
結論
もう一度結果を見てみましょう。
pi@raspberrypi:~ $ free -h
total used free shared buff/cache available
Mem: 926Mi 471Mi 68Mi 168Mi 385Mi 232Mi
Swap: 1.2Gi 258Mi 999Mi
pi@raspberrypi:~ $ sudo cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 102396 0 -2
/dev/zram0 partition 1185368 264448 5
ZRAM の 264448 は、ほぼ XNUMX ギガバイトの非圧縮データに相当します。 すべてが ZRAM に送られ、はるかに遅いページ ファイルには何も送られませんでした。 これらの設定はすべての Raspberry Pi モデルで機能するので、自分で試してみてください。 使い物にならなくなったフリーズシステムが、機能的で安定したシステムに変わりました。
近い将来、ZRAM をインストールする前と後のシステムのテスト結果を含めて、この記事を継続して更新したいと考えています。 今はそんなことをする時間がありません。 それまでの間、ご自由に独自のテストを実行して、コメントでお知らせください。 Raspberry Pi 4 は、これらの設定を備えた猛獣です。 楽しむ!
件名に:
出所: habr.com