人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

以下のような条件・環境でプログラムを動かしています。
WindowsXP
LANDisk IOData HDL F series 250G,320G
Java プログラム JDK 1.5.0で作成したもの

Javaプログラムは概略以下のような動作をします。
・多数のファイルをR/Wする。Wは一ファイルのものもあり。
・一時にopenするファイルは一つのみ。
・ファイルのCloseはきちんとしている。
・ガベージコレクションを定期的に行っている。だいたいファイルのRead数百回ごと。

そして他のマシンからLANDiskへのアクセスもあり、それなりに多い。

これで次のような現象が発生する。
最初は、R/Wの速度が速い(←しかしLocalDiskよりはかなり遅い)、しかし数千(?)ファイルR/W後は、R/Wの速度が非常に遅くなる。体感的には数十倍の時間がかかる。いくつかのプログラムがありますが、どれも同じような現象が発生します。

R/Wの速度が遅くなる原因はわかりますでしょうか。OS、LANDisk、Javaプログラムのどれに原因がありますか?対策は?


●質問者: gzmgzm
●カテゴリ:コンピュータ
✍キーワード:IODATA Java JDK open OS
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● russian-blue
●50ポイント

LANDISKの中身はLinuxが載っている。

LANDISKが原因では?

最初はメモリー上のキャシュで処理するので

速い。

直ぐにメモリが足りなくなり。ジャーナル処理

kupdateの書き込みタイミングで止まったり

、書き込みが完了しないので処理が間に合わ

なくなり遅くなる。

ファイルも沢山作るとディレクトリーが

キャシュされ空きメモリー減少する。

CPU ARM9コア/162MHz 64MバイトRAM

http://plusd.itmedia.co.jp/pcupdate/articles/0602/22/news064.htm...

http://landisk.kororo.jp/debian/different.php

対策なのかな?

(1)1つのフォルダーに沢山ファイルを作らない。

(2)ウイルス対策ソフトを一時的にとめてみる


2 ● keii-i
●50ポイント

要因はいくつか考えられます。

まず、LANDISKでは、Windowsクライアント向けのファイルサービスに

SMBを使っていますので、XP側に下記の問題があるかも知れません。

http://support.microsoft.com/kb/814112/

これでも解決しない場合ですが、今までいくつかのLAN-HDDものを使って

きた経験では、同時にハンドリングするファイル数が500個を超えるあたり

から、いきなり時間がかかるようになります。おそらくは、LAN-HDDのOS

(Unix系列)のファイルシステムの問題だとは思うのですが…

プログラム側で、一度の処理を500ファイル程度に制限するしてみては

いかがでしょうか? あるいは、クライアントのXP側のファイルバッファを

大きくするかですが…


3 ● ikg
●50ポイント

こういった性能問題の場合、

GCが解放されているメモリのサイズが少なく、

Full GCを頻発させるものの、

処理を継続するために必要が空きメモリが一向に確保できず

処理が停滞する

という事が原因であることが多いと思います。


未確認であれば

GCを定期的に行っている、とのことですが、

十分に解放できているか確認するのが良いと思います。


もし上記のことが原因である場合、

VMに割り当てるメモリの量を増やすのが手っ取り早い方法です。

それでは解決しない場合には、

GCで解放されるメモリの量が増えるように

変数のスコープ、初期化(データ参照の放棄)タイミングを

見直すか、または、一定のデータ量ごとに処理を行うように

ロジックを変更する必要があると思います。

◎質問者からの返答

いずれも貴重なご回答ありがとうございます。

言い忘れました。

Javaは -mx1024Mで起動。←heap maxが1024M。

マシンはメモリ256M,768M,1Gで実行。

タスクマネージャで見るとメモリは500M程度を消費(←全体で)

256Mの場合も、スラッシングはおきていないようです。

ご回答を参考に改良します。ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