在集群上调试及分析程序
在集群上调试程序时,最简单的步骤如下:
- 使用
salloc
命令申请一个节点,记为nodeX
; - 申请成功后,使用
ssh
远程连接到nodeX
; - 编译代码;
- 在
nodeX
上使用工具调试程序,或者将程序提交到集群执行。
大致命令如下:
$ salloc -N 1 --exclusive [-p Vhagar] # -p用于指定分区
$ ssh nodeX # nodeX是申请到的节点
# 编译...
# 调试...
# 或者使用 srun/sbatch 提交给集群...
注:申请节点的目的是让所有调试工作在远程节点上完成,不占用登录节点的 CPU。
在远程节点上可以使用的调试和分析工具来源为:
- 集群环境下安装的工具,即使用
module load
命令可以加载的工具,如 Valgrind, VTune; - 安装在本机的工具,如 GDB;
- 用户安装在家目录的工具。