私たちのワークグループは、建物のエネルギー性能をシミュレートするデスクトップアプリケーションを作成します。これは.NETアプリケーションであり、ユーザーが多くのシミュレーションを実行している場合、かなり時間がかかる可能性があります。シミュレーションは完全に並列化可能で、「オフィス」には非常に重要なHPCコンピューティングリソースがあります。
私たちが持っていたアイデアの1つは、ユーザーが非常に長時間実行されることがわかっているシミュレーションをオフロードできるようにすることです(個々のシミュレーションは約30〜120秒実行され、多数のシミュレーションの実行には数日かかることがあります)。誰もこれをやったことがありますか?もしそうなら、仕事を簡単にするためにライブラリを使用しましたか?努力する価値はありましたか?
追加するために編集:
シミュレーションをオフロードするための個々のタスクは次のようになります
- ファイルのパッケージ化(約5Mb)、
- サーバーにアップロードし、
- パッケージを個別のシミュレーションに分解し(それぞれ約30〜120秒かかり、完全に並列化可能)、シミュレーションの数は、ユーザーが選択したオプション(断熱、建物の向きなど)の関数であり、選択の最悪の場合可能なオプションはすべて、約1E50のシミュレーションになります。100〜1E5のシミュレーションを実行することは不明ではありませんが、ユーザーの大半は10未満で実行されます。
- 完了したシミュレーションを再組み立てし、現在よりはるかに大きなファイルをダウンロードします。
私たちのグループはこれが初めてなので、どのインターフェイスを使用するのかわかりません。予算が削減されると、すぐに完成するかもしれませんが、次の人(もしあれば)が保守しやすい必要があります。
このアプリは既に.NET 4を使用しており、ユーザーが所有するすべてのコアを使用するように拡張できます(開発マシンには8つのコアがあります)。