Multilocale Chapel:检查失败(GASNet:节点数无效:-nl)

Multilocale Chapel: make check fails (GASNet: Invalid number of nodes: -nl)

我正在尝试 运行 使用 Slurm 的多语言环境模式的礼拜堂。 但是,'make check' 失败了。 有人可以帮我吗?

我用的是 Chapel 1.23.0。以下是我使用的实际命令:

cd chapel-1.23.0/
export CHPL_HOME=$PWD
source $CHPL_HOME/util/setchplenv.bash
export CHPL_COMM=gasnet
export CHPL_LAUNCHER=slurm-srun
export CHPL_TARGET_CPU=native
make && make check

这是我收到的错误消息:

== Actual Test Output (raw, with verbose) ==
srun --job-name=CHPL-hello6-tas --quiet --nodes=4 --ntasks=4 --ntasks-per-node=1 --cpus-per-task=16 --exclusive --mem=0 --kill-on-bad-exit  /home/user1/.chpl/chapel-test-P4CwK/hello6-taskpar-dist_real -nl4 --printLocaleName=false -v
GASNet: Invalid number of nodes: -nl4
GASNet: Usage '/home/user1/.chpl/chapel-test-P4CwK/hello6-taskpar-dist_real <num_nodes> {program arguments}'

假设您使用带有 gasnet 的 udp 底物($CHPL_HOME/util/printchplenv 显示 CHPL_COMM_SUBSTRATE: udp),那么 slurm-srun 在该特定配置下不起作用。 udp 底物需要 CHPL_LAUNCHER=amudprun。从 https://chapel-lang.org/docs/platforms/udp.html#using-the-udp-conduit-with-slurm 开始,您应该可以做到:

export CHPL_LAUNCHER=amudprun
export GASNET_SPAWNFN=C
export GASNET_CSPAWN_CMD="srun -N%N %C"

请注意,您必须重做顶级 make 命令。

这告诉 Chapel 使用 amudprun 启动器,然后让 amudprun 知道如何生成到这个系统上(在这种情况下使用 srun 而不是默认使用 ssh)