Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
sacct(1)			 Slurm Commands 			sacct(1)

NAME
     sacct  -  displays  accounting data for all jobs and job steps in the Slurm
     job accounting log or Slurm database

SYNOPSIS
     sacct [OPTIONS...]

DESCRIPTION
     Accounting information for jobs invoked with Slurm are either logged in the
     job accounting log file or saved to the Slurm database, as configured  with
     the AccountingStorageType parameter.

     The sacct command displays job accounting data stored in the job accounting
     log  file	or  Slurm  database in a variety of forms for your analysis. The
     sacct command displays information on jobs, job steps,  status,  and  exit-
     codes  by	default. You can tailor the output with the use of the --format=
     option to specify the fields to be shown.

     Job records consist of a primary entry for the job as a whole  as	well  as
     entries  for job steps. The Job Launch page has a more detailed description
     of 	  each		 type		of	     job	   step.
     <https://slurm.schedmd.com/job_launch.html#job_record>

     For  the  root user, the sacct command displays job accounting data for all
     users, although there are options to filter the output to report  only  the
     jobs from a specified user or group.

     For the non-root user, the sacct command limits the display of job account-
     ing data to jobs that were launched with their own user identifier (UID) by
     default. Data for other users can be displayed with the --allusers, --user,
     or --uid options.

     Elapsed  time  fields  are  presented  as [days-]hours:minutes:seconds[.mi-
     croseconds]. Only 'CPU' fields will ever have microseconds.

     NOTE: If designated, the slurmdbd.conf option PrivateData may  further  re-
     strict  the accounting data visible to users which are not SlurmUser, root,
     or a user with AdminLevel=Admin. See the slurmdbd.conf man page  for  addi-
     tional details on restricting access to accounting data.

     NOTE:  The contents of Slurm's database are maintained in lower case.  This
     may result in some sacct output differing from that  of  other  Slurm  com-
     mands.

     NOTE:  Much of the data reported by sacct has been generated by the wait3()
     and getrusage() system calls. Some systems gather and report incomplete in-
     formation for these calls; sacct reports values of 0 for this missing data.
     See your systems getrusage (3) man page for information  about  which  data
     are actually available on your system.

