我正在尝试查看是否可以使用 Chapel 编写用于基于 Python 的气候模型的并行代码: https ://github.com/CliMT/climt
我对 Chapel 没有任何经验,但它对我的用例来说似乎很有希望。关于如何将 Chapel 代码集成到我当前的工作流程中,我有几个问题:
我知道您可以构建可导入
.so
的文件,但是生成 Cython 文件时可以停止编译吗?然后我可以将它包含到发行版中并使用标准setuptools
在 Travis 上编译我的项目。我可以将
numpy
数组传递给用 Chapel 编写的 Python 扩展吗?如果对 2. 的回答是肯定的,并且我的计算在数组的一维上是并行的,那么在 Chapel 中是否有一种优雅的方式来表达这种并行性?
如果我编写适用于多个节点的 Chapel 代码并将其编译为 Python 扩展,我该如何运行它?我可以使用
mpirun python my_code.py
某种命令吗?