diff --git a/slurm/20190411.Slurm-accounting.md b/slurm/20190411.Slurm-accounting.md index 47d6e0c..8e3ea76 100644 --- a/slurm/20190411.Slurm-accounting.md +++ b/slurm/20190411.Slurm-accounting.md @@ -55,6 +55,25 @@ and executed while this job is being launched and executed. in which various parts of a job can require very different resources. See [this documentation](https://slurm.schedmd.com/heterogeneous_jobs.html) for more information.) +The combination of all the job steps constitute the entire job. +Each job step generates its own record in the SLURM accounting database. + +#### Summary on Job ID + +A single SLURM job will generate the "master record" which logs the +overall execution of the job. +In addition, there can be zero or more extra records generated by the +"job steps" triggered during the course of that job. +The master record includes the resource utilization usage (CPU, +memory, etc) of the child "job steps". +The master job record is characterized by a plain number in the +`JobIDRaw` field. +Further, the `User` field must not be empty. + +The rest of this section goes into greater detail of the various +`JobID`'s. + +#### Observed Job ID Patterns Several regex patterns have observed in the JobID field (from Turing accounting): @@ -101,6 +120,14 @@ This will not be a job array. * Regexp match : `JobID ~ /^[0-9]+$/`. +From my observation, only simple single-core jobs that do not involve any +MPI or other fancy stuff (no job array, for example) would not +generate extra "child records" for job steps in the SLURM accounting +database. + +However, several job records with this type JobID will have no "User" field set. +These are also not vanilla jobs. + #### Array Job