web-dev-qa-db-ja.com

スワップファイルが使用されないのはなぜですか?

メモリが完全にロードされている場合でも、作成したスワップファイルは使用されません。

私は何か間違ったことをしましたか?

swapon -sの出力

Filename                Type        Size    Used    Priority 
/file.swap              file        15728636    0   -2

cat /etc/fstabの出力

LABEL=cloudimg-rootfs   /    ext4   defaults,discard    0 0
# Entry for /swapfile
/file.swap none swap defaults 0 0

cat /proc/sys/vm/swappinessの出力

60

[〜#〜]編集[〜#〜]

free -hの出力

enter image description here

ご覧のとおり、スワップファイルのサイズを半分に減らし、メモリが完全に読み込まれると、使用されたメモリの40%から開始するのではなく、スワップファイルが最終的に使用されるようになりました(swappinessによる)。もう問題はありません。今はスワップファイルの動作を理解しようとしています。

追加情報:この結果を得るために、80のFirefoxインスタンスを同時に実行しました。

3
pheeln

この場合、スワップが使用されます(まあ、休止状態を数えると+1):

  • システムでRAMが不足し、現在使用されていないパーツを交換して、現在使用されているパーツを配置する必要があります。ワークロードが完全に収まる十分なRAMがある場合その中にこれは起こりません。
  • システムは、タスクが非常に長い時間アイドル状態であると判断し、タスクが使用するメモリをキャッシングに使用できるようにします。これは主に、タスクがたまにしか実行されない長時間実行システムで発生します。例としては、数時間ごとにメールをチェックしますが、その間に何もしない、常に実行しているメールクライアントがあります。
  • 一部のハイメモリプログラムは依然としてスワップに移行する可能性がありますが(ビデオおよび3Dエディター、数学ツール)、ほとんどの場合、必要な場合にのみ存在します。

どちらもそうではないようですので、心配する必要はありません。どちらも当てはまらない場合でも問題が発生しますが、システムは依然としてスワップを実行しています。

また、RAMが8 GB以上ある場合、スワップは休止状態でのみ必要です。コンピュータに8 GB以上ある場合、スワップパーティションは使用されませんRAMで、毎日それをシャットダウンすると、スワップは不要であり、正常です。

6
mature