Which fields are you talking about. All of the fields seem to be well-documented in the sacct man page (https://slurm.schedmd.com/sacct.html). For example, you mention the time fields. For format for all the time fields seem to be rather well documented (See below) and you can use the SLURM_TIME_FORMAT environment variable to specify the format of some of those time fields.
Can you give a more specific example of a field you are having
trouble parsing, and what programming language you are using to
parse it? I had no problem parsing the date/time fields in Python.
For example I wrote a Python routine that converted elapsed to
seconds. I'd share the code with you, but I can't find it at the
moment. I think it's on my personal computer instead of my work
computer, which I'm using now.
From https://slurm.schedmd.com/sacct.html:
Elapsed time fields are presented as [days-]hours:minutes:seconds[.microseconds]. Only 'CPU' fields will ever have microseconds.
- 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.
- Elapsed
- The jobs elapsed time.
- The format of this fields output is as follows:
- [DD-[HH:]]MM:SS
- as defined by the following:
- DD
- days
- hh
- hours
- mm
- minutes
- ss
- seconds
- End
- Termination time of the job. Format output is, YYYY-MM-DDTHH:MM:SS, unless changed through the SLURM_TIME_FORMAT environment variable.
- Reserved
- How much wall clock time was used as reserved time for this job. This is derived from how long a job was waiting from eligible time to when it actually started. Format is the same as Elapsed.
- ResvCPU
- How many CPU seconds were used as reserved time for this job. Format is the same as Elapsed.
- ResvCPURAW
- How many CPU seconds were used as reserved time for this job. Format is in processor seconds.
- Start
- Initiation time of the job in the same format as End.
- 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 or --duplicate option to display all duplicate entries for a job.
- Suspended
- The amount of time a job or job step was suspended. Format is the same as Elapsed.
- SystemCPU
- The amount of system CPU time used by the job or job step. Format is the same as Elapsed.
NOTE: SystemCPU provides a measure of the task's parent process and does not include CPU time of child processes.
- Timelimit
- What the timelimit was/is for the job. Format is the same as Elapsed.
- TimelimitRaw
- What the timelimit was/is for the job. Format is in number of minutes.
- 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: TotalCPU provides a measure of the task's parent process and does not include CPU time of child processes.
- 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 current day. For other dates in the current year it prints the "hour:minute" preceded by "Tomorr" (tomorrow), "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").
-- Prentice