OPTIONS
     -A, --accounts=<account_list>
	       Displays  jobs  when a comma separated list of accounts are given
	       as the argument.

     --array   Expand job arrays. Display all array tasks on separate lines  in-
	       stead of displaying groups of array tasks on single lines.

     -L, --allclusters
	       Display	jobs  ran  on all clusters. By default, only jobs ran on
	       the cluster from where sacct is called are displayed.

     -X, --allocations
	       Only show statistics relevant to the job allocation  itself,  not
	       taking steps into consideration.

	       NOTE: Without including steps, utilization statistics for job al-
	       location(s) will be reported as zero.

     -a, --allusers
	       Displays  all users' jobs when run by user root or if PrivateData
	       is not configured to jobs.  Otherwise display the current  user's
	       jobs

     -x, --associations=<assoc_list>
	       Displays the statistics only for the jobs running under the asso-
	       ciation	ids  specified	by  the  assoc_list  operand, which is a
	       comma-separated list of association ids. Space characters are not
	       allowed in the assoc_list. Default is all associations.

     -B, --batch-script
	       This option will print the batch script of job if  the  job  used
	       one. If the job didn't have a script 'NONE' is output.
	       NOTE: AccountingStoreFlags=job_script is required for this.
	       NOTE: Requesting specific job(s) with '-j' is required for this.

     -b, --brief
	       Displays  a  brief  listing consisting of JobID, State, and Exit-
	       Code.

     -M, --clusters=<cluster_list>
	       Displays the statistics only for the jobs started on the clusters
	       specified by the cluster_list operand, which is a comma-separated
	       list of clusters. Space characters are not allowed in  the  clus-
	       ter_list.   A  value  of 'all' will query to run on all clusters.
	       The default is current cluster you are executing the  sacct  com-
	       mand on or all clusters in the federation when executed on a fed-
	       erated cluster.	This option implicitly sets the --local option.

     -c, --completion
	       Use  job  completion data instead of job accounting. The JobComp-
	       Type parameter in the  slurm.conf  file	must  be  defined  to  a
	       non-none  option.  Does not support federated cluster information
	       (local data only).

     -C, --constraints=<constraint_list>
	       Comma  separated  list  to  filter  jobs  based	on   what   con-
	       straints/features  the  job  requested.	Multiple options will be
	       treated as 'and' not 'or', so the job would need all  constraints
	       specified to be returned not one or the other.

     --delimiter=<characters>
	       ASCII  characters used to separate the fields when specifying the
	       -p or -P options. The default delimiter is a '|'. This option  is
	       ignored if -p or -P options are not specified.

     -D, --duplicates
	       Allow  multiple	job  records  for the same job ID or SLUID to be
	       shown. By default, if multiple job records for the same job ID or
	       SLUID match the request, only the most recent one will be  shown.
	       Duplicate  records  can result from requeues, federation, resizes
	       or from jobs reaching the  MaxJobId  value  and	resetting.  Such
	       records	can  be  distinguished	by the Submit time stamp, by the
	       OriginalSLUID or by the SLUID fields.

     -E, --endtime=<end_time>
	       Select jobs in any state before the specified time. If states are
	       given with the -s option return jobs in this  state  before  this
	       period.	 See the DEFAULT TIME WINDOW section (below) for details
	       about how the default values for --starttime  and  --endtime  are
	       determined.

	       Valid time formats are:
	       HH:MM[:SS][AM|PM]
	       MMDD[YY][-HH:MM[:SS]]
	       MM.DD[.YY][-HH:MM[:SS]]
	       MM/DD[/YY][-HH:MM[:SS]]
	       YYYY-MM-DD[THH:MM[:SS]]
	       today, midnight, noon, elevenses (11 AM), fika (3 PM), teatime (4
	       PM)
	       now[{+|-}count[seconds(default)|minutes|hours|days|weeks]]

     --env-vars
	       This  option  will  print the running environment of a batch job,
	       otherwise 'NONE' is output.
	       NOTE: AccountingStoreFlags=job_env is required for this.
	       NOTE: Requesting specific job(s) with '-j' is required for this.

     --expand-patterns
	       Expand any filename patterns from in StdOut,  StdErr  and  StdIn.
	       Fields  that map to a range of values will use the first value of
	       the range. For example "%t" for task id will be replaced by "0".

     --federation
	       Show jobs from the federation if a member of one.

     -f, --file=<file>
	       Causes the sacct command to read job  accounting  data  from  the
	       named  file instead of the current Slurm job accounting log file.
	       Only applicable when running the jobcomp/filetxt plugin.  Setting
	       this flag implicitly enables the -c flag.

     -F, --flags=<flag_list>
	       Comma  separated  list  to filter jobs based on what various ways
	       the jobs were handled. Current flags are SchedSubmit,  SchedMain,
	       SchedBackfill  and  StartReceived. SchedSubmit, SchedMain, Sched-
	       Backfill describe the scheduler that started the job.

     -o, --format
	       Comma separated list of fields. (use "--helpformat" for a list of
	       available fields).

	       NOTE: When using the format option for listing various fields you
	       can put a %NUMBER  afterwards  to  specify  how	many  characters
	       should be printed.

	       e.g.  format=name%30 will print 30 characters of field name right
	       justified. A %-30 will print 30 characters left justified.

	       When set, the SACCT_FORMAT environment variable will override the
	       default format. For example:

	       SACCT_FORMAT="jobid,user,account,cluster"

     -g, --gid=, --group=<gid_or_group_list>
	       Displays the statistics only for the jobs started with the GID or
	       the GROUP specified by the gid_list or  the  group_list	operand,
	       which  is  a  comma-separated  list. Space characters are not al-
	       lowed.  Default is no restrictions.

     -h, --help
	       Displays a general help message.

     -e, --helpformat
	       Print a list of fields that can be specified  with  the	--format
	       option.

	       Fields available:

	       Account		   AdminComment        AllocCPUS	   AllocNodes
	       AllocTRES	   AssocID	       AveCPU		   AveCPUFreq
	       AveDiskRead	   AveDiskWrite        AvePages 	   AveRSS
	       AveVMSize	   BlockID	       Cluster		   Comment
	       Constraints	   ConsumedEnergy      ConsumedEnergyRaw   Container
	       CPUTime		   CPUTimeRAW	       DBIndex		   DerivedExitCode
	       Elapsed		   ElapsedRaw	       Eligible 	   End
	       Exclusive	   ExitCode	       Extra		   FailedNode
	       Flags		   GID		       Group		   JobID
	       JobIDRaw 	   JobName	       Layout		   Licenses
	       MaxDiskRead	   MaxDiskReadNode     MaxDiskReadTask	   MaxDiskWrite
	       MaxDiskWriteNode    MaxDiskWriteTask    MaxPages 	   MaxPagesNode
	       MaxPagesTask	   MaxRSS	       MaxRSSNode	   MaxRSSTask
	       MaxVMSize	   MaxVMSizeNode       MaxVMSizeTask	   McsLabel
	       MinCPU		   MinCPUNode	       MinCPUTask	   NCPUS
	       NNodes		   NodeList	       NTasks		   OriginalSLUID
	       OverSubscribe	   Partition	       Planned		   PlannedCPU
	       PlannedCPURAW	   Priority	       QOS		   QOSRAW
	       QOSREQ		   Reason	       ReqCPUFreq	   ReqCPUFreqGov
	       ReqCPUFreqMax	   ReqCPUFreqMin       ReqCPUS		   ReqMem
	       ReqNodes 	   ReqReservation      ReqTRES		   Reservation
	       ReservationId	   Restarts	       SegmentSize	   SLUID
	       Start		   State	       StdErr		   StdIn
	       StdOut		   Submit	       SubmitLine	   Suspended
	       SystemComment	   SystemCPU	       Timelimit	   TimelimitRaw
	       TotalCPU 	   TRESUsageInAve      TRESUsageInMax	   TRESUsageInMaxNode
	       TRESUsageInMaxTask  TRESUsageInMin      TRESUsageInMinNode  TRESUsageInMinTask
	       TRESUsageInTot	   TRESUsageOutAve     TRESUsageOutMax	   TRESUsageOutMaxNode
	       TRESUsageOutMaxTask TRESUsageOutMin     TRESUsageOutMinNode TRESUsageOutMinTask
	       TRESUsageOutTot	   UID		       User		   UserCPU
	       WCKey		   WCKeyID	       WorkDir

     NOTE:   When   using   with   Ave[RSS|VM]Size   or  their	values	in  TRE-
     SUsageIn[Ave|Tot]. They represent the average/total of the  highest  water-
     marks over all ranks in the step. When using sstat they represent the aver-
     age/total at the moment the command was run.

     NOTE:  TRESUsage*Min*  values  represent  the  lowest highwater mark in the
     step.

     NOTE: Availability of metrics rely on the jobacct_gather plugin  used.  For
     example  the  jobacct_gather/cgroup  in combination with cgroup/v2 does not
     provide Virtual Memory metrics due to limitations in the kernel cgroups in-
     terfaces and will show a 0 for the related fields.

     The section titled "Job Accounting Fields" describes these fields.

     -j, --jobs=<job[.step]>
	       Displays information about the specified job[.step]  or	list  of
	       job[.step]s.

	       The  job[.step]	parameter  is  a  comma-separated  list of jobs.
	       Space characters are not permitted in this list.
	       NOTE: A step id of 'batch' will display the information about the
	       batch step.
	       By default sacct shows only jobs with  Eligible	time,  but  with
	       this option the non-eligible will be also shown.
	       NOTE:  If  --state is also specified, as non-eligible are not PD,
	       then non-eligible jobs will not be displayed.   See  the  DEFAULT
	       TIME  WINDOW  section  (below)  for details about how this option
	       changes the default values for --starttime and --endtime.

     --json, --json=list, --json=<data_parser>
	       Dump job information as JSON using the default data_parser plugin
	       or explicit data_parser with parameters. Sorting  and  formatting
	       arguments will be ignored.

     --local   Show  only  jobs  local to this cluster. Ignore other clusters in
	       this federation (if any). Overrides --federation.

     -l, --long
	       Equivalent to specifying:

	       --format=jobid,jobidraw,jobname,partition,maxvmsize,maxvmsizen-
	       ode, maxvmsizetask,avevm-
	       size,maxrss,maxrssnode,maxrsstask,averss,maxpages, max-
	       pagesnode,maxpagestask,avepages,mincpu,mincpun-
	       ode,mincputask,avecpu,ntasks, alloccpus,elapsed,state,exit-
	       code,avecpufreq,reqcpufreqmin,reqcpufreqmax, reqcpufreqgov,re-
	       qmem,consumedenergy,maxdiskread,maxdiskreadnode,maxdiskreadtask,
	       avediskread,maxdiskwrite,maxdiskwritenode,maxdiskwrite-
	       task,avediskwrite, reqtres,alloctres,tresusageinave,tresusagein-
	       max, tresusageinmaxn,tresusageinmaxt,tresusageinmin,tresusagein-
	       minn,tresusageinmint, tresusageintot,tresusageoutmax,tresusage-
	       outmaxn, tresusageoutmaxt,tresusageoutave,tresusageouttot

     --name=<jobname_list>
	       Display jobs that have any of these name(s).

     -i, --nnodes=<min[-max]>
	       Return jobs that ran on the specified number of nodes.

     -I, --ncpus=<min[-max]>
	       Return jobs that ran on the specified number of cpus.

     --noconvert
	       Don't convert units from their original type (e.g. 2048M won't be
	       converted to 2G).

     -N, --nodelist=<node_list>
	       Display jobs that ran on any of these node(s). node_list can be a
	       ranged string.

	       NOTE: This is not reliable when nodes are  added  or  removed  to
	       Slurm while jobs are running. Only jobs that started in the spec-
	       ified time range (-S, -E) will be returned.

     -n, --noheader
	       No  heading will be added to the output. The default action is to
	       display a header.

     -p, --parsable
	       Output will be '|' delimited with a '|' at the end. See also  the
	       --delimiter option.

     -P, --parsable2
	       Output  will  be '|' delimited without a '|' at the end. See also
	       the --delimiter option.

     -r, --partition
	       Comma separated list of partitions to select jobs and  job  steps
	       from. The default is all partitions.

     -q, --qos
	       Only send data about jobs using these qos. Default is all.

     -R, --reason=<reason_list>
	       Comma  separated list to filter jobs based on what reason the job
	       wasn't scheduled outside resources/priority.

     -S, --starttime
	       Select jobs in any state after the  specified  time.  Default  is
	       00:00:00  of the current day, unless the '-s' or '-j' options are
	       used. If the '-s' option is used, then the default is  'now'.  If
	       states  are  given  with  the  '-s' option then only jobs in this
	       state at this time will be returned. If the '-j' option is  used,
	       then  the default time is Unix Epoch 0. See the DEFAULT TIME WIN-
	       DOW section (below) for details	about  how  default  values  for
	       --starttime and --endtime are determined.

	       Valid time formats are:
	       HH:MM[:SS][AM|PM]
	       MMDD[YY][-HH:MM[:SS]]
	       MM.DD[.YY][-HH:MM[:SS]]
	       MM/DD[/YY][-HH:MM[:SS]]
	       YYYY-MM-DD[THH:MM[:SS]]
	       today, midnight, noon, elevenses (11 AM), fika (3 PM), teatime (4
	       PM)
	       now[{+|-}count[seconds(default)|minutes|hours|days|weeks]]

     -s, --state=<state_list>
	       Selects	jobs  based on their state during the time period given.
	       Unless otherwise specified, the start and end time  will  be  the
	       current	time  when the --state option is specified and only cur-
	       rently running jobs can be displayed.  A start  and/or  end  time
	       must  be  specified  to view information about jobs not currently
	       running.  See the JOB STATE CODES section below	for  a	list  of
	       state  designators.   Multiple state names may be specified using
	       comma separators. Either the short or long form of the state name
	       may be used (e.g. CA or CANCELLED) and the name is case	insensi-
	       tive (i.e. ca and CA both work).

	       NOTE:  Note for a job to be selected in the PENDING state it must
	       have "EligibleTime" in the requested time interval  or  different
	       from  "Unknown". The "EligibleTime" is displayed by the "scontrol
	       show job" command. For example jobs submitted with  the	"--hold"
	       option  will  have "EligibleTime=Unknown" as they are pending in-
	       definitely.

	       NOTE: When specifying states and no start time is given	the  de-
	       fault  start  time is 'now'. This is only when -j is not used. If
	       -j is used the start time will default to 'Epoch'. In both  cases
	       if no end time is given it will default to 'now'. See the DEFAULT
	       TIME  WINDOW  section  (below)  for details about how this option
	       changes the default values for --starttime and --endtime.

     -K, --timelimit-max
	       Ignored by itself, but if timelimit_min is set this will  be  the
	       maximum timelimit of the range. Default is no restriction.

     -k, --timelimit-min
	       Only send data about jobs with this timelimit. If used with time-
	       limit_max  this	will be the minimum timelimit of the range.  De-
	       fault is no restriction.

     -T, --truncate
	       Truncate time. So if a job started before --starttime  the  start
	       time would be truncated to --starttime. The same for end time and
	       --endtime.

     -u, --uid=, --user=<uid_or_user_list>
	       Use  this  comma  separated  list of UIDs or user names to select
	       jobs to display. By default, the running user's UID is used.

     --units=[KMGTP]
	       Display values in specified  unit  type.  Takes	precedence  over
	       --noconvert option.

     --usage   Display a command usage summary.

     --use-local-uid
	       When  displaying  UID,  sacct  uses the UID stored in Slurm's ac-
	       counting database by default. Use this command to make Slurm  use
	       a  system  call to get the UID from the username. This option may
	       be useful in an environment with multiple clusters and one  data-
	       base where the UIDs aren't the same on all clusters.

     -v, --verbose
	       Primarily  for  debugging  purposes,  report the state of various
	       variables during processing.

     -V, --version
	       Print version.

     -W, --wckeys=<wckey_list>
	       Displays the statistics only for the jobs started on  the  wckeys
	       specified  by  the wckey_list operand, which is a comma-separated
	       list of wckey names. Space characters  are  not	allowed  in  the
	       wckey_list. Default is all wckeys.

     --whole-hetjob[=yes|no]
	       When querying and filtering heterogeneous jobs with --jobs, Slurm
	       will  default  to retrieving information about all the components
	       of the job if the  het_job_id  (leader  id)  is	selected.  If  a
	       non-leader  heterogeneous  job component id is selected then only
	       that component is retrieved by  default.  This  behavior  can  be
	       changed	by  using this option. If set to 'yes' (or no argument),
	       then information about all the components will  be  retrieved  no
	       matter  which  component is selected in the job filter. If set to
	       'no' then only the selected heterogeneous job  component(s)  will
	       be retrieved, even when selecting the leader.

     --yaml, --yaml=list, --yaml=<data_parser>
	       Dump job information as YAML using the default data_parser plugin
	       or  explicit  data_parser with parameters. Sorting and formatting
	       arguments will be ignored.

   Job Accounting Fields
     Descriptions of each field option can be found below.  Note that the  Ave*,
     Max*  and	Min*  accounting  fields look at the values for all the tasks of
     each step in a job and return the average, maximum or minimum values of the
     task for that job step. For example, for MaxRSS, the returned value is  the
     maximum  memory  consumption  seen  by  one  of  the tasks of the step, and
     MaxRSSTask shows which task it is.

	    ALL       Print all fields listed below.

	    Account   Account the job ran under.

	    AdminComment
		      A comment string on a job that must be set by an	adminis-
		      trator, the SlurmUser or root.

	    AllocCPUs
		      Count of allocated CPUs. Equivalent to NCPUS.

	    AllocNodes
		      Number  of  nodes allocated to the job/step.  0 if the job
		      is pending.

	    AllocTres
		      Trackable resources. These are the resources allocated  to
		      the  job/step  after  the job started running. For pending
		      jobs this should be blank.  For more details see	Account-
		      ingStorageTRES in slurm.conf.

		      NOTE:  When  a  generic  resource  is  configured with the
		      no_consume flag, the allocation will  be	printed  with  a
		      zero.

	    AssocID   Reference to the association of user, account and cluster.

	    AveCPU    Average (system + user) CPU time of all tasks in job.

	    AveCPUFreq
		      Average  weighted  CPU  frequency  of all tasks in job, in
		      kHz.

	    AveDiskRead
		      Average number of bytes read by all tasks in job.

	    AveDiskWrite
		      Average number of bytes written by all tasks in job.

	    AvePages  Average number of page faults of all tasks in job.

	    AveRSS    Average resident set size of all tasks in job.

	    AveVMSize
		      Average Virtual Memory size of all tasks in job.

	    BlockID   The name of the block to be used (used with Blue Gene sys-
		      tems).

	    Cluster   Cluster name.

	    Comment   The job's comment string when the AccountingStoreFlags pa-
		      rameter in the slurm.conf file contains 'job_comment'. The
		      Comment string can be modified by invoking sacctmgr modify
		      job or the specialized sjobexitmod command.

	    Constraints
		      Feature(s) the job requested as a constraint.

	    ConsumedEnergy
		      Total energy consumed by all tasks in a  job,  in  joules.
		      Value  may  include a unit prefix (K,M,G,T,P).  Note: Only
		      in the case of an exclusive job allocation does this value
		      reflect the job's real energy consumption.

	    ConsumedEnergyRaw
		      Total energy consumed by all tasks in a  job,  in  joules.
		      Note: Only in the case of an exclusive job allocation does
		      this value reflect the job's real energy consumption.

	    Container
		      Path to OCI Container Bundle requested.

	    CPUTime   Time  used  (Elapsed time * CPU count) by a job or step in
		      HH:MM:SS format.

	    CPUTimeRAW
		      Time used (Elapsed time * CPU count) by a job or	step  in
		      cpu-seconds.

	    DBIndex   Unique database index for entries in the job table.

	    DerivedExitCode
		      The  highest  exit  code	returned  by the job's job steps
		      (srun invocations). Following the colon is the signal that
		      caused the process to terminate if it was terminated by  a
		      signal.  The  DerivedExitCode  can be modified by invoking
		      sacctmgr modify job or the  specialized  sjobexitmod  com-
		      mand.

	    Elapsed   The job's elapsed time.

		      The format of this field's output is as follows:

		      [DD-[HH:]]MM:SS

		      as defined by the following:

		      DD	days

		      hh	hours

		      mm	minutes

		      ss	seconds

	    ElapsedRaw
		      The job's elapsed time in seconds.

	    Eligible  When the job became eligible to run. In the same format as
		      End.

	    End       Termination  time  of the job. The output is of the format
		      YYYY-MM-DDTHH:MM:SS,   unless    changed	  through    the
		      SLURM_TIME_FORMAT environment variable.

	    Exclusive
		      Indicates  whether the job has exclusive access to its al-
		      located resources.

		      NO     The job does not require exclusive  access  to  its
			     allocated resources.

		      NODE   The job is allocated all CPUs and GRES on all nodes
			     in the allocation and cannot share nodes with other
			     jobs. This corresponds to the --exclusive option.

		      USER   The  job  cannot share nodes with other jobs unless
			     they are from the same user.  This  corresponds  to
			     the --exclusive=user option.

		      MCS    The  job  cannot share nodes with other jobs unless
			     they are using the same MCS label. This corresponds
			     to the --exclusive=mcs option.

		      TOPO   The job cannot share a topology segment with  other
			     jobs.  This corresponds to the --exclusive=topo op-
			     tion.

		      NOTE: Partition and Global parameters can set this despite
		      job requests otherwise.

	    ExitCode  The exit code returned by the job script or salloc,  typi-
		      cally  as  set by the exit() function. Following the colon
		      is the signal that caused the process to terminate  if  it
		      was terminated by a signal.

	    Extra     The job's extra string when the AccountingStoreFlags para-
		      meter in the slurm.conf file contains 'job_extra'. The Ex-
		      tra string can be modified by invoking sacctmgr modify job
		      command.

	    FailedNode
		      The  name  of  the node whose failure caused the job to be
		      killed.

	    Flags     Job  flags.  Current  flags  are	SchedSubmit,  SchedMain,
		      SchedBackfill.

	    GID       The group identifier of the user who ran the job.

	    Group     The group name of the user who ran the job.

	    JobID     The identification number of the job or job step.

		      Regular jobs are in the form:

		      JobID[.JobStep]

		      Array jobs are in the form:

		      ArrayJobID_ArrayTaskID

		      Heterogeneous jobs are in the form:

		      HetJobID+HetJobOffset

		      When  printing  job arrays, performance of the command can
		      be measurably improved for systems with large  numbers  of
		      jobs  when  a single job ID is specified. By default, this
		      field size will be limited to 64 bytes. Use  the	environ-
		      ment  variable  SLURM_BITSTR_LEN	to  specify larger field
		      sizes.

	    JobIDRaw  The identification number of the job or job  step.  Prints
		      the JobID in the form JobID[.JobStep] for regular, hetero-
		      geneous and array jobs.

	    JobName   The  name of the job or job step. The slurm_accounting.log
		      file is a space delimited file. Because of this if a space
		      is used in the jobname an underscore  is	substituted  for
		      the  space  before the record is written to the accounting
		      file. So when the jobname is displayed by sacct  the  job-
		      name that had a space in it will now have an underscore in
		      place of the space.

	    Layout    What  the  layout  of a step was when it was running. This
		      can be used to give you an idea of which	node  ran  which
		      rank in your job.

	    MaxDiskRead
		      Maximum number of bytes read by all tasks in job.

	    MaxDiskReadNode
		      The node on which the maxdiskread occurred.

	    MaxDiskReadTask
		      The task ID where the maxdiskread occurred.

	    MaxDiskWrite
		      Maximum number of bytes written by all tasks in job.

	    MaxDiskWriteNode
		      The node on which the maxdiskwrite occurred.

	    MaxDiskWriteTask
		      The task ID where the maxdiskwrite occurred.

	    MaxPages  Maximum number of page faults of all tasks in job.

	    MaxPagesNode
		      The node on which the maxpages occurred.

	    MaxPagesTask
		      The task ID where the maxpages occurred.

	    MaxRSS    Maximum resident set size of all tasks in job.

	    MaxRSSNode
		      The node on which the maxrss occurred.

	    MaxRSSTask
		      The task ID where the maxrss occurred.

	    MaxVMSize
		      Maximum Virtual Memory size of all tasks in job.

	    MaxVMSizeNode
		      The node on which the maxvmsize occurred.

	    MaxVMSizeTask
		      The task ID where the maxvmsize occurred.

	    MCSLabel  Multi-Category  Security	(MCS)  label associated with the
		      job.  Added to a job when the MCSPlugin is enabled in  the
		      slurm.conf.

	    MinCPU    Minimum (system + user) CPU time of all tasks in job.

	    MinCPUNode
		      The node on which the mincpu occurred.

	    MinCPUTask
		      The task ID where the mincpu occurred.

	    NCPUS     Total  number  of CPUs allocated to the job. Equivalent to
		      AllocCPUS.

	    NNodes    Number of nodes in a job or step. If the job  is	running,
		      or  ran, this count will be the number allocated, else the
		      number will be the number requested.

	    NodeList  List of nodes in job/step.

	    NTasks    Total number of tasks in a job or step.

	    OriginalSLUID
		      The SLUID assigned when the job was first  submitted.  Re-
		      mains  constant  during the entire life of the job even if
		      it has been resized. It changes if the job is requeued  or
		      restarted.  It can be used to correlate runs of jobs which
		      have been resized. This is the SLUID used by command tools
		      during the runtime of the job.

	    OverSubscribe
		      Indicates whether the job can oversubscribe resources with
		      other jobs.

		      NO     The job cannot oversubscribe resources  with  other
			     jobs.

		      YES    The user requested that the job be able to oversub-
			     scribe  resources with other jobs. This corresponds
			     to the --oversubscribe option.

		      OK     The partition allows oversubscribing resources with
			     other jobs.

		      NOTE: Partition and Global parameters can set this despite
		      job requests otherwise.

	    Partition
		      Identifies the partition on which the job ran.

	    Planned   How much wall clock time was used as planned time for this
		      job. This is derived from how long a job was waiting  from
		      eligible	time to when it started or was cancelled. Format
		      is the same as Elapsed.

	    PlannedCPU
		      How many CPU seconds were used as planned  time  for  this
		      job. Format is the same as Elapsed.

	    PlannedCPURAW
		      How  many  CPU  seconds were used as planned time for this
		      job. Format is in processor seconds.

	    Priority  Slurm priority.

	    QOS       Name of Quality of Service.

	    QOSRAW    Numeric id of Quality of Service.

	    QOSREQ    List of Quality of Services requested by the job.

	    Reason    The last reason a job was blocked from running  for  some-
		      thing other than Priority or Resources. This will be saved
		      in the database even if the job ran to completion.

	    ReqCPUFreq
		      Requested  CPU frequency for the step, in kHz.  Note: This
		      value applies only to a job step. No value is reported for
		      the job.

	    ReqCPUFreqGov
		      Requested CPU frequency governor for  the  step,	in  kHz.
		      Note:  This  value applies only to a job step. No value is
		      reported for the job.

	    ReqCPUFreqMax
		      Maximum requested CPU frequency  for  the  step,	in  kHz.
		      Note:  This  value applies only to a job step. No value is
		      reported for the job.

	    ReqCPUFreqMin
		      Minimum requested CPU frequency  for  the  step,	in  kHz.
		      Note:  This  value applies only to a job step. No value is
		      reported for the job.

	    ReqCPUS   Number of requested CPUs.

	    ReqMem    Minimum required memory for the job. It may have a  letter
		      appended	to  it	indicating units (M for megabytes, G for
		      gigabytes, etc.).  Note: This value is only from	the  job
		      allocation, not the step.

	    ReqNodes  Requested minimum Node count for the job/step.

	    ReqTres   Trackable resources. These are the minimum resource counts
		      requested  by  the  job/step at submission time.	For more
		      details see AccountingStorageTRES in slurm.conf.

	    ReqReservation
		      Comma separated list of reservation names requested by the
		      job.

	    Reservation
		      Reservation Name.

	    ReservationId
		      Reservation Id.

	    Restarts  How many times this job has been requeued/restarted.

	    SegmentSize
		      When a block topology is used, this is  the  size  of  the
		      segments that will be used to create the job allocation.

	    SLUID     A  unique identifier for a specific run of a job. Unlike a
		      job  ID,	the  SLUID  changes  each  time  a  job  is  re-
		      queued/restarted/resized,  allowing  different runs of the
		      same job to be distinguished. Previous runs of the job can
		      be shown with the -D/--duplicates option. SLUIDs are glob-
		      ally unique across the accounting system.

	    Start     Initiation time of the job. In the same format as End.

	    State     Displays the job status, or  state.   See  the  JOB  STATE
		      CODES section below for a list of possible states.

		      If  more	information  is  available on the job state than
		      will fit into the current field width  (for  example,  the
		      UID  that CANCELLED a job) the state will be followed by a
		      "+". You can increase the size of the displayed state  us-
		      ing the "%NUMBER" format modifier described earlier.

		      NOTE:  The  RUNNING  state  will	return suspended jobs as
		      well. In order to print suspended jobs  you  must  request
		      SUSPENDED at a different call from RUNNING.

		      NOTE:  The  RUNNING  state  will return any jobs completed
		      (cancelled or otherwise) in the time period  requested  as
		      the job was also RUNNING during that time. If you are only
		      looking  for  jobs that finished, please choose the appro-
		      priate state(s) without the RUNNING state.

	    StdErr    Display the  "filename  pattern"	for  stderr  redirection
		      specified  in  a	job or in job steps. Path wildcards will
		      not be substituted and will be shown  as	defined  in  the
		      original batch submission.

	    StdIn     Display the "filename pattern" for stdin redirection spec-
		      ified in a job or in job steps. Path wildcards will not be
		      substituted  and	will be shown as defined in the original
		      batch submission.

	    StdOut    Display the  "filename  pattern"	for  stdout  redirection
		      specified  in  a	job or in job steps. Path wildcards will
		      not be substituted and will be shown  as	defined  in  the
		      original batch submission.

	    Submit    The time the job was submitted. In the same format as End.

		      NOTE:  If  a job is requeued, the submit time is reset. To
		      obtain the original submit time it is necessary to use the
		      -D/--duplicates option to display  all  duplicate  entries
		      for a job.

	    SubmitLine
		      The full command issued to submit the job.

	    Suspended
		      The amount of time a job or job step was suspended. Format
		      is the same as Elapsed.

	    SystemComment
		      The  job's  comment string that is typically set by a plu-
		      gin.  Can only be modified by a Slurm administrator.

	    SystemCPU
		      The amount of system CPU time used by the job or job step.
		      Format is the same as Elapsed.

		      NOTE: See the note for TotalCPU for information about  how
		      canceled jobs are handled.

	    Timelimit
		      What  the timelimit was/is for the job or job step. Format
		      is the same as Elapsed, but two additional special  values
		      can be displayed:

		      Partition_limit
			     Indicates	that the job did not have its time limit
			     set and was not yet subjected to a  partition  Max-
			     Time  (i.e. job is pending). You can define the De-
			     faultTime on the partition  to  avoid  seeing  this
			     value.

		      UNLIMITED
			     Indicates	the  job  did  not have a time limit de-
			     fined.

	    TimelimitRaw
		      What the timelimit was/is for the job or job step.  Format
		      is in number of minutes. NOTE: See TimeLimit description.

	    TotalCPU  The  sum of the SystemCPU and UserCPU time used by the job
		      or job step.  The total CPU time of the job may exceed the
		      job's elapsed time for  jobs  that  include  multiple  job
		      steps. Format is the same as Elapsed.

		      NOTE:  For  the steps interrupted by signal (e.g. scancel,
		      job timeout) TotalCPU provides a	measure  of  the  task's
		      parent  process  and  may  not  include  CPU time of child
		      processes.  This is  a  result  of  wait3  resource  usage
		      (getrusage)  internals.  For processes completing in regu-
		      lar way all the descendant processes (forks and execs) re-
		      sources are included. However, if the processes are killed
		      the result may differ between proctrack plugins  and  end-
		      user applications.

	    TresUsageInAve
		      Tres  average usage in by all tasks in job.  NOTE: If cor-
		      responding TresUsageInMaxTask is -1  the	metric	is  node
		      centric instead of task.

	    TresUsageInMax
		      Tres  maximum usage in by all tasks in job.  NOTE: If cor-
		      responding TresUsageInMaxTask is -1  the	metric	is  node
		      centric instead of task.

	    TresUsageInMaxNode
		      Node for which each maximum TRES usage out occurred.

	    TresUsageInMaxTask
		      Task for which each maximum TRES usage out occurred.

	    TresUsageInMin
		      Tres  minimum usage in by all tasks in job.  NOTE: If cor-
		      responding TresUsageInMinTask is -1  the	metric	is  node
		      centric instead of task.

	    TresUsageInMinNode
		      Node for which each minimum TRES usage out occurred.

	    TresUsageInMinTask
		      Task for which each minimum TRES usage out occurred.

	    TresUsageInTot
		      Tres total usage in by all tasks in job.

	    TresUsageOutAve
		      Tres average usage out by all tasks in job.  NOTE: If cor-
		      responding  TresUsageOutMaxTask  is  -1 the metric is node
		      centric instead of task.

	    TresUsageOutMax
		      Tres maximum usage out by all tasks in job.  NOTE: If cor-
		      responding TresUsageOutMaxTask is -1 the	metric	is  node
		      centric instead of task.

	    TresUsageOutMaxNode
		      Node for which each maximum TRES usage out occurred.

	    TresUsageOutMaxTask
		      Task for which each maximum TRES usage out occurred.

	    TresUsageOutMin
		      Tres minimum usage out by all tasks in job.

	    TresUsageOutMinNode
		      Node for which each minimum TRES usage out occurred.

	    TresUsageOutMinTask
		      Task for which each minimum TRES usage out occurred.

	    TresUsageOutTot
		      Tres total usage out by all tasks in job.

	    UID       The user identifier of the user who ran the job.

	    User      The user name of the user who ran the job.

	    UserCPU   The  amount  of user CPU time used by the job or job step.
		      Format is the same as Elapsed.

		      NOTE: See the note for TotalCPU for information about  how
		      canceled jobs are handled.

	    WCKey     Workload	 Characterization   Key.   Arbitrary  string for
		      grouping orthogonal accounts together.

	    WCKeyID   Reference to the wckey.

	    WorkDir   The directory used by the job to execute commands.

