一連の ASCII データ ファイルを読み取る必要がある Fortran コードがあります (これらはすべて合わせて約 25 Gb です)。基本的に、このコードは特定の ascii ファイルを開き、情報を読み取り、それを使用していくつかの操作を実行してから閉じます。次に、別のファイルを開き、情報を読み取り、いくつかの操作を実行して、もう一度閉じます。残りの ascii ファイルについても同様です。
全体として、各完全な実行には約 10 時間かかります。通常、さまざまなパラメーターを使用していくつかの独立した計算を実行する必要があります。その方法は、独立した計算をそれぞれ順番に実行することです。そのため、最終的に 10 個の独立した計算がある場合、合計 CPU 時間は 100h になります。
より迅速な方法は、クラスター マシン上の異なるプロセッサを使用して 10 個の独立した計算を同時に実行することですが、問題は、特定の計算で、既に開かれている特定の ascii ファイルを開いてデータを読み取る必要がある場合です。別の計算で使用されている場合、コードは明らかにエラーを返します。
特定の ascii ファイルが別の計算で既に使用されているかどうかを確認する方法があるかどうか、およびその場合、ascii ファイルが最終的に閉じられるまでコードに待機するように依頼する方法があるかどうか疑問に思います。
どんな助けでも大いに役立ちます。よろしくお願いします。
オバマコーク。