お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2012-10-31 16:43:40

KuroS
メンバ
登録日: 2010-05-23

12.04.1LTSで搭載メモリ上限までキャッシュが発生してスワップしてしまう。

Ubuntu12.04.1LTSを自作のPCで使っています。
メモリを8GB搭載しており、内蔵グラフィックスで一部を使っています。

最近、気がつくと20MB程HDDのスワップ領域を使っていたりするので、不信に思って、動作を検証しているのですが、システムでは最大でも500MBくらいの利用状態で、搭載メモリ量から言ってもスワップが発生するようには思えませんでした。

そこで、端末よりtopコマンドで確認したところ、キャッシュに7GB近く使用されていることに気が付きました。
インジケーターアプリのシステムインジケーターで観察していると、nautilusを使い、ファイル転送をする際にキャッシュが大量に発生しているようでした。
他のアプリケーションでは、終了させるとキャッシュを開放してくれて、使用量が減少するのですが、nautilsでは終了させてもキャッシュが解放されず、どんどん上乗せされているような状態でした。

Windowsファイル共有でnautilus側からファイルを受ける場合でも同じようにキャッシュされてゆき、10GBを超える転送では1回の転送で空きメモリのすべてをキャッシュに使いきってしまう状況です。

現在のところ、スワップが発生した段階で、PCを再起動してリフレッシュするようにしているのですが、他にキャッシュが解放されるような操作はありますか?

今のところnautilus固有のトラブルのような気がしていますが、このような状況は正常な状態ではありえますでしょうか?

よろしくおねがいします。

オフライン

 

#2 2012-10-31 16:45:11

KuroS
メンバ
登録日: 2010-05-23

Re: 12.04.1LTSで搭載メモリ上限までキャッシュが発生してスワップしてしまう。

すいません。端末で使ったコマンドは「top」ではなく「free」です。

オフライン

 

#3 2012-10-31 17:31:32

yama
メンバ
登録日: 2006-10-23

Re: 12.04.1LTSで搭載メモリ上限までキャッシュが発生してスワップしてしまう。

cacheを開放するのはosのお仕事です。
swapはあればメモリに余裕があっても使用するようになっています。
スワップを使いたくないのであればswapoffにしてしばらく様子をみてはいかがでしょう。

オフライン

 

#4 2012-10-31 17:51:50

KuroS
メンバ
登録日: 2010-05-23

Re: 12.04.1LTSで搭載メモリ上限までキャッシュが発生してスワップしてしまう。

yamaさん

私もスワップされることが悪いと思っているわけではありません。

当然メモリに溜めきれない場合はスワップに退避するのは当然でしょう。

しかし、そのOSがキャッシュを開放してくれないのは、問題ではないのでしょうか?

オフライン

 

#5 2012-10-31 18:18:49

yama
メンバ
登録日: 2006-10-23

Re: 12.04.1LTSで搭載メモリ上限までキャッシュが発生してスワップしてしまう。

メモリが必要とされた時にフリーなメモリが足りなければキャッシュが開放されて回されます。
ですので、必要とされていない時にキャッシュは積極的に開放はされません。

KuroS による投稿:

yamaさん

私もスワップされることが悪いと思っているわけではありません。

当然メモリに溜めきれない場合はスワップに退避するのは当然でしょう。

しかし、そのOSがキャッシュを開放してくれないのは、問題ではないのでしょうか?

オフライン

 

#6 2012-11-01 23:25:44

KuroS
メンバ
登録日: 2010-05-23

Re: 12.04.1LTSで搭載メモリ上限までキャッシュが発生してスワップしてしまう。

10.04LTSの時には、1TBのHDDの引越しをした際にもスワップは発生しなかったのでいまいち不安なのですが、OS自体が不安定にならない限りは無視してみようかと思います。

回答有り難うございました。

オフライン

 

Board footer

Powered by FluxBB