JOB STATE CODES
     The following states are recognized by  sacct.  A	full  list  of	possible
     states is available at <https://slurm.schedmd.com/job_state_codes.html>.

     BF  BOOT_FAIL	 Job  terminated due to launch failure, typically due to
			 a hardware failure (e.g. unable to  boot  the	node  or
			 block and the job can not be requeued).

     CA  CANCELLED	 Job  was explicitly cancelled by the user or system ad-
			 ministrator.  The job may or may not have  been  initi-
			 ated.

     CD  COMPLETED	 Job  has  terminated all processes on all nodes with an
			 exit code of zero.

     DL  DEADLINE	 Job terminated on deadline.

     F	 FAILED 	 Job terminated with non-zero exit code or other failure
			 condition.

     NF  NODE_FAIL	 Job terminated due to failure of one or more  allocated
			 nodes.

     OOM OUT_OF_MEMORY	 Job experienced out of memory error.

     PD  PENDING	 Job is awaiting resource allocation.

     PR  PREEMPTED	 Job terminated due to preemption.

     R	 RUNNING	 Job currently has an allocation.

     RQ  REQUEUED	 Job was requeued.

     RS  RESIZING	 Job is about to change size.

     RV  REVOKED	 Sibling  was  removed from cluster due to other cluster
			 starting the job.

     S	 SUSPENDED	 Job has an allocation, but execution has been suspended
			 and CPUs have been released for other jobs.

     TO  TIMEOUT	 Job terminated upon reaching its time limit.

