Customize job information output
By default, the bjobs command displays a predefined set of job information. While you can use various bjobs options to display specific job information based on your needs, you can also customize the specific fields that bjobs displays. Customize output to create a specific bjobs output format that shows all the required information so you can easily parse the information by using custom scripts or to display the information in a predefined format.
Use the LSB_BJOBS_FORMAT parameter in lsf.conf or the LSB_BJOBS_FORMAT runtime environment variable to define the default bjobs output format for LSF:
LSB_BJOBS_FORMAT="field_name[:[-][output_width]][:unit_prefix] ... [delimiter='character']"
Use the bjobs -o option to define the custom output at the command level:
bjobs ... -o "field_name[:[-][output_width]][:unit_prefix] ... [delimiter='character']"
The following alternative method of using bjobs -o is recommended for special delimiter characters in a csh environment (for example, $):
bjobs ... -o 'field_name[:[-][output_width]][:unit_prefix] ... [delimiter="character"]'
- Specify which bjobs fields (or aliases instead of the full field names), in which order, and with what width to display.
- Specify only the bjobs field name or alias to set its output to unlimited width and left justification.
- (Available starting in Fix Pack 14) Specify all to display all fields. Specify the colon (:) with an output width that applies to all fields.
- Specify the colon (:) without an output width to set the output width to the recommended width for that field.
- Specify the colon (:) with an output width to set the maximum number of
characters to display for the field. When its value exceeds this width, bjobs
truncates the output:
- For the JOB_NAME field, bjobs removes the header characters and replaces them with an asterisk (*)
- For other fields, bjobs truncates the ending characters
- Specify a hyphen (-) to set right justification when bjobs displays the output for the specific field. If not specified, the default is to set left justification when bjobs displays the output for a field.
- Specify a second colon (:) with a unit to specify
a unit prefix for the output for the following fields: mem,
max_mem, avg_mem,
memlimit, swap,
swaplimit, corelimit,
stacklimit, and hrusage (for
hrusage, the unit prefix is for mem and
swap resources only).
This unit is KB (or K) for kilobytes, MB (or M) for megabytes, GB (or G) for gigabytes, TB (or T) for terabytes, PB (or P) for petabytes, EB (or E) for exabytes, ZB (or Z) for zettabytes), or S to automatically adjust the value to a suitable unit prefix and remove the "bytes" suffix from the unit. The default is to automatically adjust the value to a suitable unit prefix, but keep the "bytes" suffix in the unit.
The display value keeps two decimals but rounds up the third decimal. For example, if the unit prefix is set to G, 10M displays as 0.01G.
The unit prefix specified here overrides the value of the LSB_UNIT_FOR_JOBS_DISPLAY environment variable, which also overrides the value of the LSB_UNIT_FOR_JOBS_DISPLAY parameter in the lsf.conf file.
- Use delimiter= to set the delimiting character to display between different headers and fields. This delimiter must be a single character. By default, the delimiter is a space.
The bjobs -o option overrides the LSB_BJOBS_FORMAT environment variable, which overrides the LSB_BJOBS_FORMAT setting in lsf.conf.
- LSB_BJOBS_FORMAT and bjobs -o both apply to output for the bjobs command with no options, and for bjobs options with short form output that filter information, including the following options: -a, -app, -d, -g, -G, -J, -Jd, -Lp, -m, -P, -q, -r, -sla, -u, -x, -X.
- LSB_BJOBS_FORMAT does not apply to output for bjobs options that use a modified format and filter information, but you can use bjobs -o to customize the output for these options. These options include the following options: -fwd, -N, -p, -s.
- LSB_BJOBS_FORMAT and bjobs -o do not apply to output for bjobs options that use a modified format, including the following options: -A, -aff, -aps, -l, -UF, -ss, -sum, -UF, -w, -W, -WF, -WL, -WP.
The following are the field names used to specify the bjobs fields to display, recommended width, aliases you can use instead of field names, and units of measurement for the displayed field:
Field name | Width | Alias | Unit | Description | Category |
---|---|---|---|---|---|
jobid | 7 | id | The job ID. | Common | |
jobindex | 8 | The array job's element index. | |||
stat | 5 | The job's status. | |||
user | 7 | The user that submitted the job. | |||
user_group | 15 | ugroup | The user group for the user. | ||
queue | 10 | The queue for the job. | |||
job_name | 10 | name | The job's name. | ||
job_description | 17 | description | A description of the job. | ||
proj_name | 11 | proj, project | The project to which the job is submitted. | ||
application | 13 | app | The application to which the job is submitted. | ||
service_class | 13 | sla | The service class to which the job is submitted. | ||
job_group | 10 | group | The job group to which the job is submitted. | ||
job_priority | 12 | priority | The job's priority. | ||
rsvid | 40 | The advance reservation ID for the job. | |||
esub | 20 | The job's esub external submission name. |
|||
kill_reason | 50 | The reason why the job was killed. | |||
suspend_reason | 50 | The reason why the job was suspended. | |||
resume_reason | 50 | The reason why the job resumed. | |||
kill_issue_host | 50 | The host that issued killing the job. | |||
suspend_issue_host | 50 | The host that issued suspending the job. | |||
resume_issue_host | 50 | The host that issued resuming the job. | |||
dependency | 15 | The job's dependency information. | . | ||
pend_reason This displays the single key pending reason, including custom messages, regardless of the default pending reason level as specified in the LSB_BJOBS_PENDREASON_LEVEL parameter in the lsf.conf file. |
11 | The job's pending reason. | |||
charged_saap | 50 | saap | The path to which the job's user-based fair share charged. | ||
command | 15 | cmd | The job's command. | Command | |
pre_exec_command | 16 | pre_cmd | The job's pre-execution command. | ||
post_exec_command | 17 | post_cmd | The job's post-execution command. | ||
resize_notification_command | 27 | resize_cmd | The job's resize notification command. | ||
pids | 20 | The job's PID number. | |||
exit_code | 10 | The job's exit code. | |||
exit_reason | 50 | The job's exit reason. | |||
interactive | 11 | Whether or not the job is interactive. | |||
from_host | 11 | The host from where the job is submitted. | Host | ||
first_host | 11 | The first execution host for the job. | |||
exec_host | 11 | All execution hosts for the job. | |||
nexec_host Note: If the allocated host group or compute unit is condensed, this
field does not display the real number of hosts. Use bjobs -X -o to view the real
number of hosts in these situations.
|
10 | The number of execution hosts for the job. | |||
ask_hosts | 30 | The hosts specified by the job in the submission options. | |||
alloc_slot | 20 | List of execution hosts, and the number of slots allocated to the job on each host. | |||
nalloc_slot | 10 | The number of slots allocated to the job. | |||
host_file | 10 | A user-specified host file while the job was submitted. | |||
exclusive | 13 | Whether or not the job is exclusive. | |||
nreq_slot | 10 | The number of slots requested by the job | |||
submit_time | 15 | time stamp | The time when the job was submitted. | Time | |
start_time | 15 | time stamp | The time when the job was started to run. | ||
estimated_start_time | 20 | estart_time | time stamp | The job's estimated start time. | |
specified_start_time | 20 | sstart_time | time stamp | The specified start time of the job while submitted. | |
specified_terminate_time | 24 | sterminate_time | time stamp | Specifies the job termination deadline. | |
time_left | 11 | seconds | Amount of time left running based on the run limit of the job. | ||
finish_time | 16 | time stamp | The time that the job finished. | ||
estimated_run_time | 20 | ertime | seconds | The estimated job run time based on the run limit. | |
ru_utime | 12 | seconds | CPU user time cost by executing the job. | ||
ru_stime | 12 | seconds | CPU system time cost by executing the job. | ||
%complete | 11 | The percentage job completeness based on run time and run limit. | |||
warning_action | 15 | warn_act | The job action to be taken before a job control action occurs. | ||
action_warning_time | 19 | warn_time | The job action warning time. | ||
pendstate (IPEND/EPEND/NOTPEND) | 9 | The job's pending state: eligible or ineligible pending status. | |||
pend_time | 12 | seconds | Amount of time that a job is kept in pending status. | ||
ependtime | 12 | seconds | Amount of time that a job is kept in eligible pending status. | ||
ipendtime | 12 | seconds | Amount of time that a job is kept in ineligible pending status. | ||
estimated_sim_start_time | 24 | esstart_time | time stamp | The job start time, predicted by a simulation-based estimator. | |
effective_plimit (run with bjobs -p to show information for pending jobs only) | 18 | seconds | Effective pending time limit. | ||
plimit_remain (run with bjobs -p to show information for
pending jobs only) A negative number indicates the amount of time in which the job exceeded the pending time limit, while a positive number shows that the time remaining until the pending time limit is reached. |
15 | seconds | Pending time remaining, based on the effective pending time limit. | ||
effective_eplimit (run with bjobs -p to show information for pending jobs only) | 19 | seconds | Effective eligible pending time limit. | ||
eplimit_remain (run with bjobs -p to show information for pending jobs only) | 16 | seconds | Effective pending time remaining, based on the pending time limit. | ||
cpu_used A negative number indicates the amount of time in which the job exceeded the pending time limit, while a positive number shows that the time remaining until the pending time limit is reached. |
10 | The amount of CPU used time while executing the job. | CPU | ||
run_time | 15 | seconds | The duration that the job has been running. | ||
idle_factor | 11 | The idle factor used for job exception handling. | |||
exception_status | 16 | except_stat | The job's exception status. | ||
slots | 5 | The number of slots used by the job. | |||
mem | 15 | As defined for LSF_UNIT_FOR_LIMITS in lsf.conf. | The amount of memory used by the job. | ||
max_mem | 15 | As defined for LSF_UNIT_FOR_LIMITS in lsf.conf. | The maximum memory used by the job. | ||
avg_mem | 15 | As defined for LSF_UNIT_FOR_LIMITS in lsf.conf. | The average amount of memory used by the job. | ||
memlimit | 15 | As defined for LSF_UNIT_FOR_LIMITS in lsf.conf. | The limit to the amount of memory that can be used by the job. | ||
swap | 15 | As defined for LSF_UNIT_FOR_LIMITS in lsf.conf. | The amount of swap memory used by the job. | ||
swaplimit | 15 | As defined for LSF_UNIT_FOR_LIMITS in lsf.conf. | The limit to the amount of swap memory that can be used by the job. | ||
gpu_num | 10 | gnum | The number of GPUs used by the job. | GPU | |
gpu_mode | 20 | gmode | The GPU mode used for the job. | ||
j_exclusive | 15 | j_excl | Whether or not the job is using GPUs in job exclusive mode. | ||
gpu_alloc | 30 | galloc | GPU allocation for the job. | ||
nthreads | 10 | The number of threads created by the job. | Resource usage | ||
hrusage | 50 | The amount of host-based resources used by the job. | |||
min_req_proc | 12 | The minimum number of processors requested by the parallel job. | Resource requirement | ||
max_req_proc | 12 | The maximum number of processors requested by the parallel job. | |||
effective_resreq | 17 | eresreq | The effective resource requirements of the job. | ||
combined_resreq | 20 | cresreq | The combined resource requirements of the job. | ||
network_req | 15 | IBM® Parallel Environment (IBM PE) network requirements of the job. | |||
filelimit | 10 | The file limit value for the job. | Resource limits | ||
corelimit | 15 | The core limit value for the job. | |||
stacklimit | 15 | The stack limit value for the job. | |||
processlimit | 12 | The process limit value for the job. | |||
runtimelimit | 12 | The runtime limit value for the job. | |||
plimit | 10 | seconds | The pending time limit value for the job. | ||
eplimit | 10 | seconds | The eligible pending time limit value for the job. | ||
input_file | 10 | The specified input file for the job. | File | ||
output_file | 11 | The specified output file for the job. | |||
error_file | 10 | The specified standard error output file for the job. | |||
output_dir | 15 | The specified standard output file for the job. | Directory | ||
sub_cwd | 10 | The path location from where the job was submitted. | |||
exec_home | 10 | The home directory for the job on the execution host. | |||
exec_cwd | 10 | The current working directory for the job on the execution host. | |||
licproject | 20 | The license project specified for the job. | License | ||
forward_cluster | 15 | fwd_cluster | The name of the cluster that forwarded the job. | MultiCluster | |
forward_time | 15 | fwd_time | time stamp | The time when the job was forwarded. | |
srcjobid | 8 | The job ID assigned by the cluster that accepted the job. | |||
dstjobid | 8 | The job ID assigned by the cluster that forwarded the job. | |||
source_cluster | 15 | srcluster | The name of the cluster that accepted the job. | ||
energy | Joule | The amount of energy used by the job. | Energy | ||
gpfsio Job disk usage (I/O) data on IBM Spectrum Scale. |
The size of input or output disk usage data on IBM Spectrum Scale for the job. | ||||
block (Available starting in Fix Pack 13) |
5 | Blocking mode. Used for getting jobs submitted with the bsub -K command. | |||
cpu_peak (Available starting in Fix Pack 13) |
10 | The peak number of CPUs used by the job. | |||
cpu_efficiency (for Fix Pack 13) cpu_peak_efficiency (for Fix Pack 14) |
10 | The peak number of CPUs used by the job compared to the number of requested CPUs, expressed in percentage. | |||
mem_efficiency (Available starting in Fix Pack 13) |
10 | The maximum size of memory used by the job compared to the requested memory size for the job, expressed in percentage. | |||
average_cpu_efficiency
(Available starting in Fix Pack 14) |
10 | The average number of CPUs used by job compared to the number of requested CPUs, expressed in percentage. | |||
cpu_peak_reached_duration (Available starting in Fix Pack 14) |
10 | The time it takes for the number of CPU jobs to reach the peak number. | |||
all (Available starting in Fix Pack 14) |
Specify an output width that applies to all fields | All of the fields supported in the bjobs -o command. |
Field names and aliases are not case-sensitive. Valid values for the output width are any positive integer 1 - 4096. If the jobid field is defined with no output width and LSB_JOBID_DISP_LENGTH is defined in lsf.conf, the LSB_JOBID_DISP_LENGTH value is used for the output width. If jobid is defined with a specified output width, the specified output width overrides the LSB_JOBID_DISP_LENGTH value.
Remove column headings from the job information output
Use the bjobs -noheader option to remove column headings from the bjobs output. When bjobs -noheader is specified, bjobs displays the values of the fields without displaying the names of the fields. This option is useful for script parsing, when column headings are not necessary.
This option applies to output for the bjobs command with no options, and to output for all bjobs options with short form output except for -aff, -l, -UF, -N, -h, and -V.
View customized job information in JSON format
Use the bjobs -json option to view the customized bjobs output in JSON format. Since JSON is a customized output format, you must use the bjobs -json option together with the -o option.