pbs_node_attributes(7B)

๐Ÿ“ฆ version 23.06.06-unstable-2026-04, in nixos 26.05, nixpkgs unstable

๐Ÿฆ‹ pbs_node_attributes(7B) ๐Ÿฆ‹

okay so this is the pbs_node_attributes(7B) page from PBS Professional, bestie โ€” part 1, and it's all about the attributes of PBS vnodes. No cap, we're going through every single one with the exact details, because the facts do not change even when the vibe is cute. ๐Ÿ’…

๐Ÿ’– NAME ๐Ÿ’–

pbs_node_attributes โ€” attributes of PBS vnodes.

โœจ DESCRIPTION โœจ

Vnodes have the following attributes, bestie โ€” here's the whole lineup:

  • ๐Ÿ’ฌ comment โ€” Information about this vnode. This attribute may be set by the manager to any string to inform users of any information relating to the node. If this attribute is not explicitly set, the PBS server will use the attribute to pass information about the node status, specifically why the node is down. If the attribute is explicitly set by the manager, it will not be modified by the server.
    • Readable by all; settable by Manager.
    • Format: String
    • Python type: str
    • Default: No default
  • ๐ŸŒ€ current_aoe โ€” The AOE currently instantiated on this vnode. Cannot be set on server's host.
    • Readable by all; settable by Manager.
    • Format: String
    • Python type: str
    • Default: Unset
  • ๐ŸŒ€ current_eoe โ€” Current value of eoe on this vnode. We do not recommend setting this attribute manually.
    • Readable by all; settable by Manager (not recommended).
    • Format: String
    • Python type: str
    • Default: Unset
  • ๐Ÿงฉ in_multivnode_host โ€” Specifies whether a vnode is part of a multi-vnoded host. Used internally. Do not set.
    • Readable and settable by Manager (not recommended).
    • Format: Integer
    • Python type: int
    • Behavior:
      • 1 โ€” Part of a multi-vnode host
      • Unset โ€” Not part of a multi-vnode host
    • Default: Unset
  • ๐Ÿ’ผ jobs โ€” List of jobs running on this vnode.
    • Readable by all; set by PBS.
    • Format: String
    • Syntax: <processor number>/<job ID>, ...
    • Python type: int
  • โฐ last_state_change_time โ€” Records the most recent time that this node changed state.
    • Format:
      • Timestamp
      • Printed by qstat in human-readable Date format.
      • Output in hooks as seconds since epoch.
  • โฐ last_used_time โ€” Records the most recent time that this node finished being used for a job or reservation. Set at creation or reboot time. Updated when node is released early from a running job. Reset when node is ramped up.
    • Format:
      • Timestamp
      • Printed by qstat in human-readable Date format.
      • Output in hooks as seconds since epoch.
  • ๐Ÿชช license โ€” Indicates whether this vnode is licensed.
    • Readable by all; set by PBS.
    • Format: Character
    • Python type: str
    • Valid values:
      • l โ€” This vnode is licensed.
    • Default: Unset
  • ๐Ÿชช license_info โ€” Number of licenses assigned to this vnode.
    • Readable by all; set by PBS.
    • Format: Integer
    • Python type: int
    • Default: Unset
  • ๐Ÿ’€ lictype โ€” No longer used.
  • ๐Ÿ› ๏ธ maintenance_jobs โ€” List of jobs that were running on this vnode, but have been suspended via the admin-suspend signal to qsig.
    • Readable by Manager; set by PBS.
    • Format: string_array
    • Python type: str
    • Default: No default
  • ๐Ÿ–ฅ๏ธ Mom โ€” Hostname of host on which MoM daemon runs.
    • Readable by all. Can be explicitly set by Manager only via qmgr, and only at vnode creation. The server can set this to the FQDN of the host on which MoM runs, if the vnode name is the same as the hostname.
    • Format: String
    • Python type: str
    • Default: Value of vnode resource (vnode name)
  • ๐Ÿท๏ธ name โ€” The name of this vnode.
    • Readable by all; settable by Manager.
    • Format: String
    • Python type: str
    • Default: No default
  • ๐Ÿšซ no_multinode_jobs โ€” Controls whether jobs which request more than one chunk are allowed to execute on this vnode. Used for cycle harvesting.
    • Readable by all; settable by Manager.
    • Format: Boolean
    • Python type: bool
    • Behavior:
      • True โ€” Jobs requesting more than one chunk are not allowed to execute on this vnode.
    • Default: False
  • ๐Ÿงฌ ntype โ€” The type of this vnode.
    • Readable by all; settable by Manager.
    • Format: String
    • Valid values:
      • PBS โ€” Normal vnode
        • Python type: pbs.ND_PBS
        • Default: PBS
  • ๐Ÿ—‚๏ธ partition โ€” Name of partition to which this vnode is assigned. A vnode can be assigned to at most one partition.
    • Readable by all; settable by Operator and Manager.
    • Format: String
    • Python type: str
    • Default: No default
  • ๐Ÿ“ฆ pbs_version โ€” The version of PBS for this MoM.
    • Readable by all; set by PBS.
    • Format: String
    • Python type: str
    • Default: No default
  • ๐Ÿง  pcpus โ€” Deprecated. The number of physical CPUs on this vnode. This is set to the number of CPUs available when MoM starts. For a multiple-vnode MoM, only the natural vnode has pcpus.
    • Readable by all; set by PBS.
    • Format: Integer
    • Python type: int
    • Default: Number of CPUs on startup
  • ๐Ÿท๏ธ pnames โ€” The list of resources being used for placement sets. Not used for scheduling; advisory only.
    • Readable by all; settable by Manager.
    • Format: String
    • Syntax: Comma-separated list of resource names
    • Python type: str
    • Default: No default
  • ๐Ÿ”Œ Port โ€” Port number on which MoM daemon listens. Can be explicitly set only via qmgr, and only at vnode creation.
    • Readable and settable by Operator and Manager.
    • Format: Integer
    • Python type: int
    • Default: 15002
  • โšก poweroff_eligible โ€” Enables powering this vnode up and down by PBS.
    • Readable by all; settable by Manager.
    • Format: Boolean
    • Python type: bool
    • Values:
      • True โ€” PBS can power this vnode on and off.
      • False โ€” PBS cannot power this vnode on and off.
    • Default: False
  • ๐Ÿ”‹ power_provisioning โ€” Enables use of power profiles by this vnode.
    • Readable by all; settable by Manager.
    • Format: Boolean
    • Python type: bool
    • Behavior:
      • True โ€” Power provisioning is enabled at this vnode.
      • False โ€” Power provisioning is disabled at this vnode.
    • Default: False
  • ๐Ÿ‘‘ Priority โ€” The priority of this vnode compared with other vnodes.
    • Readable by all; settable by Operator and Manager.
    • Format: Integer
    • Python type: int
    • Valid values: -1024 to +1023
    • Default: No default
  • ๐Ÿ› ๏ธ provision_enable โ€” Controls whether this vnode can be provisioned. Cannot be set on server's host.
    • Format: Boolean
    • Python type: bool
    • Behavior:
      • True โ€” This vnode may be provisioned.
      • False โ€” This vnode may not be provisioned.
    • Default: False
  • ๐Ÿ—ƒ๏ธ queue โ€” Deprecated. The queue with which this vnode is associated. Each vnode can be associated with at most 1 queue. Queues can be associated with multiple vnodes. Any jobs in a queue that has associated vnodes can run only on those vnodes. If a vnode has an associated queue, only jobs in that queue can run on that vnode.
    • Readable by all; settable by Manager.
    • Format: String
    • Python type: pbs.queue
    • Behavior:
      • <name of queue> โ€” Only jobs in specified queue may run on this vnode.
      • Unset โ€” Any job in any queue that does not have associated vnodes can run on this vnode.
    • Default: No default
  • ๐Ÿ“Š resources_assigned โ€” The total amount of each resource allocated to jobs and started reservations running on this vnode.
    • Readable by all; set by PBS.
    • Format: String
    • Syntax:
