Linuxシステムのスワップ領域の量は重要ですか?


12

Linuxのスワップ領域の量が小さすぎて(1Gbなど)設定されていて、メインRAMが小さい場合は問題になり128Gbますか?

スワップ領域の量を常にRAMの2倍に設定する必要がありますか?

更新しました:

こんにちは、この質問に答えてくれてありがとう。実際、小さなクラスターシステムを使用するときに問題が発生したため、この質問があります。問題はここに掲載されています。次の図は、この小さなクラスター内のコンピューターの一部に関する情報です。

情報

MEMTOTそのマシンのRAMの合計量で、SWAPTOそのマシンのSW AP領域の合計量であり、SWAPUSスワップ領域の使用量です。写真に示されているように、SWAPの使用は確かにわずかです。

これらの問題を解決しようとすると、中に掲載するとここでスワップ領域の量がちょうどである、あまりにも小さく設定されている場合、我々はわからない1Gbとの相対128Gb写真のように、。したがって、この質問があります。この投稿の元のバージョンに背景情報全体を掲載しなかったのが残念です。その前に、RAMの量が多い場合、SWAPの量を小さく設定できると考えました。SWAPをに設定しようとしc0148ましたが16Gb、問題はないと思われます(その状態を長期間観察した後、この結論を取る必要があるかもしれません)。

私たちはLinuxシステムの専門家ではありません。その理由を説明することはできませんでした。これがクラスタシステムであり、SGEが各マシンのリソースを管理している可能性があります。また、そのマシンは多くのユーザーが送信した多くのジョブで使用される可能性があるため、比較的大量のSWAPが必要です。

さらに、SWAPの量を大きくしすぎた場合、それが引き起こす他の問題も考慮するに値します。


1
128GbのRAMがあり、スワッピングを開始すると、そのシステムはおそらく制御不能になり、とにかく死んでしまいます。私は、個人的には、おそらくスワップなしでそのサーバーを実行するでしょう。OOMKillerは、メモリ不足によりクラッシュが発生する前に、暴走プロセスを処理する必要があります。クラッシュはとにかく修正する方が高速です。
ライアングーラー

1
どちらになりますか?initからのいくつかのメグ?何かが実際にラムを必要とするとすぐに投げられるいくつかのキャッシュされたメモリ?マシンが機能するためにメモリをスワップする必要がある場合、そのマシンは過負荷であり、とにかくスケールアップする必要があります。
ライアングーラー

1
@Ryan Gooler:科学的なシミュレーションを行っている場合、128 Gb以上を使用するプロセスは無理ではありません。
jamesqf


1
@RyanGooler本当です。私のポイントは、スワップを増やすと、プログラムがより多くの物理RAMを使用できるようになるということです。それはほんの数MBですが、何もないよりはましです:)
Navin

回答:


19

Linuxカーネルには、https://unix.stackexchange.com/questions/88693/why-is-swappiness-set-to-60-by-defaultswappinessで説明されている、スワップの使用頻度を制御する設定があります

swappinessがゼロの場合、システムのメモリが不足した場合にのみスワップが使用されます。swappinessが100の場合、プログラムはすぐにスワップを使用します。

動作に合わせてシステムを微調整しますが、128 GBのRAMを使用してもシステムのメモリが簡単に不足することはほとんどないため、2/4 GBのスワップで十分です。スワップパーティションなしでシステムを実行することはお勧めできませんが、可能です。

スワップ領域のルールはRAMの2倍であると考えられますが、これは1 GBのRAMがあり、常にRAMがフルに使用されているシステムでのみ有用です。


2
設定中にswappiness0にすることは大量のRAMを持つ論理的と思われる、デフォルト値としてそれを維持する方が良いかもしれ60http://unix.stackexchange.com/a/88820/50687
-AL

1
1つの軸に0から100の形式のスワップピネスと、他の軸に他の何かがあるグラフがありますか?スワップピネスは値に依存しますか?
user1306322

こんにちは、@ jcbermu、投稿を更新しました。都合が良ければチェックしてください。
マイニング

5

2倍の経験則は時代遅れだと思います。ワークステーションには16GBのRAMが搭載されており、通常はその25%しか使用せず、50%以上はほとんど使用しません。そのため、ここではスワップを使用しません。

どのくらいのスワップを作成するかを決定する必要があり、選択した数字はいずれかの時点で十分ではないというのは理論的なことなので、なぜ0を選択しないのですか?または-なぜもっと多くのRAMをインストールしないのですか?

これは、コンピューターの使用方法とRAMの容量に基づいた非常に個人的な決定だと思います。


こんにちは、@ gjcamnn、返信いただきありがとうございます。投稿を更新しました。都合が良ければ、チェックしてください。
マイニング

0

メモリを消費する計算を実行する場合を除き、スワップはまったく必要ありません(ただし、小さなスワップパーティションを使用することをお勧めします)。ただし、ディスクへのサスペンドを使用する場合は、swap> ramが必要です。


こんにちは、@ ustp、返信いただきありがとうございます。投稿を更新しました。都合が良ければ、チェックしてください。
マイニング
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.