正在开发一个基本的分析器,它将收集 Cray Chapel 中 GASNet 通信操作的开始和结束时间。唯一想到的想法是在 Chapel 通信函数中插入指令来获取函数调用时间。有没有什么方法可以在不弄乱语言源代码的情况下做到这一点?
我正在尝试在具有MXM Infiniband网络(40 Gbps,型号:Mellanox Technologies MT26428)的群集上运行多列Chapel代码.
我按照Chapel和GASNet文件进行了跟踪,并设置了
export CHPL_COMM_SUBSTRATE=ibv
export CHPL_LAUNCHER=gasnetrun_ibv
export GASNET_IBV_SPAWNER=mpi
CHPL_COMM_SUBSTRATE=mxm一旦mxm被弃用,而不是使用.
问题是我可以使用ibv基板构建Chapel.但是,我不能在多个语言环境中运行.我收到大量的超时错误.
首先,我认为问题是PKEY.所以,我加入"--mca btl_openib_pkey "0x8100""了MPIRUN_CMD.但是,没有成功.
我还尝试使用不推荐使用的mxm配置:
CHPL_LAUNCHER=gasnetrun_mxm
export CHPL_LAUNCHER=gasnetrun_ibv
export GASNET_MXM_SPAWNER=mpi
但是,我无法使用这样的配置构建Chapel.这是错误信息:
"User requested --enable-mxm, but I don't know how to build mxm programs for your system."
顺便说一句,在没有分区键的情况下在MPI,UDP和Infiniband之上使用GASNET可以正常工作.
有人知道如何在配备MXM Infiniband网络和分区密钥(PKEY)的群集上使用Chapel吗?
最好的祝福,
蒂亚戈卡内罗.