Page tree

PBS Environments

Jobs running under PBS have a number of environment variables set when they start that can be useful for your job script.

Some of these variables are NCI specific and are not available on other PBS installations.

Environmental Variable


PBS_NCPUSThe number of CPUs requested for the entire job
PBS_NGPUSThe number of GPUs requested for the entire job
PBS_NNODESThe number of nodes your job is running on

The number of CPUs in each node in your job

PBS_NCI_NUMA_PER_NODEThe number of NUMA domains in each node in your job
PBS_NCI_NCPUS_PER_NUMAThe number of CPUs per NUMA domain in each node in your job
PROJECTThe project that your job is running under


The job ID of your job


The name you gave to your job


The directory your job was submitted from


The queue your job was submitted to


The location of a file containing the nodes allocated to your job


The amount of JobFS allocated to your job

Per node information

Information about NCPUS and NUMA domains per node are about the entire node. If your job does not request all the CPUs in the node, you will not have access to that many CPUs or NUMA domains in your job.

While these environment variables are set correctly at the start of your job, it's possible for your job script to overwrite values and they will no longer be accurate.

The variables may also be incorrect if you use qsub -V  where these variables are already set (such as from inside another PBS job)

Authors: Andrew Wellington