DEFAULT TIME WINDOW
     The options --starttime and --endtime define the time window between  which
     sacct  is	going  to search. For historical and practical reasons their de-
     fault values (i.e. the default  time  window)  depends  on  other	options:
     --jobs and --state.

     Depending	on if --jobs and/or --state are specified, the default values of
     --starttime  and --endtime options are:

     WITHOUT EITHER --jobs NOR --state specified:
     --starttime defaults to Midnight.
     --endtime defaults to Now.

     WITH --jobs AND WITHOUT --state specified:
     --starttime defaults to Epoch 0.
     --endtime defaults to Now.

     WITHOUT --jobs AND WITH --state specified:
     --starttime defaults to Now.
     --endtime defaults to --starttime and to Now if --starttime is  not  speci-
     fied.

     WITH BOTH --jobs AND --state specified:
     --starttime defaults to Epoch 0.
     --endtime	defaults  to  --starttime or to Now if --starttime is not speci-
     fied.

     NOTE: With -v/--verbose a message about the actual time window  in  use  is
     shown.

PERFORMANCE
     Executing	sacct sends a remote procedure call to slurmdbd. If enough calls
     from sacct or other Slurm client commands that send remote procedure  calls
     to  the  slurmdbd daemon come in at once, it can result in a degradation of
     performance of the slurmdbd daemon, possibly resulting in a denial of  ser-
     vice.

     Do  not run sacct or other Slurm client commands that send remote procedure
     calls to slurmdbd from loops in shell scripts  or	other  programs.  Ensure
     that  programs limit calls to sacct to the minimum necessary for the infor-
     mation you are trying to gather.

