23

How do I send a job to a specific node in PBS/TORQUE? I think you must specify the node name after nodes.

#PBS -l nodes=abc

However, this doesn't seem to work and I'm not sure why. This question was asked here on PBS and specify nodes to use

Here is my sample code

#!/bin/bash
#PBS nodes=node9,ppn=1,
hostname
date 
echo "This is a script"
sleep 20    # run for a while so I can look at the details
date

Also, how do I check which node the job is running on? I saw somewhere that $PBS_NODEFILE shows the details, but it doesn't seem to work for me.

4

2 回答 2

32

你可以这样做:

#PBS -l nodes=<node_name>

您还可以指定处理器的数量:

#PBS -l nodes=<node_name>:ppn=X

或者您可以请求其他节点,指定或未指定:

#PBS -l nodes=<node_name1>[:ppn=X][+<node_name2...]

这为您提供了多个特定节点。

#PBS -l nodes=<node_name>[:ppn=X][+Y[:ppn=Z]]

这会从该节点请求具有 X 个执行槽的特定节点,以及每个具有 Z 个执行槽的附加 Y 节点。

编辑:简单地请求每个节点的多个节点和执行槽:

PBS -l 节点=X:ppn=Y

注意:这全部适用于 TORQUE/Moab。它可能适用于其他 PBS 资源管理器/调度器,也可能不适用。

于 2013-08-23T17:08:15.560 回答
2

上述答案不适用于 PBS Pro。以下适用于包含节点列表(node1node2)。

#PBS -l select=1:host=node1+1:host=node2

对于还包括处理器的数量,

#PBS -l select=1:ncpus=24:host=node1+1:ncpus=24:host=node2
于 2019-09-20T06:44:24.173 回答