我们的工作组将生成一个桌面应用程序,该应用程序可模拟建筑的能源绩效。它是一个.NET应用程序,当用户运行大量仿真时,它们可能会非常耗时。这些模拟是完全可并行的,并且我们在“办公室”中拥有一些非常重要的HPC计算资源。
我们拥有的一个想法是允许用户卸载我们知道将运行很长时间的模拟(而每个单独的模拟运行大约30-120秒,运行大量的模拟可能需要几天的时间)。有人做过吗?如果是这样,您是否使用任何库来简化工作?值得付出努力吗?
编辑添加:
用于卸载模拟的各个任务是
- 打包文件(约5Mb),
- 将其上传到我们的服务器,
- 将包分解为单独的模拟(每个过程大约需要30-120秒,并且可以完全并行化),模拟的数量取决于用户选择的选项数量(绝缘,建筑物方向等)和最差的选择情况每个可能的选项都会导致大约1E50仿真。未知运行100到〜1E5仿真,但是大多数用户运行的数量少于10。
- 重新组装完成的仿真并下载更大的文件。
我们不确定要使用什么界面,因为我们的小组对此并不陌生,并且由于削减了预算,它可能会及时完成,但是需要易于其他人(如果有)进行维护。
该应用程序已经使用.NET 4,并且可以扩展为使用用户拥有的所有内核(我们的开发机具有8个内核)。