ENVIRONMENT VARIABLES
     Some sacct options may be set via environment variables. These  environment
     variables, along with their corresponding options, are listed below. (Note:
     Command line options will always override these settings.)

     SACCT_FEDERATION	 Same as --federation

     SACCT_FORMAT	 Allows you to define the columns to display in the out-
			 put.  Same as --format

     SACCT_LOCAL	 Same as --local

     SLURM_BITSTR_LEN	 Specifies  the  string  length to be used for holding a
			 job array's task ID expression. The default value is 64
			 bytes. A value of 0 will print the full expression with
			 any length required. Larger values may adversely impact
			 the application performance.

     SLURM_CONF 	 The location of the Slurm configuration file.

     SLURM_DEBUG_FLAGS	 Specify debug flags for sacct to use. See DebugFlags in
			 the slurm.conf(5) man page for a full	list  of  flags.
			 The environment variable takes precedence over the set-
			 ting in the slurm.conf.

     SLURM_JSON 	 Control JSON serialization:

			 compact
				Output JSON as compact as possible.

			 pretty
				Output	JSON  in  pretty  format to make it more
				readable.

     SLURM_TIME_FORMAT	 Specify the format used to report time stamps. A  value
			 of standard, the default value, generates output in the
			 form  "year-month-dateThour:minute:second".  A value of
			 relative returns only "hour:minute:second" if the  cur-
			 rent  day.   For  other  dates  in  the current year it
			 prints the "hour:minute" preceded by  "Tomorr"  (tomor-
			 row), "Ystday" (yesterday), the name of the day for the
			 coming  week  (e.g.  "Mon", "Tue", etc.), otherwise the
			 date (e.g. "25 Apr").	For other  years  it  returns  a
			 date  month  and  year  without  a  time  (e.g.  "6 Jun
			 2012"). All of the time stamps use a 24 hour format.

			 A valid strftime() format can also  be  specified.  For
			 example,  a value of "%a %T" will report the day of the
			 week and a time stamp (e.g. "Mon 12:34:56").

     SLURM_YAML 	 Control YAML serialization:

			 compact Output YAML as compact as possible.

			 pretty Output YAML in pretty format to make it more
			 readable.

EXAMPLES
     This example illustrates the default invocation of the sacct command:

	    # sacct
	    Jobid      Jobname	  Partition    Account AllocCPUS State	   ExitCode
	    ---------- ---------- ---------- ---------- ---------- ---------- --------
	    2	       script01   srun	     acct1		 1 RUNNING	     0
	    3	       script02   srun	     acct1		 1 RUNNING	     0
	    4	       endscript  srun	     acct1		 1 RUNNING	     0
	    4.0 		  srun	     acct1		 1 COMPLETED	     0

     This example shows the same job accounting information with the  brief  op-
     tion.

	    # sacct --brief
		 Jobid	   State  ExitCode
	    ---------- ---------- --------
	    2	       RUNNING		 0
	    3	       RUNNING		 0
	    4	       RUNNING		 0
	    4.0        COMPLETED	 0

	    # sacct --allocations
	    Jobid      Jobname	  Partition Account    AllocCPUS  State     ExitCode
	    ---------- ---------- ---------- ---------- ------- ---------- --------
	    3	       sja_init   andy	     acct1	      1 COMPLETED	  0
	    4	       sjaload	  andy	     acct1	      2 COMPLETED	  0
	    5	       sja_scr1   andy	     acct1	      1 COMPLETED	  0
	    6	       sja_scr2   andy	     acct1	     18 COMPLETED	  2
	    7	       sja_scr3   andy	     acct1	     18 COMPLETED	  0
	    8	       sja_scr5   andy	     acct1	      2 COMPLETED	  0
	    9	       sja_scr7   andy	     acct1	     90 COMPLETED	  1
	    10	       endscript  andy	     acct1	    186 COMPLETED	  0

     This  example demonstrates the ability to customize the output of the sacct
     command. The fields are displayed in the order designated	on  the  command
     line.

	    # sacct --format=jobid,elapsed,ncpus,ntasks,state
		 Jobid	  Elapsed      Ncpus   Ntasks	  State
	    ---------- ---------- ---------- -------- ----------
	    3		 00:01:30	   2	    1 COMPLETED
	    3.0 	 00:01:30	   2	    1 COMPLETED
	    4		 00:00:00	   2	    2 COMPLETED
	    4.0 	 00:00:01	   2	    2 COMPLETED
	    5		 00:01:23	   2	    1 COMPLETED
	    5.0 	 00:01:31	   2	    1 COMPLETED

     This  example  demonstrates the use of the -T (--truncate) option when used
     with -S (--starttime) and -E (--endtime). When the -T option is  used,  the
     start time of the job will be the specified -S value if the job was started
     before the specified time, otherwise the time will be the job's start time.
     The  end  time  will  be  the specified -E option if the job ends after the
     specified time, otherwise it will be the jobs end time.

     Without -T (normal operation) sacct output would be like this.

	    # sacct -S2014-07-03-11:40 -E2014-07-03-12:00 -X -ojobid,start,end,state
		JobID		      Start		     End	State
	    --------- --------------------- -------------------- ------------
	    2	      2014-07-03T11:33:16   2014-07-03T11:59:01   COMPLETED
	    3	      2014-07-03T11:35:21   Unknown		  RUNNING
	    4	      2014-07-03T11:35:21   2014-07-03T11:45:21   COMPLETED
	    5	      2014-07-03T11:41:01   Unknown		  RUNNING

     By adding the -T option the job's start and end times are truncated to  re-
     flect  only  the  time requested. If a job started after the start time re-
     quested or finished before the end time requested those times are	not  al-
     tered.  The -T option is useful when determining exact run times during any
     given period.

	    # sacct -T -S2014-07-03-11:40 -E2014-07-03-12:00 -X -ojobid,jobname,user,start,end,state
		JobID		      Start		     End	State
	    --------- --------------------- -------------------- ------------
	    2	      2014-07-03T11:40:00   2014-07-03T11:59:01   COMPLETED
	    3	      2014-07-03T11:40:00   2014-07-03T12:00:00   RUNNING
	    4	      2014-07-03T11:40:00   2014-07-03T11:45:21   COMPLETED
	    5	      2014-07-03T11:41:01   2014-07-03T12:00:00   RUNNING

     NOTE: If no -s (--state) option is given sacct will display  eligible  jobs
     during  the  specified  period  of time, otherwise it will return jobs that
     were in the state requested during that period of time.

     This example demonstrates the differences running sacct  with  and  without
     the  --state flag for the same time period. Without the --state option, all
     eligible jobs in that time period are shown.

	    # sacct -S11:20:00 -E11:25:00 -X -ojobid,start,end,state
		   JobID	       Start		     End      State
	    ------------ ------------------- ------------------- ----------
	    2955		    11:15:12		11:20:12  COMPLETED
	    2956		    11:20:13		11:25:13  COMPLETED

     With the --state=pending option, only job 2956 will be shown because it had
     a dependency on 2955 and was still PENDING from 11:20:00 until  it  started
     at  11:21:13.  Note  that	even though we requested PENDING jobs, the State
     shows as COMPLETED because that is the current State of the job.

	    # sacct --state=pending -S11:20:00 -E11:25:00 -X -ojobid,start,end,state
		   JobID	       Start		     End      State
	    ------------ ------------------- ------------------- ----------
	    2956		    11:20:13		11:25:13  COMPLETED

COPYING
     Copyright (C) 2005-2007 Copyright Hewlett-Packard Development Company L.P.
     Copyright (C) 2008-2010 Lawrence Livermore National Security.  Produced  at
     Lawrence Livermore National Laboratory (cf, DISCLAIMER).
     Copyright (C) 2010-2022 SchedMD LLC.

     This  file  is  part of Slurm, a resource management program.  For details,
     see <https://slurm.schedmd.com/>.

     Slurm is free software; you can redistribute it and/or modify it under  the
     terms  of	the GNU General Public License as published by the Free Software
     Foundation; either version 2 of the License, or (at your option) any  later
     version.

     Slurm  is	distributed  in the hope that it will be useful, but WITHOUT ANY
     WARRANTY; without even the implied warranty of MERCHANTABILITY  or  FITNESS
     FOR  A  PARTICULAR PURPOSE. See the GNU General Public License for more de-
     tails.

FILES
     /etc/slurm.conf
	       Entries to this file enable job accounting and designate the  job
	       accounting log file that collects system job accounting.

     /var/log/slurm_accounting.log
	       The  default  job  accounting log file.	By default, this file is
	       set to read and write permission for root only.

SEE ALSO
     sstat(1), ps (1), srun(1), squeue(1), getrusage (2), time (2)

Slurm 26.05			 Slurm Commands 			sacct(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=sacct&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help