zswapはスワップデバイスに書き込まれたページを圧縮しますか?スワップIOの削減に適していますか?
答え1
zswapはスワップデバイスに書き込まれたページを圧縮しますか?
いいえ。 「リカバリ書き込みの保存中にzswap解凍するページを再びスワップキャッシュに追加し、以前にスケジュールされたスワップスロットへの書き込み保存をスケジュールします。http://lwn.net/Articles/537422/)
スワップIOの削減に適していますか?
はい、ほとんどの場合です。
答え2
存在する2013 LSFMMサミット、スワップデバイスに書き込まれたページは圧縮されません。しかし、そうしないのが技術的な理由ではないようで、複雑さを加えるだけのようです。
Hugh [Dickins]は、ページキャッシュ(ファイル)のページ圧縮が魅力的かもしれませんが、ファイルシステム開発者全体はzcacheにあまり興味がないようだと付け加えました。したがって、彼はzswapで始まり、時間の経過とともにzcache機能を追加することがより合理的である可能性があることに同意しました。
Dan [Magenheimer、zcacheハッカー]は、zswapがその分野の終わりではないことが明確に理解されている限り、zswapをマージすることに同意すると述べた。彼はまだZswapを最大限に活用するためにやるべきことがたくさんあると述べた。カーネル圧縮。言い換えれば、彼は時間の経過とともにzswapの機能を向上させるためにパッチを提出する予定です。
この機能を追加するのは合理的で、ディスク容量と読み取り/書き込み時間を節約するように聞こえますが、より多くの作業と複雑さが必要です。おそらく、可変サイズの圧縮ページのためにディスクスペースを効率的に割り当てるには、いくつかの作業が必要です。 (これは私の推測だけです。)
私たちはこれを将来見ることを望むかもしれませんが、これは明らかにその上で発展する人々の努力にかかっています。
2014年以降は、この問題に関する一般的な議論はあまり行われていないようです。ただし、この問題を見続ける1つの方法は監視することです。mm/zswap.cカーネルから。
答え3
zswap機能は通常はそうではありませんスワップデバイスに書き込みます。スワップされるページを格納するためにシステムメモリにスペースを割り当てます。したがって、スワップデバイスへの書き込みが完全に防止されます。
圧縮ページを保存するための空き容量がある限り、スワップデバイスへのシステムのI / Oは大幅に削減されます。圧縮プールがいっぱいになったら、それをバックアップスワップデバイスに書き換えます。