流体全般

流体全般

INSUFFICIENT MEMORY ALLOCATED

    • FAQFAQ
      Participant

      計算を開始すると、以下のようなメッセージがoutファイルに出力されて計算できないことがあります。 +——————————————————————–+ | *** INSUFFICIENT MEMORY ALLOCATED *** | | | | ACTION REQUIRED : Increase the real stack memory size. | | | | Details : | | Requested space : 1257048 words | | Current allocated space : 102708029 words | | Current used space : 101287234 words | | Current free space : 1420795 words | | Number of free areas : 3 | +——————————————————————–+ これはCFXが処理を実行するために見積もって確保したメモリが不足してしまった場合に出るメッセージです。(経験的にはDomain Interfaceが多い場合に出ることが多いです。) この問題の対処方法は、計算開始時に確保するメモリを増やすことです。CFX-Solver ManagerのDefine Runで、Partitioner, Solver, Interpolatorというタブの中の「Memory Alloc Factor」で確保するメモリを増やせます。 3つ設定する場所があり、CFXが計算を開始するまでのどの段階でこのメッセージが出たのかによって、設定するタブが決まります。 計算を実行して、ソルバーが実際に計算を開始するまでには、 Interpolator : 結果読み込み(初期値ファイルを指定した場合) Partitioner : パーティション分割(並列計算の場合) Solver : 計算開始 という3段階のプロセスが存在します。これらは以下のような形でoutファイルに書き出されています。 +——————————————————————–+ | | | Interpolation of Initial Values | | | +——————————————————————–+ 結果読み込みに関する情報が書き出されます。 +——————————————————————–+ | | | Partitioning | | | +——————————————————————–+ 領域分割の情報が書き出されます。 +——————————————————————–+ | | | Solver | | | +——————————————————————–+ 残差などの計算に関する情報が書き出されます。 これらのどこで「 *** INSUFFICIENT MEMORY ALLOCATED *** 」というメッセージが出力されているか確認します。それに応じて、Partitioner, Solver, Interpolatorタブの設定を行います。 設定するMemory Alloc Factorは倍率です。CFXが見積ったメモリ使用量に係数を掛けたメモリが確保されます。1.2倍などから始めて、徐々に大きくして問題が回避できるか確認してください。 例えば、Interpolatorの問題を解決したあと、新たにSolverで同様のメッセージが出ることもありますので、どこにメッセージが出ているのか注意して設定してください。