Getting Information on the Nodes¶
You can get an up-to-date summary of the nodes, queues and jobs by visiting the
HPC Status page. You may wish to obtain more detailed
information though for use in your job scripts. You can do this by using the
pbsnodes
command.
The manual pages for pbsnodes can be viewed using man pbsnodes
and running
pbsnodes
with no options will show a usage summary.
Obtaining Information on the Nodes Available¶
Use the pbsnodes -a
command to query the status of all nodes, showing
the number of CPUs and the amount of memory in each node.
$ pbsnodes -a
To just query one node supply the node name as an option. Below is an example of how to query hpcnode03. Some non-essential information has been left out.
$ pbsnodes hpcnode03
hpcnode03
Mom = hpcnode03
state = free
pcpus = 56
jobs = 110298.hpcnode0/0, 110298.hpcnode0/1, 110298.hpcnode0/2, 110298.hpcnode0/3, etc...
resources_available.host = hpcnode03
resources_available.intel_node = yes
resources_available.mem = 384000000kb
resources_available.ncpus = 56
resources_available.Qlist = normal
resources_available.vnode = hpcnode03
resources_assigned.hbmem = 0kb
resources_assigned.mem = 278921216kb
resources_assigned.ncpus = 32
resources_assigned.vmem = 0kb
Obtaining Machine Parsable Output¶
This information could be used to help you automate PBS job submission. In
which case you may wish to use a more structured output as there are good
Python parsers for structured data such as JSON (JavaScript Object Notation).
To print the output as JSON use the optin -F json
as below.
$ pbsnodes -F json hpcnode03
{
"timestamp":1606173513,
"pbs_version":"19.2.6.20200311140837",
"pbs_server":"pbsserver",
"nodes":{
"hpcnode03":{
"Mom":"hpcnode03",
"ntype":"PBS",
"state":"free",
"pcpus":56,
"jobs":[
"110298.hpcnode0",
"110609.hpcnode0"
],
"resources_available":{
"arch":"linux",
"centos6_node":"no",
"host":"hpcnode03",
"intel_node":"yes",
"mem":"384000000kb",
"ncpus":56,
"Qlist":"normal",
"vnode":"hpcnode03"
},
"resources_assigned":{
"mem":"278921216kb",
"ncpus":32
},
"resv_enable":"True",
"sharing":"default_shared",
"last_state_change_time":1606093393,
"last_used_time":1606111932
}
}
}
If you wish the output to be in delimiter-separated value format the use the option
-F dsv
. The default delimiter is a vertical bar (“|”).
$ pbsnodes -F dsv hpcnode03
An optional delimiter specification can be used to change this.
$ pbsnodes -F dsv -D ',' hpcnode03
You can also use the above options and query all the nodes.
$ pbsnodes -F json -a