我正在try 使用Slurm在我的集群(单 node )上并行运行多个命令. 这是我的情况:
- 我有N个命令要运行
- 我的群集中有M个物理核心(M=4)
由于每个命令都需要一个物理核心和M<;N,我希望最多只能同时执行M个命令.
问题是,当我运行sbatch
命令时,所有N个命令都会执行.我try 使用--ntasks
参数,但没有成功.可能我使用了错误的Slurm参数.
这是我正在使用的文件:
############# file name: ./run_parallel_commands.sh #############
#!/bin/bash
#SBATCH --nodes=1
#SBATCH --ntasks=4
#SBATCH --mem-per-cpu=1G
./command-1 &
./command-2 &
# ...
./command-N &
wait
并且它在运行时被执行:
$ sbatch ./run_parallel_commands.sh
有什么建议吗? 提前谢谢您.