我目前正在开发一个大型模拟,它将在许多节点上运行,并且尽可能在 GPU 上运行。我现在正在考虑使用 Trilinos 项目中的库来构建它。我肯定需要 Kokkos、Tpetra 和一些线性求解器库。我还需要处理网格和 FEM 方程的构造。
到目前为止,我有以下优点和缺点:
临:
- 我得到了大量的图书馆。
- 我的解决方案将在某种程度上标准化,因此与其他库、软件、开发人员……的互操作性更强。
- 当然,还有一个用户社区,比许多其他编程主题要小得多。
反对:
- 安装很繁琐。我现在是第6天...
- 根据动手教程,Tpetra 似乎还不是很成熟。
- 为 CUDA 编译似乎也很棘手,而且不是很成熟。
- Trilinos 不支持我需要的东西的风险。我自己可能很难理解和扩展它。特别是 GPU 的东西。
- 相同的错误风险。
我正在寻找更多支持和反对 Trilinos 的论点,或者考虑何时使用它以及何时不使用它的一些建议。我知道这可能有点基于意见,但如果您能与我分享一些经验和知识,我将非常高兴。