- PR -

copyで、freeメモリが激減してしまいます

1
投稿者投稿内容
morizo
会議室デビュー日: 2004/08/11
投稿数: 16
投稿日時: 2004-11-22 19:10
20Mのフォルダにcopyコマンドを使用した際、
freeメモリ量をみてみますと、激減しています。
(500M→5M)
cachedが増加しています。
数日経っても、cachedが開放されず、
freeメモリが少量しか増加しません。

これはOSの仕様なのでしょうか?
これはサーバに大きな負荷が掛かったままの状態だということでしょうか?
違うイベントが発生した場合に、
cashedが開放されて使用されるということでよろしいでしょうか?

よろしくお願いいたします。

---
RedHatES2.1

_________________
kazumix
会議室デビュー日: 2004/11/18
投稿数: 4
投稿日時: 2004-11-22 20:00
引用:

これはサーバに大きな負荷が掛かったままの状態だということでしょうか?
違うイベントが発生した場合に、
cashedが開放されて使用されるということでよろしいでしょうか?




『メモリを喰っている = 大きな負荷が掛かっている』と一概に言い切れるものでもないので、
負荷調査をしたい場合は、vmstat などで調べる必要があります。

メモリは効率良く使われるよう、cached や buffers に割り当てられます。
ほんとうにメモリが枯渇していてる場合は、vmstat で調べると
激しくスワップイン・スワップアウトしているのが読み取れます。
また、アプリケーション自体の動作も遅くなっていることが体感できます。
CPUがぶん回ってる状態なら、ユーザ時間やシステム時間のパーセンテージが
高くなっていたりします。

そういう症状がなければ、たぶん大丈夫です。
確認してみてくださいな。
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2004-11-22 20:15
空きメモリの残りが少なくなったらあまり使われていないメモリ領域を
開放するとか、ディスクキャッシュとして使われている領域から
直接ほかへ転用するとかされますので、通常は空きメモリが少ない
ことには何ら問題ありません。

kazumixさんが書かれているように、ページイン・ページアウトが
繰り返し発生している(スラッシング)状態だとメモリ不足ですが。
morizo
会議室デビュー日: 2004/08/11
投稿数: 16
投稿日時: 2004-11-24 21:15
vmstatを実行してみると、下記の状態でした。
si、soが発生していないため、問題ないということですね。

si、soが発生する前に、
使用可能なメモリ量を調べる方法はありますでしょうか?
メモリが危険な状態になる前に察知したいと考えております。


=====
procs memory swap io system cpu
r b w swpd free buff cache si so bi bo in cs us sy id
0 0 0 0 5244 180432 589416 0 0 0 1 1 4 0 0 3
=====


_________________
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2004-11-24 22:19
引用:

morizoさんの書き込み (2004-11-24 21:15) より:
vmstatを実行してみると、下記の状態でした。
si、soが発生していないため、問題ないということですね。


マニュアルの記述ではわかりにくいと思いますが(それに、ちょっと
古いマニュアルだとここの説明が間違ってます)、気をつけるのは
bi/bo のほうです。ここが両方同時に、かつ常時だらだらと出続けて
いるようだとメモリ不足の疑いがあります。瞬間的に出るだけなら、
それは通常の動作なので問題ありません。

引用:

メモリが危険な状態になる前に察知したいと考えております。


残念ですが、それは無理です。負荷テストを行うなどして、
経験的に必要量を知っておくくらいしか方法は無いと思います。
1

スキルアップ/キャリアアップ(JOB@IT)