.pbs文件中的朴素并行化

时间:2013-09-22 21:02:10

标签: parallel-processing job-scheduling pbs qsub supercomputers

是否可以在PBS文件中的for循环中进行并行化?

下面是我的attempt.pbs文件。我想分配4个节点,同时为每个节点分配16个进程。我已成功完成此操作,但现在我有4个工作,我想将一个工作发送到每个节点。 (我需要这样做,因为排队算法会让我等待几天在群集中提交4个单独的工作我正在使用)

#!/bin/bash
#PBS -q normal
#PBS -l nodes=4:ppn=16:native
#PBS -l walltime=10:00:00
#PBS -N HuMiBi000
#PBS -o HuMiBi.000.out
#PBS -e HuMiBi.000.err
#PBS -A csd399
#PBS -m abe
#PBS -V

./job1.sh
./job2.sh
./job3.sh
./job4.sh

作业独立运行,不使用相同的数据。我可以从同一个pbs脚本中为每个节点运行1个作业吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

实现此目标的标准方法是通过消息传递接口(MPI)库。 Open MPI是一个很好的实现,你可以使用。如果您想了解更多信息,可以找到一些基本示例here,这是OpenMPI的tutorial