マシン:Dell r815、CentOS 5.4、256GBのRAM、4 x 12コア。
275GBのファイルを持つアプリケーションがあります。一度に20GBのデータに対してインプレースソートを実行します。つまり、ビットを入れ替えて同じファイル内で置き換えます。これはすべて正常に動作します。
最後のパスでは、ファイル全体を読み取り、20GBの異なるチャンクでマージソートを実行し、それらをまったく新しいファイルに出力します。
このプロセスは、しばらくの間正常に動作するためにSEEMSを実行し、最終的にディスクに約50GBをフラッシュします。この後しばらくして、完全なマシンがフリークアウトし始めます。
以下のような単純なコマンドはps -ef
、ls -al
長い時間のためにハングアップすると(ただ一つのコアである)、100%のCPUを取るように表示されます。
のメモリ統計top
を見ると、約120GBのRAM(128GBの空き容量)を使用しており、「キャッシュ」セクションの下に120GBあることがわかります。
誰もこのような行動を見たことがありますか?64GBのメモリを搭載したマシンでも同じプロセスが正常に実行されます。そのため、マシンに搭載されているRAMのマウントに何らかの関係があると思います。
(私たちが話すように、ハードウェアの問題を除外するために、64GBを除くすべてでこのマシンでテストを実行しています)。
おそらくいくつかのvmパラメータが欠落してい/etc/sysctrl.conf
ますか?
ありがとう!