    \fBacct_gather.conf\fP is a UTF8 formatted file which defines parameters used
    by Slurm's acct_gather related plugins.
    The file location can be modified at system build time using the
    DEFAULT_SLURM_CONF parameter or at execution time by setting the SLURM_CONF
    environment variable. The file will always be located in the
    same directory as the \fBslurm.conf\fP file.
    .LP
    Parameter names are case insensitive but parameter values are case sensitive.
    Any text following a "#" in the configuration file is treated
    as a comment through the end of that line.
    The size of each line in the file is limited to 1024 characters.
    .LP
    Changes to the configuration file take effect upon restart of
    the Slurm daemons.

    .LP
    The following \fBacct_gather.conf\fR parameters are defined to control the
    general behavior of various plugins in Slurm.

    .LP
    The \fBacct_gather.conf\fR file is different than other Slurm .conf files. Each
    plugin defines which options are available. Each plugin to be loaded must be
    specified in the \fBslurm.conf\fR under the following configuration entries:
    .LP
    \(bu AcctGatherEnergyType (plugin type=\fIacct_gather_energy\fR)
    .br
    \(bu AcctGatherInterconnectType (plugin type=\fIacct_gather_interconnect\fR)
    .br
    \(bu AcctGatherFilesystemType (plugin type=\fIacct_gather_filesystem\fR)
    .br
    \(bu AcctGatherProfileType (plugin type=\fIacct_gather_profile\fR)

    .LP
    If the respective plugin for an option is not loaded then that option will
    appear to be unknown by Slurm and silently ignored. If you decide to change
    plugin types you may also have to change the related options.

    .SH acct_gather_energy/IPMI
    Required entry in slurm.conf:
    .RS
    .nf
    AcctGatherEnergyType=acct_gather_energy/ipmi
    .fi
    .RE

    Options used for acct_gather_energy/ipmi are as follows:

    .RS
    .TP 10
    \fBEnergyIPMIFrequency\fR=<number>
    This parameter is the number of seconds between BMC access samples.

    (scontrol show node) and jobs (sacct).
    Other keys are optional and are named by administrator.
    These keys are useful only when profile is activated for energy to store power
    (in watt) of each key.
    <values> are integers, multiple values can be set with "," separators.
    The sum of the listed sensors is used for each key.
    EnergyIPMIPowerSensors is optional, default value is "Node=number" where
    "number" is the id of the first power sensor returned by ipmi-sensors.
    .br
    i.e.
    .br
    .na
    EnergyIPMIPowerSensors=Node=16,19,23,26;Socket0=16,23;Socket1=19,26;SSUP=23,26;KNC=16,19
    .ad
    .br
    EnergyIPMIPowerSensors=Node=29,32;SSUP0=29;SSUP1=32
    .br
    EnergyIPMIPowerSensors=Node=1280

    .LP
    The following \fBacct_gather.conf\fR parameters are defined to control the
    IPMI config default values for libipmiconsole.

    .TP 10
    \fBEnergyIPMIUsername\fR=\fIUSERNAME\fR
    Specify BMC Username.

    .TP
    \fBEnergyIPMIPassword\fR=\fIPASSWORD\fR
    Specify BMC Password.
    .RE

    .SH acct_gather_energy/XCC
    Required entry in slurm.conf:
    .RS
    .nf
    AcctGatherEnergyType=acct_gather_energy/xcc
    .fi
    .RE

    Options used for acct_gather_energy/xcc include only in-band communications
    with XClarity Controller, thus a reduced set of configurations is supported:

    .RS
    .TP 10
    \fBEnergyIPMIFrequency\fR=<number>
    This parameter is the number of seconds between XCC access samples.
    Default is 30 seconds.

    .TP
    \fBEnergyIPMITimeout\fR=<number>
    Timeout, in seconds, for initializing the IPMI XCC context for a new gathering
    .TP
    \fBProfileHDF5Dir\fR=<path>
    This parameter is the path to the shared folder into which the
    acct_gather_profile plugin will write detailed data (usually as an HDF5 file).
    The directory is assumed to be on a file system shared by the controller and
    all compute nodes. This is a required parameter.

    .TP
    \fBProfileHDF5Default\fR
    A comma delimited list of data types to be collected for each job submission.
    Allowed values are:

    .RS
    .TP 8
    \fBAll\fR
    All data types are collected. (Cannot be combined with other values.)

    .TP
    \fBNone\fR
    No data types are collected. This is the default.
    (Cannot be combined with other values.)

    .TP
    \fBEnergy\fR
    Energy data is collected.

    .TP
    \fBFilesystem\fR
    File system (Lustre) data is collected.

    .TP
    \fBNetwork\fR
    Network (InfiniBand) data is collected.

    .TP
    \fBTask\fR
    Task (I/O, Memory, ...) data is collected.

    .SH acct_gather_profile/InfluxDB
    Required entry in slurm.conf:
    .RS
    .nf
    AcctGatherProfileType=acct_gather_profile/influxdb
    .fi
    .RE

    The InfluxDB plugin provides the same information as the HDF5 plugin but will
    instead send information to the configured InfluxDB server.
    .P
    The InfluxDB plugin is designed against 1.x protocol of InfluxDB. Any site
    running a v2.x InfluxDB server will need to configure a v1.x compatibility
    endpoint along with the correct user and password authorization. Token
    .TP 10
    \fBAll\fR
    All data types are collected. Cannot be combined with other values.

    .TP
    \fBNone\fR
    No data types are collected. This is the default.
    Cannot be combined with other values.

    .TP
    \fBEnergy\fR
    Energy data is collected.

    .TP
    \fBFilesystem\fR
    File system (Lustre) data is collected.

    .TP
    \fBNetwork\fR
    Network (InfiniBand) data is collected.

    .TP
    \fBTask\fR
    Task (I/O, Memory, ...) data is collected.
    .RE

    .TP
    \fBProfileInfluxDBHost\fR=<hostname>:<port>
    The hostname of the machine where the \fIInfluxDB\fR instance is executed and
    the port used by the HTTP API. The port used by the HTTP API is the one
    configured through the bind-address influxdb.conf option in the [http] section.
    .BR
    Example:
    .nf
    ProfileInfluxDBHost=myinfluxhost:8086
    .fi
    .in -2
    .TP
    \fBProfileInfluxDBPass\fR
    Password for username configured in ProfileInfluxDBUser. Required in v2.x and
    optional in v1.x InfluxDB.

    .TP
    \fBProfileInfluxDBRTPolicy\fR
    The InfluxDB v1.x retention policy name for the database configured in
    ProfileInfluxDBDatabase option. The InfluxDB v2.x retention policy bucket name
    for the database configured in ProfileInfluxDBDatabase option.

    .TP
    \fBProfileInfluxDBUser\fR
    InfluxDB username that should be used to gain access to the database configured
    in ProfileInfluxDBDatabase. Required in v2.x and optional in v1.x InfluxDB.
    avoid overloading the \fIInfluxDB\fR instance with incoming connection requests,
    the plugin uses an internal buffer which is filled with samples. Once the buffer
    is full, a HTTP API write request is performed and the buffer is emptied to hold
    subsequent samples. A final request is also performed when a task ends even if
    the buffer isn't full.
    .LP
    Failed HTTP API write requests are silently discarded. This means that collected
    profile information in the plugin buffer is lost if it can't be written to the
    \fIInfluxDB\fR database for any reason.
    .LP
    Plugin messages are logged along with the slurmstepd logs to SlurmdLogFile. In
    order to troubleshoot any issues, it is recommended to temporarily increase
    the slurmd debug level to debug3 and add Profile to the debug flags. This can
    be accomplished by setting the slurm.conf SlurmdDebug and DebugFlags
    respectively or dynamically through scontrol setdebug and setdebugflags.
    .LP
    Grafana can be used to create charts based on the data held by InfluxDB.
    This kind of tool permits one to create dashboards, tables and other graphics
    using the stored time series.

    .RS
    .SH acct_gather_interconnect/OFED
    Required entry in slurm.conf:
    .RS
    .nf
    AcctGatherInterconnectType=acct_gather_interconnect/ofed
    .fi
    .RE

    Options used for acct_gather_interconnect/ofed are as follows:

    .RS
    .TP 10
    \fBInfinibandOFEDPort\fR=<number>
    This parameter represents the port number of the local Infiniband card that we are willing to monitor.
    The default port is 1.
    .RE
    .RE
    .SH "EXAMPLE"
    .nf
    ###
    # Slurm acct_gather configuration file
    ###
    # Parameters for acct_gather_energy/impi plugin
    EnergyIPMIFrequency=10
    EnergyIPMICalcAdjustment=yes
    #
    # Parameters for acct_gather_profile/hdf5 plugin
    ProfileHDF5Dir=/app/slurm/profile_data
    # Parameters for acct_gather_interconnect/ofed plugin
    InfinibandOFEDPort=1
    .fi
    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"
    .LP
    \fBslurm.conf\<B>fR(5)