    .SH "DESCRIPTION"
    \fBsacctmgr\fR is used to view or modify Slurm account information.
    The account information is maintained within a database with the interface
    being provided by \fBslurmdbd\fR (Slurm Database daemon).
    This database can serve as a central storehouse of user and
    computer information for multiple computers at a single site.
    Slurm account information is recorded based upon four parameters
    that form what is referred to as an \fIassociation\fR.
    These parameters are \fIuser\fR, \fIcluster\fR, \fIpartition\fR, and
    \fIaccount\fR. \fIuser\fR is the login name.
    \fIcluster\fR is the name of a Slurm managed cluster as specified by
    the \fIClusterName\fR parameter in the \fIslurm.conf\fR configuration file.
    \fIpartition\fR is the name of a Slurm partition on that cluster.
    \fIaccount\fR is the bank account for a job.
    The intended mode of operation is to initiate the \fBsacctmgr\fR command,
    add, delete, modify, and/or list \fIassociation\fR records then
    commit the changes and exit.

    .TP "7"
    \f3Note: \fP\c
    The content's of Slurm's database are maintained in lower case. This may
    result in some \f3sacctmgr\fP output differing from that of other Slurm
    commands.

    .SH "OPTIONS"

    .TP
    \fB\-h\fR, \fB\-\-help\fR
    Print a help message describing the usage of \fBsacctmgr\fR.
    This is equivalent to the \fBhelp\fR command.

    .TP
    \fB\-i\fR, \fB\-\-immediate\fR
    commit changes immediately without asking for confirmation.

    .TP
    \fB\-n\fR, \fB\-\-noheader\fR
    No header will be added to the beginning of the output.

    .TP
    \fB\-p\fR, \fB\-\-parsable\fR
    Output will be '|' delimited with a '|' at the end.

    .TP
    \fB\-P\fR, \fB\-\-parsable2\fR
    Output will be '|' delimited without a '|' at the end.

    .TP
    \fB\-Q\fR, \fB\-\-quiet\fR
    Print no messages other than error messages.
    This is equivalent to the \fBquiet\fR command.
    This is equivalent to the \fBverbose\fR command.

    .TP
    \fB\-V\fR , \fB\-\-version\fR
    Display version number.
    This is equivalent to the \fBversion\fR command.

    .SH "COMMANDS"

    .TP
    \fBadd\fR <\fIENTITY\fR> <\fISPECS\fR>
    Add an entity.
    Identical to the \fBcreate\fR command.

    .TP
    \fBassociations\fR
    Use with show or list to display associations with the entity.

    .TP
    \fBclear\fR stats
    Clear the server statistics.

    .TP
    \fBcreate\fR <\fIENTITY\fR> <\fISPECS\fR>
    Add an entity.
    Identical to the \fBadd\fR command.

    .TP
    \fBdelete\fR <\fIENTITY\fR> where <\fISPECS\fR>
    Delete the specified entities.

    .TP
    \fBdump\fR <\fIENTITY\fR> <\fIFile=FILENAME\fR>
    Dump cluster data to the specified file. If the filename is not specified
    it uses clustername.cfg filename by default.

    .TP
    \fBhelp\fP
    Display a description of sacctmgr options and commands.

    .TP
    \fBlist\fR <\fIENTITY\fR> [<\fISPECS\fR>]
    Display information about the specified entity.
    By default, all entries are displayed, you can narrow results by
    specifying SPECS in your query.
    Identical to the \fBshow\fR command.

    .TP
    \fBload\fR <\fIFILENAME\fR>
    Load cluster data from the specified file. This is a configuration file
    generated by running the sacctmgr dump command. This command does
    not load archive data, see the sacctmgr archive load option instead.
    \fBshow\fR <\fIENTITY\fR> [<\fISPECS\fR>]
    Display information about the specified entity.
    By default, all entries are displayed, you can narrow results by
    specifying SPECS in your query.
    Identical to the \fBlist\fR command.

    .TP
    \fBshutdown\fR
    Shutdown the server.

    .TP
    \fBversion\fP
    Display the version number of sacctmgr.

    .SH "INTERACTIVE COMMANDS"

    \fBNOTE:\fP
    All commands listed below can be used in the interactive mode, but \fINOT\fP
    on the initial command line.

    .TP
    \fBexit\fP
    Terminate sacctmgr interactive mode.
    Identical to the \fBquit\fR command.

    .TP
    \fBquiet\fP
    Print no messages other than error messages.

    .TP
    \fBquit\fP
    Terminate the execution of sacctmgr interactive mode.
    Identical to the \fBexit\fR command.

    .TP
    \fBverbose\fP
    Enable detailed logging.
    This includes time\-stamps on data structures, record counts, etc.
    This is an independent command with no options meant for use in
    interactive mode.

    .TP
    \fB!!\fP
    Repeat the last command.

    .SH "ENTITIES"

    .TP
    \fIaccount\fP
    A bank account, typically specified at job submit time using the
    \fI\-\-account=\fR option.
    These may be arranged in a hierarchical fashion, for example
    The \fIClusterName\fR parameter in the \fIslurm.conf\fR configuration
    file, used to differentiate accounts on different machines.

    .TP
    \fIconfiguration\fP
    Used only with the \fIlist\fR or \fIshow\fR command to report current
    system configuration.

    .TP
    \fIcoordinator\fR
    A special privileged user usually an account manager or such that can
    add users or sub accounts to the account they are coordinator over.
    This should be a trusted person since they can change limits on
    account and user associations inside their realm.

    .TP
    \fIevent\fR
    Events like downed or draining nodes on clusters.

    .TP
    \fIfederation\fP
    A group of clusters that work together to schedule jobs.

    .TP
    \fIjob\fR
    Used to modify specific fields of a job: Derived Exit Code and
    the Comment String.

    .TP
    \fIqos\fR
    Quality of Service.

    .TP
    \fIResource\fP
    Software resources for the system. Those are software licenses shared
    among clusters.

    .TP
    \fIRunawayJobs\fR
    Used only with the \fIlist\fR or \fIshow\fR command to report current
    jobs that have been orphanded on the local cluster and are now
    runaway.  If there are jobs in this state it will also give you an
    option to "fix" them.
    NOTE: You must have an \fBAdminLevel\fR of at least \fBOperator\fR to preform
    this.

    .TP
    \fIstats\fR
    Used with \fBlist\fR or \fBshow\fR command to view server statistics.
    Accepts optional argument of \fBave_time\fR or \fBtotal_time\fR to sort on those
    fields. By default, sorts on increasing RPC count field.

    being considered for being allocated resources.
    If starting a job would cause any of its group limit to be exceeded,
    that job will not be considered for scheduling even if that job might preempt
    other jobs which would release sufficient group resources for the pending
    job to be initiated.

    .TP
    \fIDefaultQOS\fP=<default qos>
    The default QOS this association and its children should have.
    This is overridden if set directly on a user.
    To clear a previously set value use the modify command with a new value of \-1.

    .TP
    \fIFairshare\fP=<fairshare number | parent>
    Number used in conjunction with other accounts to determine job
    priority. Can also be the string \fIparent\fR, when used on a user
    this means that the parent association is used for fairshare.  If
    Fairshare=parent is set on an account, that account's children will be
    effectively reparented for fairshare calculations to the first parent
    of their parent that is not Fairshare=parent.  Limits remain the same,
    only it's fairshare value is affected.  To clear a previously set
    value use the modify command with a new value of \-1.

    .TP
    \fIGraceTime\fP=<preemption grace time in seconds>
    Specifies, in units of seconds, the preemption grace time
    to be extended to a job which has been selected for preemption.
    The default value is zero, no preemption grace time is allowed on
    this QOS.

    NOTE: This value is only meaningful for QOS PreemptMode=CANCEL.

    .TP
    \fIGrpTRESMins\fP=<TRES=max TRES minutes,...>
    The total number of TRES minutes that can possibly be used by past,
    present and future jobs running from this association and its children.
    To clear a previously set value use the modify command with a new
    value of \-1 for each TRES id.

    NOTE: This limit is not enforced if set on the root
    association of a cluster.  So even though it may appear in sacctmgr
    output, it will not be enforced.

    ALSO NOTE: This limit only applies when using the Priority Multifactor
    plugin.  The time is decayed using the value of PriorityDecayHalfLife
    or PriorityUsageResetPeriod as set in the slurm.conf.  When this limit
    is reached all associated jobs running will be killed and all future
    jobs submitted with associations in the group will be delayed until
    they are able to run inside the limit.

    .TP
    \fIGrpTRESRunMins\fP=<TRES=max TRES run minutes,...>
    Resource plugin.

    .TP
    \fIGrpJobs\fP=<max jobs>
    Maximum number of running jobs in aggregate for
    this association and all associations which are children of this association.
    To clear a previously set value use the modify command with a new value of \-1.

    .TP
    \fIGrpJobsAccrue\fP=<max jobs>
    Maximum number of pending jobs in aggregate able to accrue age priority for this
    association and all associations which are children of this association.
    To clear a previously set value use the modify command with a new value of \-1.

    .TP
    \fIGrpSubmitJobs\fP=<max jobs>
    Maximum number of jobs which can be in a pending or running state at any time
    in aggregate for this association and all associations which are children of
    this association.
    To clear a previously set value use the modify command with a new value of \-1.

    .TP
    \fIGrpWall\fP=<max wall>
    Maximum wall clock time running jobs are able to be allocated in aggregate for
    this association and all associations which are children of this association.
    To clear a previously set value use the modify command with a new value of \-1.

    NOTE: This limit is not enforced if set on the root association of a
    cluster.  So even though it may appear in sacctmgr output, it will not
    be enforced.

    ALSO NOTE: This limit only applies when using the Priority Multifactor
    plugin.  The time is decayed using the value of PriorityDecayHalfLife
    or PriorityUsageResetPeriod as set in the slurm.conf.  When this limit
    is reached all associated jobs running will be killed and all future
    jobs submitted with associations in the group will be delayed until
    they are able to run inside the limit.

    .TP
    \fIMaxTRESMins\fP=<max TRES minutes>
    Maximum number of TRES minutes each job is able to use in this association.
    This is overridden if set directly on a user.
    Default is the cluster's limit.
    To clear a previously set value use the modify command with a new
    value of \-1 for each TRES id.

    .TP
    \fIMaxTRES\fP=<max TRES>
    Maximum number of TRES each job is able to use in this association.
    This is overridden if set directly on a user.
    Default is the cluster's limit.
    To clear a previously set value use the modify command with a new
    \fIMaxJobsAccrue\fP=<max jobs>
    Maximum number of pending jobs able to accrue age priority at any given time for
    the given association.
    This is overridden if set directly on a user.
    Default is the cluster's limit.
    To clear a previously set value use the modify command with a new value of \-1.

    .TP
    \fIMaxSubmitJobs\fP=<max jobs>
    Maximum number of jobs which can this association can have in a
    pending or running state at any time.
    Default is the cluster's limit.
    To clear a previously set value use the modify command with a new value of \-1.

    .TP
    \fIMaxWall\fP=<max wall>
    Maximum wall clock time each job is able to use in this association.
    This is overridden if set directly on a user.
    Default is the cluster's limit.
    sacctmgr show assoc format=cluster,account,user,qos
    .br
       Cluster    Account  QOS
    .br
      ---------   -------- -----
    .br
    .br
    ->sacctmgr add account banana parent=G
    .br

    .br
    ->sacctmgr show assoc format=cluster,account,qos
    .br
       Cluster    Account   QOS
    .br
      ---------  --------  -----
    .br
      zebra       root       normal
    .br
      zebra       root       normal
    .br
      zebra          g       expedite
    .br
      zebra     banana       expedite
    .br
      zebra         g1       expedite,normal
    .br

    An example of listing trackable resources
    .br

    .br
    ->sacctmgr show tres
    .br
          Type              Name      ID
    .br
    ---------- ----------------- --------
    .br
           cpu                          1
    .br
           mem                          2
    .br
        energy                          3
    .br
          node                          4
    .br
       billing                          5
    .br
          gres         gpu:tesla     1001
    .br
       license               vcs     1002
    .br
            bb              cray     1003
    .br

    .ec

    .SH "COPYING"
    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
    FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
    details.

    .SH "SEE ALSO"
    \fBslurm.conf\fR(5),
    \fBslurmdbd\fR(8)