我想知道Torque是否足够智能,可以根据您请求的mpi核心数分配正确的节点数。对于我们的集群,我们有异构的节点,仅仅将您想要的节点数量和每个节点的处理器放在一起可能是相当浪费的。所以我在想你能不能这样做
qsub -I -l procs:1000
mpiexec -n 1000 mympijob然而,torque只使用这个命令分配一个节点(因为我没有指定节点的数量)。有没有一种方法可以根据我的proc数量来调整正确的节点数,这样它就可以最大限度地提高效率?
侧栏-我们可能很快就会切换到SLURM,这在功能范围内吗?
发布于 2015-03-05 08:12:01
通常,我们在分配资源后所做的事情不是调度器可以控制的。
在这种情况下,
mpirun/mpiexec -n 1000在调度程序分配资源后执行。
前进的最佳方法是使用由调度程序设置的环境变量
$MPI_HOSTS作为通过交换机-n传递的值。
示例:
mpirun $MPI_HOSTS <your program of choice>您可以通过向节点添加ppn参数来请求所需的核心数量。
qsub -l nodes=2:ppn=16这将在两个节点中分配32个核心。
https://stackoverflow.com/questions/28867108
复制相似问题