「Linuxのswapについて私が知っている二、三の事柄」の版間の差分
ナビゲーションに移動
検索に移動
27行目: | 27行目: | ||
コマンドfreeを使い、スワップに使われている容量と、メモリ空き領域を確認し、スワップされているサイズがメモリ上に充分のるようであれば、swapoffを行うことでスワップが解消される。解消後はswaponで元のスワップ環境を復帰させておくことを忘れずに。 | コマンドfreeを使い、スワップに使われている容量と、メモリ空き領域を確認し、スワップされているサイズがメモリ上に充分のるようであれば、swapoffを行うことでスワップが解消される。解消後はswaponで元のスワップ環境を復帰させておくことを忘れずに。 | ||
=== swappiness === | |||
swappinessはkernel 2.6から入った機能で、スワップの発生する度合いのコントロールを行う。0から100までの数値で、0が最もスワップの発生が押さえられ、100は最もスワップが発生し易くなる。デフォルト値は60である。 | |||
<ref> | |||
カーネルコードの vmscan.c を参照のこと。 | |||
</ref> | |||
# echo 99 > /proc/sys/vm/swappiness |
2012年8月13日 (月) 09:48時点における版
Linuxのswapについて私が知っている二、三の事柄
swapの高速化
fstabでswapのプライオリティが設定できる。この数が多ければ多いほど優先される。一方で同じ優先順位であれば均等に使われる。 複数のハードディスク上にswapパーティションを取り、それを同じ優先順位で設定すると、スワップの際に並列に使われるのでraid0のような効果をもたらす。
下の例は4つのswapパーティションを使いswaponした状態である。


これはSSDを複数用意し、その上にswapを設定し、
並列にアクセスできるような設定にすると、
かつてないような巨大かつ高速な仮想記憶が手に入ることを示唆している。
稼働中にswapを無効にする
実メモリが十分にあり、特別な処理を既に終了させswapが必要なくなった場合、 swapoffをするとswapに使われている記憶装置から実メモリの方にページが移動し、 swapが開放される。 またswaponを行えばswapが設定される。 柔軟にswapを利用する、あるいは止めることができる。

コマンドfreeを使い、スワップに使われている容量と、メモリ空き領域を確認し、スワップされているサイズがメモリ上に充分のるようであれば、swapoffを行うことでスワップが解消される。解消後はswaponで元のスワップ環境を復帰させておくことを忘れずに。
swappiness
swappinessはkernel 2.6から入った機能で、スワップの発生する度合いのコントロールを行う。0から100までの数値で、0が最もスワップの発生が押さえられ、100は最もスワップが発生し易くなる。デフォルト値は60である。 [1]
# echo 99 > /proc/sys/vm/swappiness
- ↑ カーネルコードの vmscan.c を参照のこと。