resources_assigned.<resource
name>=<value>[,resources_assigned.<resource name>=<value>
  • Python type: pbs.pbs_resource
  • Syntax:
resources_assigned['<resource name>'] = < val>
where resource name is any built-in or custom resource
  • Default: No default
  • ๐Ÿ“Š resources_available โ€” The list of resource and amounts available on this vnode. If not explicitly set, the amount shown is that reported by the pbs_mom running on this vnode. If a resource value is explicitly set, that value is retained across restarts.
    • Readable by all; settable by Operator and Manager.
    • Format: String
    • Syntax:
resources_available.<resource name>=<value>,
resources_available.<resource name> = <value>, ...
  • Python type: pbs.pbs_resource
  • Syntax:
resources_available['<resource name>'] = < val>
where resource name is any built-in or custom resource
  • Default: No default
  • ๐Ÿ“… resv โ€” List of advance and standing reservations pending on this vnode.
    • Readable by all; set by PBS.
    • Format: String
    • Syntax:
      • <reservation ID>[, <reservation ID>, ...]
      • (Comma-separated list of reservation IDs)
    • Python type: str
    • Example: resv = R142.examplemachine, R143.examplemachine
    • Default: No default
  • ๐Ÿ“… resv_enable โ€” Controls whether the vnode can be used for advance and standing reservations. Reservations are incompatible with cycle harvesting.
    • Readable by all; settable by Manger.
    • Format: Boolean
    • Python type: bool
    • Behavior:
      • When set to True, this vnode can be used for reservations. Existing reservations are honored when this attribute is changed from True to False.
    • Default: True
  • ๐Ÿค sharing โ€” Specifies whether more than one job at a time can use the resources of the vnode or the vnode's host. Either (1) the vnode or host is allocated exclusively to one job, or (2) the vnode's or host's unused resources are available to other jobs. Can be set using pbs_mom -s insert only.
    • Readable by all; settable by Operator and Manager.
    • Format: String
    • Python type: int
    • Valid values:

part 1 ends here, bestie โ€” part 2 is next ๐Ÿ’–

  • default_shared โ€” defaults to shared โœจ Python type: pbs.ND_DEFAULT_SHARED
  • default_excl โ€” defaults to exclusive ๐Ÿ’… Python type: pbs.ND_DEFAULT_EXCL
  • default_exclhost โ€” the entire host is assigned to the job unless the job's own sharing request says otherwise ๐Ÿ™ˆ Python type: pbs.ND_DEFAULT_EXCLHOST
  • ignore_excl โ€” overrides any place=excl the job tries to set ๐Ÿšซ Python type: pbs.ND_IGNORE_EXCL
  • force_excl โ€” overrides any place=shared the job tries to set ๐Ÿ”’ Python type: pbs.ND_FORCE_EXCL
  • force_exclhost โ€” the entire host is assigned to the job, full stop, no matter what sharing request the job made ๐Ÿ‘‘ Python type: pbs.ND_FORCE_EXCLHOST
  • Unset โ€” defaults to shared ๐ŸŒธ

So how a vnode or host actually behaves is a little collab between the sharing attribute and the job's placement directive. Here's the whole grid, bestie, no cap:

                | Vnode Behavior      | Host Behavior
                | when place=         | when place=
                |                     |
sharing value    | unset  shared excl  |exclhost !=exclhost
----------------------------------------------------------------
not set          | shared shared excl  | excl   depends on place
default_shared   | shared shared excl  | excl   depends on place
default_excl     | excl   shared excl  | excl   depends on place
default_exclhost | excl   shared excl  | excl   depends on place
ignore_excl      | shared shared shared| shared not exclusive
force_excl       | excl   excl   excl  | excl   not exclusive
force_exclhost   | excl   excl   excl  | excl   excl

Example: <vnode name>: sharing=force_excl Default value: default_shared ๐ŸŽ€

โญ state โญ

Shows or sets the state of the vnode. Readable by all, because we're all nosy here ๐Ÿ‘€. All states are set by PBS itself โ€” Operator and Manager can only set the state to offline.

  • Format: String
  • Syntax: <state>[, <state>, ...] (that's a comma-separated list of one or more states, babes)
  • Python type: int

Valid values, and yes we're going through every single one ๐Ÿ’–

  • busy โ€” vnode is reporting a load average greater than the allowed max. Can combine with offline. ๐Ÿ“ˆ
  • down โ€” node is not responding to queries from the server ๐Ÿ˜ญ. Cannot be combined with free, provisioning.
  • free โ€” vnode is up and capable of accepting additional job(s). Cannot be combined with other states. ๐Ÿฆ‹
  • job-busy โ€” all CPUs on the vnode are allocated to jobs. Can combine with: offline, resv_exclusive. ๐Ÿ”ฅ
  • job-exclusive โ€” the entire vnode is exclusively allocated to one job, at the job's request. Can combine: offline, resv_exclusive. ๐Ÿ‘‘
  • offline โ€” jobs are not to be assigned to this vnode. Can combine: busy, job-busy, job-exclusive, resv_exclusive. ๐Ÿ’ค
  • provisioning โ€” vnode is in being provisioned. Cannot be combined with other states. ๐Ÿงš
  • resv-exclusive โ€” a running reservation has requested exclusive use of the vnode. Can combine with: job-exclusive, offline. ๐ŸŽฏ
  • stale โ€” the vnode was previously reported to the server but is no longer reported to the server. Cannot combine with free, provisioning. ๐Ÿ’€
  • state-unknown โ€” the server has never been able to contact the vnode. Either MoM is not running on the vnode, the vnode hardware is down, or there's a network problem. ๐Ÿซ 
  • unresolvable โ€” the server cannot resolve the name of the vnode. ๐Ÿท๏ธ
  • wait-provisioning โ€” vnode needs to be provisioned, but can't: limit reached for concurrently provisioning vnodes. See the max_concurrent_provision server attribute. โณ

Default: No default ๐ŸŒˆ

๐Ÿ”ฎ topology_info ๐Ÿ”ฎ

Contains information intended to be used in hooks. Visible in and usable by hooks only โ€” invisible to Manager, Operator, User ๐Ÿ™ˆ. It's giving secret clubhouse.

  • Format: XML String
  • Python type: str
  • Default value: Unset

๐Ÿ“ vnode_pool ๐Ÿ“

Cray only. Lets just one MoM, instead of all of them, report inventory on startup โ€” so startup is faster and there's less network chatter between the server and the non-reporting MoMs. On each Cray, all MoMs must have the same setting for this attribute. Can be set only at vnode creation; valid only on login nodes running a MoM. Not supported on non-Cray machines, sorry bestie. ๐Ÿ’…

Readable by all; settable by Manager.

  • Format: Integer
  • Python type: int

Behavior:

  • >0 โ€” only one MoM per Cray reports inventory. โญ
  • Unset โ€” each MoM reports inventory separately. ๐ŸŒธ

Default: 0 (Unset)


๐Ÿ‘€ SEE ALSO ๐Ÿ‘€

  • qmgr(1B)

That's the whole page, bestie, you ate ๐Ÿ’…โœจ signed off from Local on 17 July 2020, filed under pbs_node_attributes(7B) โ€” go forth and share some vnodes responsibly ๐Ÿซถ๐ŸŽ€

๐Ÿ“ฆ where this page comes from