我试图看看是否可以使用Chapel编写用于基于Python的气候模型的并行代码:https://github.com/CliMT/climt
我对教堂堂没有任何经验,但它似乎对我的用例很有希望。关于如何将教堂代码集成到我当前的工作流程中,我有几个问题:
.so文件,但是当生成Cython时,编译能停止吗?然后,我可以将它包含到发行版中,并使用标准的setuptools在Travis上编译我的项目。numpy数组传递给用Chapel编写的Python扩展吗?mpirun python my_code.py命令吗?发布于 2019-10-11 19:14:39
--print-commands中使用的Cython命令,但情况并非如此(我将对此提出一个问题)。forall循环,这将将该维度中的索引划分为由Chapel确定的多个任务。(对于那些不熟悉forall循环的人,此链接给出了一个很好的概念概述)例如:
forall x in arr.domain.dim(1) {
// traverses the first dimension of arr's domain in parallel
...
}chpl_setup函数的numlocales参数指定所需的区域设置(节点)数量。这样做将负责在运行Python程序时为您分发Chapel代码。例如,您可以写:
import MyChplLib
MyChplLib.chpl_setup(4)
...使用4个区域设置(节点)运行您的程序。
我可能应该提到,在1.20版本中,我们不支持多语言环境库中的数组参数。我们仍然在为1.21版本确定优先级,所以反馈你想要的速度将是非常有用的!
https://stackoverflow.com/questions/58346366
复制相似问题