私は、グリッドベースで計算を実行する科学アプリケーションの作成者です (有限差分グリッド計算を考えてください)。各グリッド セルは、状態変数とセル固有の定数の値を保持するデータ オブジェクトによって表されます。これまで、すべてのグリッド セル オブジェクトは、シミュレーション中に常に RAM に存在していました。
私のコードを使用している人々が、使用可能な RAM よりも多くのグリッド セルでコードを実行したいという状況に遭遇しています。セルのサブセットのみに関する情報が常に RAM に保持されるように、コードを修正することを考えています。残念ながら、グリッド (または必要に応じてマトリックス) は疎ではないため、考えられる解のクラス全体が排除されます。
質問:この種のデータ アクセス (つまり、定数と変数の取得、変数の更新、将来の参照用の保存、メモリのワイプ、移動など) を容易にするように設計されたライブラリが世の中にあると思います。Google で数時間検索した後、およびスタックオーバーフロー、この種のライブラリは比較的少数しか見つかりませんでした。
HSL数学ライブラリの次のようないくつかのオプションを認識しています: http://www.hsl.rl.ac.uk/specs/hsl_of01.pdf。私は、オープン ソースで、Fortran または C で書かれたものを使用したいと考えています (私のコードはほとんどが Fortran 95/2003 で、適切な手段として少し C と Python が投入されています!)
利用可能なライブラリに関する提案や、問題を再構築する方法に関するアドバイスをいただければ幸いです。ありがとう!