pbs_release_nodes(1B)
π pbs_release_nodes (1B) β PBS Professional
okay bestie, listen up: pbs_release_nodes is the little command that lets you hand back vnodes early, before PBS takes them away on its own. It's a manual page from PBS Professional, and honestly? It's giving "let me free up some space for my other jobs" energy. Let's get into it. β¨
πΈ NAME
pbs_release_nodes β release vnodes assigned to a PBS job π«Ά
β¨ SYNOPSIS
pbs_release_nodes [-j <job ID>]
[-k (<number of hosts to keep> |
<selection of vnodes to keep>)]
<vnode> [<vnode> [<vnode>] ...]
pbs_release_nodes [-j <job ID>] -a
pbs_release_nodes --version
π DESCRIPTION
So here's the vibe: you can use the pbs_release_nodes command to release sister hosts or vnodes that are assigned to a running job and that you literally don't need anymore β before the job would normally let them go. Those vnodes then become available for other jobs to grab. slay for everyone involved. π₯
You can name the exact sister vnodes you want released, or you can just release all the sister vnodes that aren't on the primary execution host by using the -a option. Easy.
PBS can keep however many sister hosts you tell it to keep, or PBS can release all sister vnodes except the ones you specify with a select statement. Both paths are valid, pick your fighter. β
You can use this on jobs and subjobs β but not on job arrays or ranges of subjobs. periodt.
π Caveats and Restrictions
- You can release only sister hosts or vnodes that are not on the primary execution host. You cannot release vnodes on the primary execution host. That one's off limits, bestie. π
- The job must be running (that's the
Rstate). pbs_release_nodesis not supported on vnodes tied to Cray X* series systems β meaning vnodes whosevntypehas the"cray_"prefix. Nope, not those. π- If cgroups support is enabled, and
pbs_release_nodesis called to release some but not all of the vnodes managed by a MoM, the resources on those vnodes that are part of a cgroup are not released until the entire cgroup is released. Like, the cgroup is holding them hostage. π - You cannot release a partial host. If you try to release some but not all of a host, the job's
exec_vnodeattribute shows the new, smaller list of vnodes β butpbsnodeswill reveal that the host is still allocated to the job. Sneaky little lie of an attribute, ngl. - If you specify release of a vnode that a job process is running on, that process is terminated when the vnode is released. Fr fr, heads up on that one. β οΈ
π Required Privilege
This command can be run by the job owner, the PBS Manager, Operator, and Administrator, as well as root on Linux and Admin on Windows. Main character access list. π
π Options to pbs_release_nodes
-aβ Releases all job vnodes not on the primary execution host. Cannot be used with the-koption, or with a list of vnode names. It's an all-or-nothing queen. π-j<job ID>β Specifies the job ID for the job or subjob whose vnode(s) are to be released.-k<keep number>|<keep selection>β Use keep number to specify how many sister hosts to keep.
Use keep selection to specify which sister vnodes to keep. The keep selection is a select statement beginning with "select=" that says which vnodes to keep.
The primary execution host and its vnodes are not released.
For example, to release all sister hosts except 8:
pbs_release_nodes -k 8
To release all sister vnodes except for 4 of the ones marked with "bigmem":
pbs_release_nodes -k select=4:bigmem=true
Cannot be used with the -a option or with a vnode list argument.
(no options)β With no options,pbs_release_nodesuses the value of thePBS_JOBIDenvironment variable as the job ID of the job whose vnodes are to be released. It just knows. π§--versionβ Thepbs_release_nodescommand returns its PBS version information and exits. This option can only be used alone. No plus-ones allowed. β¨
π¦ Operands for pbs_release_nodes
The pbs_release_nodes command can take as an operand a list of vnodes. Format:
<vnode name> [<vnode name> [<vnode name>] ...]
Cannot be used with the -a option.
π Usage
This command can be run at the command line, or called inside a job script β where it can just use the value of the PBS_JOBID environment variable. Convenient much? π
You can release any vnode that appears in the job's exec_vnode attribute as long as it's not on the primary execution host. You can release a particular set of a job's vnodes, or you can release all of a job's non-primary-execution-host vnodes. Your call, babe.
To release specific vnodes:
pbs_release_nodes [-j <job ID>] <vnode name> [<vnode name>] ...]
To release all of a job's vnodes that are not on the primary execution host:
pbs_release_nodes [-j <job ID>] -a
To release all except a specified number of vnodes:
pbs_release_nodes -k <number of sister hosts to keep>
To release all vnodes except for those in a select specification:
pbs_release_nodes -k <select specification>
Okay that's the whole page, bestie β you're basically a vnode-releasing icon now. π This little gem is from the Local corner of the docs, dated 6 May 2020, and it's filed under pbs_release_nodes(1B). Go free those vnodes. π
π¦ where this page comes from
- nixos 26.05: openpbs 23.06.06-unstable-2026-04-02
- nixpkgs unstable: openpbs 23.06.06-unstable-2026-04-02
- Copyright (C) 1994-2021 Altair Engineering, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms