1scontrol(1)                     Slurm Commands                     scontrol(1)
2
3
4

NAME

6       scontrol - view or modify Slurm configuration and state.
7
8

SYNOPSIS

10       scontrol [OPTIONS...] [COMMAND...]
11
12

DESCRIPTION

14       scontrol  is used to view or modify Slurm configuration including: job,
15       job step, node, partition, reservation, and overall  system  configura‐
16       tion.  Most of the commands can only be executed by user root or an Ad‐
17       ministrator. If an attempt to view or modify configuration  information
18       is  made  by an unauthorized user, an error message will be printed and
19       the requested action will not occur.  If no command is entered  on  the
20       execute  line,  scontrol will operate in an interactive mode and prompt
21       for input. It will continue prompting for input and executing  commands
22       until  explicitly  terminated.  If  a command is entered on the execute
23       line, scontrol will execute that command and  terminate.  All  commands
24       and options are case-insensitive, although node names, partition names,
25       and reservation names are case-sensitive (node names "LX" and "lx"  are
26       distinct).  All  commands  and options can be abbreviated to the extent
27       that the specification is unique. A modified Slurm configuration can be
28       written  to a file using the scontrol write config command. The result‐
29       ing file will be named using the convention "slurm.conf.<datetime>" and
30       located  in  the  same directory as the original "slurm.conf" file. The
31       directory containing the original slurm.conf must be writable for  this
32       to occur.
33
34

OPTIONS

36       -a, --all
37              When  the  show  command  is  used, then display all partitions,
38              their jobs and jobs steps. This causes information  to  be  dis‐
39              played about partitions that are configured as hidden and parti‐
40              tions that are unavailable to user's group.
41
42       -d, --details
43              Causes the show command  to  provide  additional  details  where
44              available.
45
46       --federation
47              Report jobs from federation if a member of one.
48
49       -F, --future
50              Report nodes in FUTURE state.
51
52       -h, --help
53              Print a help message describing the usage of scontrol.
54
55       --hide Do  not  display information about hidden partitions, their jobs
56              and job steps.  By default, neither partitions that are  config‐
57              ured  as hidden nor those partitions unavailable to user's group
58              will be displayed (i.e. this is the default behavior).
59
60       --local
61              Show only information local to this cluster. Ignore other  clus‐
62              ters  in  the  federated if a member of one. Overrides --federa‐
63              tion.
64
65       -M, --clusters=<string>
66              The cluster to issue commands to. Only one cluster name  may  be
67              specified.  Note that the SlurmDBD must be up for this option to
68              work properly.  This option implicitly sets the --local option.
69
70
71       -o, --oneliner
72              Print information one line per record.
73
74       -Q, --quiet
75              Print no warning or informational  messages,  only  fatal  error
76              messages.
77
78       --sibling
79              Show  all sibling jobs on a federated cluster. Implies --federa‐
80              tion.
81
82       -u, --uid=<uid>
83              Attempt to update a job as user <uid> instead  of  the  invoking
84              user id.
85
86       -v, --verbose
87              Print  detailed  event  logging.  Multiple -v's will further in‐
88              crease the verbosity of logging. By default only errors will  be
89              displayed.
90
91
92       -V , --version
93              Print version information and exit.
94
95
96   COMMANDS
97       abort  Instruct  the Slurm controller to terminate immediately and gen‐
98              erate a core file.  See "man slurmctld"  for  information  about
99              where the core file will be written.
100
101
102       cancel_reboot <NodeList>
103              Cancel pending reboots on nodes. The node will be undrain'ed and
104              the reason cleared if the node was drained by an ASAP reboot.
105
106
107       cluster CLUSTER_NAME
108              The cluster to issue commands to. Only one cluster name  may  be
109              specified.
110
111
112       create SPECIFICATION
113              Create a new partition or reservation.  See the full list of pa‐
114              rameters below.  Include the tag "res" to create  a  reservation
115              without specifying a reservation name.
116
117
118       completing
119              Display  all  jobs  in  a COMPLETING state along with associated
120              nodes in either a COMPLETING or DOWN state.
121
122
123       delete SPECIFICATION
124              Delete the entry with  the  specified  SPECIFICATION.   The  two
125              SPECIFICATION  choices  are  PartitionName=<name>  and  Reserva‐
126              tion=<name>. Reservations and partitions should have no  associ‐
127              ated jobs at the time of their deletion (modify the jobs first).
128              If the specified partition is in use, the request is denied.
129
130
131       errnumstr ERRNO
132              Given a Slurm error number, return a descriptive string.
133
134
135       fsdampeningfactor FACTOR
136              Set the FairShareDampeningFactor in slurmctld.
137
138
139       help   Display a description of scontrol options and commands.
140
141
142       hold job_list
143              Prevent a pending job from being started (sets its  priority  to
144              0).   Use the release command to permit the job to be scheduled.
145              The job_list argument is a comma separated list of  job  IDs  OR
146              "jobname="  with  the job's name, which will attempt to hold all
147              jobs having that name.  Note that when a job is held by a system
148              administrator  using the hold command, only a system administra‐
149              tor may release the job for execution (also see the  uhold  com‐
150              mand).  When  the  job  is held by its owner, it may also be re‐
151              leased by the job's owner.  Additionally, attempting to  hold  a
152              running job will have not suspend or cancel it. But, it will set
153              the job priority to 0 and update the  job  reason  field,  which
154              would hold the job if it was requeued at a later time.
155
156
157       notify job_id message
158              Send  a  message to standard error of the salloc or srun command
159              or batch job associated with the specified job_id.
160
161
162       pidinfo proc_id
163              Print the Slurm job id and  scheduled  termination  time  corre‐
164              sponding  to  the  supplied  process id, proc_id, on the current
165              node.  This will work only with processes on node on which scon‐
166              trol  is  run, and only for those processes spawned by Slurm and
167              their descendants.
168
169
170       listpids [job_id[.step_id]] [NodeName]
171              Print a listing of the  process  IDs  in  a  job  step  (if  JO‐
172              BID.STEPID  is  provided),  or all of the job steps in a job (if
173              job_id is provided), or all of the job steps in all of the  jobs
174              on  the local node (if job_id is not provided or job_id is "*").
175              This will work only with processes on the node on which scontrol
176              is  run, and only for those processes spawned by Slurm and their
177              descendants. Note that some Slurm configurations  (ProctrackType
178              value  of  pgid) are unable to identify all processes associated
179              with a job or job step.
180
181              Note that the NodeName option is only  really  useful  when  you
182              have  multiple  slurmd daemons running on the same host machine.
183              Multiple slurmd daemons on one host are, in general,  only  used
184              by Slurm developers.
185
186
187       ping   Ping  the  primary  and secondary slurmctld daemon and report if
188              they are responding.
189
190
191       reboot [ASAP]  [nextstate=<RESUME|DOWN>]  [reason=<reason>]  <ALL|Node‐
192       List>
193              Reboot  the  nodes in the system when they become idle using the
194              RebootProgram as configured in Slurm's  slurm.conf  file.   Each
195              node will have the "REBOOT" flag added to its node state.  After
196              a node reboots and  the  slurmd  daemon  starts  up  again,  the
197              HealthCheckProgram  will  run once. Then, the slurmd daemon will
198              register itself with the slurmctld daemon and the "REBOOT"  flag
199              will  be cleared.  The node's "DRAIN" state flag will be cleared
200              if the reboot was "ASAP", nextstate=resume or down.  The  "ASAP"
201              option  adds  the  "DRAIN" flag to each node's state, preventing
202              additional jobs from running on the node so it can  be  rebooted
203              and  returned  to  service  "As  Soon  As Possible" (i.e. ASAP).
204              "ASAP" will also set the node reason to  "Reboot  ASAP"  if  the
205              "reason"  option  isn't specified.  If the "nextstate" option is
206              specified as "DOWN", then the node will remain in a  down  state
207              after  rebooting.  If "nextstate" is specified as "RESUME", then
208              the nodes will resume  as  normal  and  the  node's  reason  and
209              "DRAIN"  state  will be cleared.  Resuming nodes will be consid‐
210              ered as available in backfill future scheduling and won't be re‐
211              placed by idle nodes in a reservation.  The "reason" option sets
212              each node's reason to a user-defined message.  A default  reason
213              of  "reboot  requested"  is set if no other reason is set on the
214              node.  The reason will be appended with "reboot issued" when the
215              reboot  is  issued and "reboot complete" when the node registers
216              and has a "nextstate" of "DOWN".  You must specify either a list
217              of  nodes  or  that  ALL nodes are to be rebooted.  NOTE: By de‐
218              fault, this command does not prevent additional jobs from  being
219              scheduled  on  any nodes before reboot.  To do this, you can ei‐
220              ther use the "ASAP" option or explicitly drain the nodes before‐
221              hand.   You  can  alternately  create an advanced reservation to
222              prevent additional jobs from being initiated on nodes to be  re‐
223              booted.   Pending  reboots  can  be cancelled by using "scontrol
224              cancel_reboot <node>" or setting the node state  to  "CANCEL_RE‐
225              BOOT".  A node will be marked "DOWN" if it doesn't reboot within
226              ResumeTimeout.
227
228
229       reconfigure
230              Instruct all Slurm daemons to re-read  the  configuration  file.
231              This command does not restart the daemons.  This mechanism would
232              be used to  modify  configuration  parameters  (Epilog,  Prolog,
233              SlurmctldLogFile,  SlurmdLogFile,  etc.).   The Slurm controller
234              (slurmctld) forwards the request to all  other  daemons  (slurmd
235              daemon  on  each compute node). Running jobs continue execution.
236              Most configuration parameters can be  changed  by  just  running
237              this  command,  however,  Slurm  daemons  should be shutdown and
238              restarted if any of these parameters  are  to  be  changed:  Au‐
239              thType,  ControlMach,  PluginDir,  StateSaveLocation, Slurmctld‐
240              Host, SlurmctldPort, or SlurmdPort. The slurmctld daemon and all
241              slurmd  daemons  must  be restarted if nodes are added to or re‐
242              moved from the cluster.
243
244
245       release job_list
246              Release a previously held job to begin execution.  The  job_list
247              argument is a comma separated list of job IDs OR "jobname=" with
248              the job's name, which will attempt to hold all jobs having  that
249              name.  Also see hold.
250
251
252       requeue [option] job_list
253              Requeue  a  running,  suspended or finished Slurm batch job into
254              pending state.  The job_list argument is a comma separated  list
255              of job IDs.  The command accepts the following option:
256
257              Incomplete
258                     Operate only on jobs (or tasks of a job array) which have
259                     not completed.  Specifically only jobs in  the  following
260                     states will be requeued: CONFIGURING, RUNNING, STOPPED or
261                     SUSPENDED.
262
263
264       requeuehold [option] job_list
265              Requeue a running, suspended or finished Slurm  batch  job  into
266              pending  state,  moreover the job is put in held state (priority
267              zero).  The job_list argument is a comma separated list  of  job
268              IDs.   A  held  job  can be released using scontrol to reset its
269              priority (e.g.  "scontrol release <job_id>").  The  command  ac‐
270              cepts the following options:
271
272              Incomplete
273                     Operate only on jobs (or tasks of a job array) which have
274                     not completed.  Specifically only jobs in  the  following
275                     states will be requeued: CONFIGURING, RUNNING, STOPPED or
276                     SUSPENDED.
277
278              State=SpecialExit
279                     The "SpecialExit" keyword specifies that the job  has  to
280                     be  put  in a special state JOB_SPECIAL_EXIT.  The "scon‐
281                     trol show job" command will display the JobState as  SPE‐
282                     CIAL_EXIT, while the "squeue" command as SE.
283
284
285       resume job_list
286              Resume  a  previously suspended job.  The job_list argument is a
287              comma separated list of job IDs.  Also see suspend.
288
289              NOTE: A suspended job releases its CPUs for allocation to  other
290              jobs.   Resuming a previously suspended job may result in multi‐
291              ple jobs being allocated the same CPUs, which could trigger gang
292              scheduling  with  some  configurations  or severe degradation in
293              performance with other configurations.  Use of the scancel  com‐
294              mand  to send SIGSTOP and SIGCONT signals would stop a job with‐
295              out releasing its CPUs for allocation to other jobs and would be
296              a  preferable  mechanism  in  many  cases.  If performing system
297              maintenance you may want to use suspend/resume in the  following
298              way. Before suspending set all nodes to draining or set all par‐
299              titions to down so that no new jobs can be scheduled. Then  sus‐
300              pend  jobs.  Once  maintenance  is  done resume jobs then resume
301              nodes and/or set all partitions back to up.  Use with caution.
302
303
304       schedloglevel LEVEL
305              Enable or disable scheduler logging.  LEVEL  may  be  "0",  "1",
306              "disable" or "enable". "0" has the same effect as "disable". "1"
307              has the same effect as "enable".  This value  is  temporary  and
308              will   be  overwritten  when  the  slurmctld  daemon  reads  the
309              slurm.conf configuration file (e.g. when the daemon is restarted
310              or  scontrol  reconfigure is executed) if the SlurmSchedLogLevel
311              parameter is present.
312
313
314       setdebug LEVEL
315              Change the debug level of the slurmctld daemon.  LEVEL may be an
316              integer  value  between  zero and nine (using the same values as
317              SlurmctldDebug in the slurm.conf file) or the name of  the  most
318              detailed  message type to be printed: "quiet", "fatal", "error",
319              "info", "verbose", "debug",  "debug2",  "debug3",  "debug4",  or
320              "debug5".  This value is temporary and will be overwritten when‐
321              ever the slurmctld daemon  reads  the  slurm.conf  configuration
322              file  (e.g. when the daemon is restarted or scontrol reconfigure
323              is executed).
324
325
326       setdebugflags [+|-]FLAG
327              Add or remove DebugFlags of  the  slurmctld  daemon.   See  "man
328              slurm.conf"  for a list of supported DebugFlags.  NOTE: Changing
329              the value  of  some  DebugFlags  will  have  no  effect  without
330              restarting  the  slurmctld  daemon,  which  would set DebugFlags
331              based upon the contents of the slurm.conf configuration file.
332
333
334       show ENTITY ID
335              or
336
337       show ENTITY=ID
338              Display the state of the specified  entity  with  the  specified
339              identification.   ENTITY  may  be  aliases,  assoc_mgr,  bbstat,
340              burstbuffer, config, daemons, dwstat, federation, frontend, job,
341              node,  partition, reservation, slurmd, step, topology, hostlist,
342              hostlistsorted or hostnames ID can be used to  identify  a  spe‐
343              cific  element of the identified entity: job ID, node name, par‐
344              tition name, reservation name, or job step  ID  for  job,  node,
345              partition, or step respectively.  For an ENTITY of bbstat or dw‐
346              stat (they are equivalent) optional arguments are the options of
347              the  local status command.  The status commands will be executed
348              by the slurmctld daemon and its response returned to  the  user.
349              For  an ENTITY of topology, the ID may be a node or switch name.
350              If one node name is specified, all switches  connected  to  that
351              node  (and  their  parent switches) will be shown.  If more than
352              one node name is specified, only switches that  connect  to  all
353              named  nodes  will  be  shown.  aliases will return all NodeName
354              values associated to a given NodeHostname  (useful  to  get  the
355              list  of virtual nodes associated with a real node in a configu‐
356              ration where multiple slurmd daemons execute on a single compute
357              node).   assoc_mgr  displays  the current contents of the slurm‐
358              ctld's internal cache for users, associations and/or qos. The ID
359              may  be  users=<user1>,[...,<userN>], accounts=<acct1>,[...,<ac‐
360              ctN>], qos=<qos1>,[...,<qosN>]  and/or  flags=<users,assoc,qos>,
361              used  to filter the desired section to be displayed. If no flags
362              are specified, all sections are displayed.  burstbuffer displays
363              the  current  status of the BurstBuffer plugin.  config displays
364              parameter names from the configuration files in mixed case (e.g.
365              SlurmdPort=7003)  while  derived  parameters  names are in upper
366              case only (e.g. SLURM_VERSION).   hostnames  takes  an  optional
367              hostlist  expression  as  input  and writes a list of individual
368              host names to standard output (one per line). If no hostlist ex‐
369              pression is supplied, the contents of the SLURM_JOB_NODELIST en‐
370              vironment variable is used. For example "tux[1-3]" is mapped  to
371              "tux1","tux2"  and  "tux3"  (one  hostname  per line).  hostlist
372              takes a list of host names and prints  the  hostlist  expression
373              for them (the inverse of hostnames).  hostlist can also take the
374              absolute pathname of a file (beginning with the  character  '/')
375              containing  a  list  of  hostnames.   Multiple node names may be
376              specified   using   simple   node   range   expressions    (e.g.
377              "lx[10-20]").  All  other  ID values must identify a single ele‐
378              ment. The job step ID is of  the  form  "job_id.step_id",  (e.g.
379              "1234.1").  slurmd reports the current status of the slurmd dae‐
380              mon executing on the same node from which the  scontrol  command
381              is executed (the local host). It can be useful to diagnose prob‐
382              lems.  By default hostlist does not sort the node list  or  make
383              it  unique  (e.g. tux2,tux1,tux2 = tux[2,1-2]).  If you wanted a
384              sorted  list   use   hostlistsorted   (e.g.   tux2,tux1,tux2   =
385              tux[1-2,2]).  By default, all elements of the entity type speci‐
386              fied are printed.  For an ENTITY of job, if  the  job  does  not
387              specify  socket-per-node,  cores-per-socket  or threads-per-core
388              then it will display '*' in ReqS:C:T=*:*:* field. For an  ENTITY
389              of  federation,  the federation name that the controller is part
390              of and the sibling clusters  part  of  the  federation  will  be
391              listed.
392
393
394       shutdown OPTION
395              Instruct  Slurm daemons to save current state and terminate.  By
396              default, the Slurm controller (slurmctld) forwards  the  request
397              all  other daemons (slurmd daemon on each compute node).  An OP‐
398              TION of slurmctld or controller results in  only  the  slurmctld
399              daemon being shutdown and the slurmd daemons remaining active.
400
401
402       suspend job_list
403              Suspend  a  running job.  The job_list argument is a comma sepa‐
404              rated list of job IDs.  Use the resume command to resume its ex‐
405              ecution.   User processes must stop on receipt of SIGSTOP signal
406              and resume upon receipt of SIGCONT for this operation to be  ef‐
407              fective.   Not  all architectures and configurations support job
408              suspension.  If a suspended job is requeued, it will  be  placed
409              in  a  held  state.   The time a job is suspended will not count
410              against a job's time limit.  Only  an  operator,  administrator,
411              SlurmUser, or root can suspend jobs.
412
413
414       takeover [INDEX]
415              Instruct  one  of Slurm's backup controllers (slurmctld) to take
416              over system control. By default the first backup controller (IN‐
417              DEX=1)  requests control from the primary and waits for its ter‐
418              mination. After that, it switches from backup mode to controller
419              mode.  If  primary  controller can not be contacted, it directly
420              switches to controller mode. This can be used to  speed  up  the
421              Slurm  controller  fail-over  mechanism when the primary node is
422              down.  This can be used to minimize disruption if  the  computer
423              executing  the  primary  Slurm  controller  is  scheduled  down.
424              (Note: Slurm's primary controller will take the control back  at
425              startup.)
426
427
428       top job_list
429              Move  the  specified job IDs to the top of the queue of jobs be‐
430              longing to the identical user ID, partition name,  account,  and
431              QOS.  The job_list argument is a comma separated ordered list of
432              job IDs.  Any job not matching all of those fields will  not  be
433              effected.  Only jobs submitted to a single partition will be ef‐
434              fected.  This operation changes the order of jobs  by  adjusting
435              job  nice values.  The net effect on that user's throughput will
436              be negligible to slightly negative.  This operation is  disabled
437              by  default  for non-privileged (non-operator, admin, SlurmUser,
438              or root) users. This operation may be enabled for non-privileged
439              users  by  the system administrator by including the option "en‐
440              able_user_top" in the SchedulerParameters configuration  parame‐
441              ter.
442
443
444       token [lifespan=<lifespan>] [username=<username>]
445              Return  an auth token which can be used to support JWT authenti‐
446              cation if AuthAltTypes=auth/jwt has been enabled on the  system.
447              Supports  two optional arguments. lifespan= may be used to spec‐
448              ify the token's lifespan in seconds. username (only available to
449              SlurmUser/root)  may  be used to request a token for a different
450              username.
451
452
453       uhold job_list
454              Prevent a pending job from being started (sets its  priority  to
455              0).   The job_list argument is a space separated list of job IDs
456              or job names.  Use the release command to permit the job  to  be
457              scheduled.   This command is designed for a system administrator
458              to hold a job so that the job owner may release it  rather  than
459              requiring  the  intervention of a system administrator (also see
460              the hold command).
461
462
463       update SPECIFICATION
464              Update job, step, node, partition, or reservation  configuration
465              per  the  supplied  specification.  SPECIFICATION is in the same
466              format as the Slurm configuration file and  the  output  of  the
467              show command described above. It may be desirable to execute the
468              show command (described above) on the specific entity  you  want
469              to update, then use cut-and-paste tools to enter updated config‐
470              uration values to the update. Note that while most configuration
471              values can be changed using this command, not all can be changed
472              using this mechanism. In particular, the hardware  configuration
473              of  a node or the physical addition or removal of nodes from the
474              cluster may only be accomplished through editing the Slurm  con‐
475              figuration file and executing the reconfigure command (described
476              above).
477
478
479       version
480              Display the version number of scontrol being executed.
481
482
483       wait_job job_id
484              Wait until a job and all of its nodes are ready for use  or  the
485              job  has entered some termination state. This option is particu‐
486              larly useful in the Slurm Prolog or in the batch  script  itself
487              if nodes are powered down and restarted automatically as needed.
488
489              NOTE:  Don't  use scontrol wait_job in PrologCtld or Prolog with
490              PrologFlags=Alloc as this will result in deadlock.
491
492
493       write batch_script job_id optional_filename
494              Write the batch script for a given job_id to a file or  to  std‐
495              out.  The file will default to slurm-<job_id>.sh if the optional
496              filename argument is not given. The script will  be  written  to
497              stdout  if  -  is given instead of a filename.  The batch script
498              can only be retrieved by an admin or operator, or by  the  owner
499              of the job.
500
501
502       write config optional_filename
503              Write  the  current configuration to a file with the naming con‐
504              vention of "slurm.conf.<datetime>" in the same directory as  the
505              original  slurm.conf file.  If a filename is given that file lo‐
506              cation with a .<datetime> suffix is created.
507
508
509   INTERACTIVE COMMANDS
510       NOTE: All commands listed below can be used in  the  interactive  mode,
511       but NOT on the initial command line.
512
513
514       all    Show  all partitions, their jobs and jobs steps. This causes in‐
515              formation to be displayed about partitions that  are  configured
516              as hidden and partitions that are unavailable to user's group.
517
518
519       details
520              Causes  the  show  command  to  provide additional details where
521              available.  Job information will include CPUs  and  NUMA  memory
522              allocated  on  each  node.   Note  that on computers with hyper‐
523              threading enabled and Slurm configured to allocate  cores,  each
524              listed  CPU  represents  one physical core.  Each hyperthread on
525              that core can be allocated a separate task, so a job's CPU count
526              and  task  count  may differ.  See the --cpu-bind and --mem-bind
527              option descriptions in srun man pages for more information.  The
528              details option is currently only supported for the show job com‐
529              mand.
530
531
532       exit   Terminate scontrol interactive session.
533
534
535       hide   Do not display partition, job or jobs step information for  par‐
536              titions that are configured as hidden or partitions that are un‐
537              available to the user's group.  This is the default behavior.
538
539
540       oneliner
541              Print information one line per record.
542
543
544       quiet  Print no warning or informational  messages,  only  fatal  error
545              messages.
546
547
548       quit   Terminate the execution of scontrol.
549
550
551       verbose
552              Print detailed event logging.  This includes time-stamps on data
553              structures, record counts, etc.
554
555
556       !!     Repeat the last command executed.
557
558
559   JOBS - SPECIFICATIONS FOR UPDATE COMMAND
560       Note that update requests done by either root, SlurmUser or Administra‐
561       tors  are  not subject to certain restrictions. For instance, if an Ad‐
562       ministrator changes the QOS on a pending job, certain  limits  such  as
563       the  TimeLimit will not be changed automatically as changes made by the
564       Administrators are allowed to violate these restrictions.
565
566
567       Account=<account>
568              Account name to be changed for this job's resource  use.   Value
569              may be cleared with blank data value, "Account=".
570
571       AdminComment=<spec>
572              Arbitrary  descriptive string. Can only be set by a Slurm admin‐
573              istrator.
574
575       ArrayTaskThrottle=<count>
576              Specify the maximum number of tasks in a job array that can exe‐
577              cute at the same time.  Set the count to zero in order to elimi‐
578              nate any limit.  The task throttle count for a job array is  re‐
579              ported as part of its ArrayTaskId field, preceded with a percent
580              sign.  For example "ArrayTaskId=1-10%2"  indicates  the  maximum
581              number of running tasks is limited to 2.
582
583       BurstBuffer=<spec>
584              Burst buffer specification to be changed for this job's resource
585              use.  Value may  be  cleared  with  blank  data  value,  "Burst‐
586              Buffer=".  Format is burst buffer plugin specific.
587
588       Clusters=<spec>
589              Specifies the clusters that the federated job can run on.
590
591       ClusterFeatures=<spec>
592              Specifies  features that a federated cluster must have to have a
593              sibling job submitted to it. Slurm will attempt to submit a sib‐
594              ling  job  to  a cluster if it has at least one of the specified
595              features.
596
597       Comment=<spec>
598              Arbitrary descriptive string.
599
600       Contiguous=<yes|no>
601              Set the job's requirement for contiguous (consecutive) nodes  to
602              be  allocated.   Possible  values  are "YES" and "NO".  Only the
603              Slurm administrator or root can change this parameter.
604
605       CoreSpec=<count>
606              Number of cores to reserve per node for  system  use.   The  job
607              will  be  charged  for  these  cores, but be unable to use them.
608              Will be reported as "*" if not constrained.
609
610       CPUsPerTask=<count>
611              Change the CPUsPerTask job's value.
612
613       Deadline=<time_spec>
614              It accepts times of the form HH:MM:SS to specify a deadline to a
615              job  at  a specific time of day (seconds are optional).  You may
616              also specify midnight, noon, fika (3 PM) or teatime (4  PM)  and
617              you can have a time-of-day suffixed with AM or PM for a deadline
618              in the morning or the evening.  You can specify a  deadline  for
619              the  job with a date of the form MMDDYY or MM/DD/YY or MM.DD.YY,
620              or a date and time as  YYYY-MM-DD[THH:MM[:SS]].   You  can  also
621              give times like now + count time-units, where the time-units can
622              be seconds (default), minutes, hours, days, or weeks and you can
623              tell  Slurm  to put a deadline for tomorrow with the keyword to‐
624              morrow.  The specified deadline must be later than  the  current
625              time.   Only  pending  jobs can have the deadline updated.  Only
626              the Slurm administrator or root can change this parameter.
627
628       DelayBoot=<time_spec>
629              Change the time to decide whether to reboot nodes  in  order  to
630              satisfy job's feature specification if the job has been eligible
631              to run for less than this time  period.  See  salloc/sbatch  man
632              pages option --delay-boot.
633
634       Dependency=<dependency_list>
635              Defer job's initiation until specified job dependency specifica‐
636              tion is satisfied.   Cancel  dependency  with  an  empty  depen‐
637              dency_list  (e.g.  "Dependency=").   <dependency_list> is of the
638              form <type:job_id[:job_id][,type:job_id[:job_id]]>.   Many  jobs
639              can  share the same dependency and these jobs may even belong to
640              different  users.
641
642              after:job_id[:jobid...]
643                     This job can begin execution  after  the  specified  jobs
644                     have begun execution or been canceled.
645
646              afterany:job_id[:jobid...]
647                     This  job  can  begin  execution after the specified jobs
648                     have terminated.
649
650              afternotok:job_id[:jobid...]
651                     This job can begin execution  after  the  specified  jobs
652                     have terminated in some failed state (non-zero exit code,
653                     node failure, timed out, etc).
654
655              afterok:job_id[:jobid...]
656                     This job can begin execution  after  the  specified  jobs
657                     have  successfully  executed  (ran  to completion with an
658                     exit code of zero).
659
660              singleton
661                     This  job  can  begin  execution  after  any   previously
662                     launched  jobs  sharing  the  same job name and user have
663                     terminated.  In other words, only one job  by  that  name
664                     and owned by that user can be running or suspended at any
665                     point in time.
666
667       EligibleTime=<time_spec>
668              See StartTime.
669
670       EndTime
671              The time the job is expected to terminate  based  on  the  job's
672              time  limit.   When  the job ends sooner, this field will be up‐
673              dated with the actual end time.
674
675       ExcNodeList=<nodes>
676              Set the job's list of excluded node. Multiple node names may  be
677              specified    using   simple   node   range   expressions   (e.g.
678              "lx[10-20]").  Value may be cleared with blank data value, "Exc‐
679              NodeList=".
680
681       Features=<features>
682              Set  the job's required node features.  The list of features may
683              include multiple feature  names  separated  by  ampersand  (AND)
684              and/or   vertical   bar   (OR)  operators.   For  example:  Fea‐
685              tures="opteron&video" or Features="fast|faster".  In  the  first
686              example,  only  nodes  having both the feature "opteron" AND the
687              feature "video" will be used.  There is no mechanism to  specify
688              that  you  want one node with feature "opteron" and another node
689              with feature "video" in case no node has both features.  If only
690              one  of  a  set of possible options should be used for all allo‐
691              cated nodes, then use the OR operator and  enclose  the  options
692              within      square     brackets.      For     example:     "Fea‐
693              tures=[rack1|rack2|rack3|rack4]" might be used to  specify  that
694              all nodes must be allocated on a single rack of the cluster, but
695              any of those four racks can be used.  A request can also specify
696              the number of nodes needed with some feature by appending an as‐
697              terisk and count after the  feature  name.   For  example  "Fea‐
698              tures=graphics*4"  indicates  that at least four allocated nodes
699              must have the feature "graphics."   Parenthesis  are  also  sup‐
700              ported  for  features  to  be ANDed together.  For example "Fea‐
701              tures=[(knl&a2a&flat)*4&haswell*2]" indicates the resource allo‐
702              cation  should  include  4 nodes with ALL of the features "knl",
703              "a2a", and "flat" plus 2 nodes with the feature "haswell".  Con‐
704              straints  with  node counts may only be combined with AND opera‐
705              tors.  Value may be cleared with blank data value,  for  example
706              "Features=".
707
708
709       Gres=<list>
710              Specifies  a  comma  delimited  list  of  generic consumable re‐
711              sources.   The  format  of   each   entry   on   the   list   is
712              "name[:count[*cpu]]".   The  name  is that of the consumable re‐
713              source.  The count is the number of those resources with  a  de‐
714              fault  value of 1.  The specified resources will be allocated to
715              the job on each node allocated unless  "*cpu"  is  appended,  in
716              which  case  the resources will be allocated on a per cpu basis.
717              The available generic consumable resources  is  configurable  by
718              the  system  administrator.  A list of available generic consum‐
719              able resources will be printed and the command will exit if  the
720              option   argument   is   "help".    Examples   of   use  include
721              "Gres=gpus:2*cpu,disk=40G" and "Gres=help".
722
723
724       JobId=<job_list>
725              Identify the job(s) to be updated.  The job_list may be a  comma
726              separated list of job IDs.  Either JobId or JobName is required.
727
728       Licenses=<name>
729              Specification  of  licenses (or other resources available on all
730              nodes of the cluster) as  described  in  salloc/sbatch/srun  man
731              pages.
732
733       MailType=<types>
734              Set  the  mail  event  types. Valid type values are NONE, BEGIN,
735              END, FAIL, REQUEUE, ALL (equivalent to  BEGIN,  END,  FAIL,  RE‐
736              QUEUE,  and  STAGE_OUT),  STAGE_OUT  (burst buffer stage out and
737              teardown completed), TIME_LIMIT, TIME_LIMIT_90 (reached 90  per‐
738              cent  of  time limit), TIME_LIMIT_80 (reached 80 percent of time
739              limit), TIME_LIMIT_50 (reached 50 percent of time limit) and AR‐
740              RAY_TASKS  (send emails for each array task). Multiple type val‐
741              ues may be specified in a comma separated list. Unless  the  AR‐
742              RAY_TASKS  option is specified, mail notifications on job BEGIN,
743              END and FAIL apply to a job array as a whole rather than  gener‐
744              ating individual email messages for each task in the job array.
745
746       MailUser=<name>
747              Set  the  user to receive email notification of state changes. A
748              blank string will set the mail user to the default which is  the
749              submitting user.
750
751       MinCPUsNode=<count>
752              Set  the  job's minimum number of CPUs per node to the specified
753              value.
754
755       MinMemoryCPU=<megabytes>
756              Set the job's minimum real memory required per allocated CPU  to
757              the specified value. Either MinMemoryCPU or MinMemoryNode may be
758              set, but not both.
759
760       MinMemoryNode=<megabytes>
761              Set the job's minimum real memory required per node to the spec‐
762              ified  value.   Either MinMemoryCPU or MinMemoryNode may be set,
763              but not both.
764
765       MinTmpDiskNode=<megabytes>
766              Set the job's minimum temporary disk space required per node  to
767              the  specified  value.  Only the Slurm administrator or root can
768              change this parameter.
769
770       TimeMin=<timespec>
771              Change TimeMin value which specifies the minimum time limit min‐
772              utes of the job.
773
774       JobName=<name>
775              Identify  the  name of jobs to be modified or set the job's name
776              to the specified value.  When used to identify jobs to be  modi‐
777              fied,  all  jobs  belonging to all users are modified unless the
778              UserID option is used to identify a specific user.  Either JobId
779              or JobName is required.
780
781       Name[=<name>]
782              See JobName.
783
784       Nice[=<adjustment>]
785              Update  the  job  with  an  adjusted  scheduling priority within
786              Slurm. With no adjustment value the scheduling priority  is  de‐
787              creased  by  100.  A negative nice value increases the priority,
788              otherwise decreases it. The adjustment range is +/-  2147483645.
789              Only privileged users can specify a negative adjustment.
790
791       NodeList=<nodes>
792              Change  the nodes allocated to a running job to shrink its size.
793              The specified list of nodes must be a subset of the  nodes  cur‐
794              rently  allocated  to the job. Multiple node names may be speci‐
795              fied using simple node range expressions (e.g. "lx[10-20]"). Af‐
796              ter a job's allocation is reduced, subsequent srun commands must
797              explicitly specify node and task counts which are valid for  the
798              new allocation.
799
800       NumCPUs=<min_count>[-<max_count>]
801              Set the job's minimum and optionally maximum count of CPUs to be
802              allocated.
803
804       NumNodes=<min_count>[-<max_count>]
805              Set the job's minimum and optionally maximum count of  nodes  to
806              be  allocated.  If the job is already running, use this to spec‐
807              ify a node count less than  currently  allocated  and  resources
808              previously  allocated  to  the job will be relinquished. After a
809              job's allocation is reduced, subsequent srun commands  must  ex‐
810              plicitly  specify  node  and task counts which are valid for the
811              new allocation. Also see the NodeList parameter above.  This  is
812              the same as ReqNodes.
813
814       NumTasks=<count>
815              Set  the  job's  count of required tasks to the specified value.
816              This is the same as ReqProcs.
817
818       OverSubscribe=<yes|no>
819              Set the job's ability to share compute resources (i.e.  individ‐
820              ual  CPUs)  with other jobs. Possible values are "YES" and "NO".
821              This option can only be changed for pending jobs.
822
823       Partition=<name>
824              Set the job's partition to the specified value.
825
826       Priority=<number>
827              Set the job's priority to the specified value.  Note that a  job
828              priority of zero prevents the job from ever being scheduled.  By
829              setting a job's priority to zero it is held.  Set  the  priority
830              to  a  non-zero value to permit it to run.  Explicitly setting a
831              job's priority clears any previously set nice value and  removes
832              the priority/multifactor plugin's ability to manage a job's pri‐
833              ority.  In order to restore  the  priority/multifactor  plugin's
834              ability  to  manage  a job's priority, hold and then release the
835              job.  Only the Slurm administrator or root  can  increase  job's
836              priority.
837
838       QOS=<name>
839              Set  the  job's QOS (Quality Of Service) to the specified value.
840              Value may be cleared with blank data value, "QOS=".
841
842       Reboot=<yes|no>
843              Set the job's flag that specifies whether to force the allocated
844              nodes  to reboot before starting the job. This is only supported
845              with some  system  configurations  and  therefore  it  could  be
846              silently ignored.
847
848       ReqCores=<count>
849              Change the job's requested Cores count.
850
851       ReqNodeList=<nodes>
852              Set  the job's list of required node. Multiple node names may be
853              specified   using   simple   node   range   expressions    (e.g.
854              "lx[10-20]").   Value may be cleared with blank data value, "Re‐
855              qNodeList=".
856
857       ReqNodes=<min_count>[-<max_count>]
858              See NumNodes.
859
860       ReqProcs=<count>
861              See NumTasks.
862
863       ReqSockets=<count>
864              Change the job's requested socket count.
865
866       ReqThreads=<count>
867              Change the job's requested threads count.
868
869       Requeue=<0|1>
870              Stipulates whether a job should be requeued after a  node  fail‐
871              ure: 0 for no, 1 for yes.
872
873       ReservationName=<name>
874              Set  the job's reservation to the specified value.  Value may be
875              cleared with blank data value, "ReservationName=".
876
877       ResetAccrueTime
878              Reset the job's accrue time value to 0 meaning it will lose  any
879              time  previously  accrued  for  priority.  Helpful if you have a
880              large queue of jobs already in the queue and want to start  lim‐
881              iting  how  many  jobs  can  accrue time without waiting for the
882              queue to flush out.
883
884       SiteFactor=<account>
885              Specify  the  job's  admin  priority  factor  in  the  range  of
886              +/-2147483645.  Only privileged users can modify the value.
887
888       StdOut=<filepath>
889              Set the batch job's stdout file path.
890
891       Shared=<yes|no>
892              See OverSubscribe option above.
893
894       StartTime=<time_spec>
895              Set the job's earliest initiation time.  It accepts times of the
896              form HH:MM:SS to run a job at a specific time  of  day  (seconds
897              are  optional).   (If that time is already past, the next day is
898              assumed.)  You may also specify midnight, noon, fika (3  PM)  or
899              teatime  (4  PM) and you can have a time-of-day suffixed with AM
900              or PM for running in the morning or the evening.  You  can  also
901              say  what  day  the job will be run, by specifying a date of the
902              form MMDDYY or MM/DD/YY or MM.DD.YY,  or  a  date  and  time  as
903              YYYY-MM-DD[THH:MM[:SS]].   You  can  also  give times like now +
904              count time-units, where the time-units can be seconds (default),
905              minutes, hours, days, or weeks and you can tell Slurm to run the
906              job today with the keyword today and to  run  the  job  tomorrow
907              with the keyword tomorrow.
908
909              Notes on date/time specifications:
910               -  although the 'seconds' field of the HH:MM:SS time specifica‐
911              tion is allowed by the code, note that  the  poll  time  of  the
912              Slurm  scheduler  is not precise enough to guarantee dispatch of
913              the job on the exact second.  The job will be eligible to  start
914              on  the  next  poll following the specified time. The exact poll
915              interval depends on the Slurm scheduler (e.g., 60  seconds  with
916              the default sched/builtin).
917               -   if   no  time  (HH:MM:SS)  is  specified,  the  default  is
918              (00:00:00).
919               - if a date is specified without a year (e.g., MM/DD) then  the
920              current  year  is  assumed,  unless the combination of MM/DD and
921              HH:MM:SS has already passed for that year,  in  which  case  the
922              next year is used.
923
924       Switches=<count>[@<max-time-to-wait>]
925              When  a tree topology is used, this defines the maximum count of
926              switches desired for the job allocation. If Slurm finds an allo‐
927              cation  containing  more  switches than the count specified, the
928              job remain pending until it either finds an allocation with  de‐
929              sired  switch  count or the time limit expires. By default there
930              is no switch count limit and no time limit delay. Set the  count
931              to  zero  in  order to clean any previously set count (disabling
932              the limit).  The job's maximum time delay may be limited by  the
933              system administrator using the SchedulerParameters configuration
934              parameter with the max_switch_wait parameter option.   Also  see
935              wait-for-switch.
936
937
938       wait-for-switch=<seconds>
939              Change max time to wait for a switch <seconds> secs.
940
941
942       TasksPerNode=<count>
943              Change the job's requested TasksPerNode.
944
945
946       ThreadSpec=<count>
947              Number  of  threads to reserve per node for system use.  The job
948              will be charged for these threads, but be unable  to  use  them.
949              Will be reported as "*" if not constrained.
950
951
952       TimeLimit=<time>
953              The  job's  time  limit.   Output  format  is  [days-]hours:min‐
954              utes:seconds or "UNLIMITED".  Input format (for update  command)
955              set    is   minutes,   minutes:seconds,   hours:minutes:seconds,
956              days-hours,  days-hours:minutes  or  days-hours:minutes:seconds.
957              Time  resolution  is one minute and second values are rounded up
958              to the next minute.  If changing the time limit of a job, either
959              specify  a  new  time  limit value or precede the time and equal
960              sign with a "+" or "-" to increment  or  decrement  the  current
961              time  limit  (e.g.  "TimeLimit+=30").  In  order to increment or
962              decrement the current time limit, the JobId  specification  must
963              precede  the TimeLimit specification.  Note that incrementing or
964              decrementing the time limit for a job array is only allowed  be‐
965              fore the job array has been split into more than one job record.
966              Only the Slurm administrator or root can  increase  job's  Time‐
967              Limit.
968
969
970       UserID=<UID or name>
971              Used  with  the  JobName option to identify jobs to be modified.
972              Either a user name or numeric ID (UID), may be specified.
973
974
975       WCKey=<key>
976              Set the job's workload characterization  key  to  the  specified
977              value.
978
979
980       WorkDir=<directory_name>
981              Set  the  job's  working  directory to the specified value. Note
982              that this may only be set for jobs in  the  PENDING  state,  and
983              that  jobs  may fail to launch if they rely on relative paths to
984              the originally submitted WorkDir.
985
986
987   JOBS - SPECIFICATIONS FOR SHOW COMMAND
988       The "show" command, when used with the "job" or  "job  <jobid>"  entity
989       displays detailed information about a job or jobs.  Much of this infor‐
990       mation may be modified using the  "update  job"  command  as  described
991       above.  However, the following fields displayed by the show job command
992       are read-only and cannot be modified:
993
994
995       AllocNode:Sid
996              Local node and system id making the resource allocation.
997
998       BatchFlag
999              Jobs submitted using the sbatch command have BatchFlag set to 1.
1000              Jobs submitted using other commands have BatchFlag set to 0.
1001
1002       ExitCode=<exit>:<sig>
1003              Exit  status  reported  for the job by the wait() function.  The
1004              first number is the exit code, typically as set  by  the  exit()
1005              function.   The  second  number  of  the  signal that caused the
1006              process to terminate if it was terminated by a signal.
1007
1008       GroupId
1009              The group under which the job was submitted.
1010
1011       JobState
1012              The current state of the job.
1013
1014       NodeListIndices
1015              The NodeIndices expose the internal indices into the node  table
1016              associated with the node(s) allocated to the job.
1017
1018       NtasksPerN:B:S:C=
1019              <tasks_per_node>:<tasks_per_base‐
1020              board>:<tasks_per_socket>:<tasks_per_core> Specifies the number
1021              of tasks to be started per hardware component (node, baseboard,
1022              socket and core).  Unconstrained values may be shown as "0" or
1023              "*".
1024
1025       PreemptEligibleTime
1026              Time  the  job becomes eligible for preemption. Modified by Pre‐
1027              emptExemptTime, either from the global option in  slurm.conf  or
1028              the  job  QOS.  This  is hidden if the job has not started or if
1029              PreemptMode=OFF.
1030
1031       PreemptTime
1032              Time at which job was signaled that it was selected for  preemp‐
1033              tion.  (Meaningful only for PreemptMode=CANCEL and the partition
1034              or QOS with which the job is associated has  a  GraceTime  value
1035              designated.)  This  is  hidden  if the job has not started or if
1036              PreemptMode=OFF.
1037
1038       PreSusTime
1039              Time the job ran prior to last suspend.
1040
1041       Reason The reason job is not running: e.g., waiting "Resources".
1042
1043       ReqB:S:C:T=
1044              <baseboard_count>:<socket_per_base‐
1045              board_count>:<core_per_socket_count>:<thread_per_core_count>
1046              Specifies the count of various hardware components requested by
1047              the job.  Unconstrained values may be shown as "0" or "*".
1048
1049       SecsPreSuspend=<seconds>
1050              If the job is suspended, this is the run time accumulated by the
1051              job (in seconds) prior to being suspended.
1052
1053       Socks/Node=<count>
1054              Count of desired sockets per node
1055
1056       SubmitTime
1057              The time  and  date stamp (in localtime) the job was  submitted.
1058              The  format  of  the  output is identical to that of the EndTime
1059              field.
1060
1061              NOTE: If a job is requeued, the submit time is reset.  To obtain
1062              the  original  submit  time it is necessary to use the "sacct -j
1063              <job_id[.<step_id>]" command also designating the -D or --dupli‐
1064              cate option to display all duplicate entries for a job.
1065
1066       SuspendTime
1067              Time the job was last suspended or resumed.
1068
1069              NOTE  on  information displayed for various job states: When you
1070              submit a request  for  the  "show  job"  function  the  scontrol
1071              process  makes  an  RPC  request  call  to  slurmctld with a RE‐
1072              QUEST_JOB_INFO message type.  If the state of the job  is  PEND‐
1073              ING, then it returns some detail information such as: min_nodes,
1074              min_procs, cpus_per_task, etc. If the state is other than  PEND‐
1075              ING  the code assumes that it is in a further state such as RUN‐
1076              NING, COMPLETE, etc. In these cases the code explicitly  returns
1077              zero for these values. These values are meaningless once the job
1078              resources have been allocated and the job has started.
1079
1080
1081   STEPS - SPECIFICATIONS FOR UPDATE COMMAND
1082       StepId=<job_id>[.<step_id>]
1083              Identify the step to be updated.  If the job_id is given, but no
1084              step_id  is  specified then all steps of the identified job will
1085              be modified.  This specification is required.
1086
1087       CompFile=<completion file>
1088              Update a step with information about a step's  completion.   Can
1089              be useful if step statistics aren't directly available through a
1090              jobacct_gather plugin.  The file is a space-delimited file  with
1091              format for Version 1 is as follows
1092
1093              1 34461 0 2 0 3 1361906011 1361906015 1 1 3368 13357 /bin/sleep
1094              A B     C D E F G          H          I J K    L     M
1095
1096              Field Descriptions:
1097
1098              A file version
1099              B ALPS apid
1100              C inblocks
1101              D outblocks
1102              E exit status
1103              F number of allocated CPUs
1104              G start time
1105              H end time
1106              I utime
1107              J stime
1108              K maxrss
1109              L uid
1110              M command name
1111
1112       TimeLimit=<time>
1113              The  job's  time  limit.   Output  format  is  [days-]hours:min‐
1114              utes:seconds or "UNLIMITED".  Input format (for update  command)
1115              set    is   minutes,   minutes:seconds,   hours:minutes:seconds,
1116              days-hours,  days-hours:minutes  or  days-hours:minutes:seconds.
1117              Time  resolution  is one minute and second values are rounded up
1118              to the next minute.  If changing the time limit of a  step,  ei‐
1119              ther  specify  a new time limit value or precede the time with a
1120              "+" or "-" to increment or  decrement  the  current  time  limit
1121              (e.g.  "TimeLimit=+30").  In order to increment or decrement the
1122              current time limit, the StepId specification  must  precede  the
1123              TimeLimit specification.
1124
1125
1126   NODES - SPECIFICATIONS FOR UPDATE COMMAND
1127       NodeName=<name>
1128              Identify  the  node(s) to be updated. Multiple node names may be
1129              specified   using   simple   node   range   expressions    (e.g.
1130              "lx[10-20]"). This specification is required.
1131
1132
1133       ActiveFeatures=<features>
1134              Identify  the feature(s) currently active on the specified node.
1135              Any previously active feature specification will be  overwritten
1136              with  the new value.  Also see AvailableFeatures.  Typically Ac‐
1137              tiveFeatures will be identical to AvailableFeatures; however Ac‐
1138              tiveFeatures  may be configured as a subset of the AvailableFea‐
1139              tures. For example, a node may be booted in multiple  configura‐
1140              tions.  In that case, all possible configurations may be identi‐
1141              fied as AvailableFeatures, while ActiveFeatures  would  identify
1142              the current node configuration.
1143
1144
1145       AvailableFeatures=<features>
1146              Identify  the  feature(s)  available on the specified node.  Any
1147              previously defined available feature specification will be over‐
1148              written  with  the  new  value.   AvailableFeatures assigned via
1149              scontrol will only persist across the restart of  the  slurmctld
1150              daemon  with  the  -R option and state files preserved or slurm‐
1151              ctld's receipt of a SIGHUP.  Update slurm.conf with any  changes
1152              meant  to  be  persistent across normal restarts of slurmctld or
1153              the execution of scontrol reconfig.
1154
1155              Note: Available features being removed via scontrol must not  be
1156              active (i.e. remove them from ActiveFeatures first).
1157
1158
1159       Comment=<comment>
1160              Arbitrary  descriptive  string.  Use quotes to enclose a comment
1161              having more than one word
1162
1163
1164       CpuBind=<node>
1165              Specify the task binding mode to be used  by  default  for  this
1166              node.   Supported  options  include:  "none", "board", "socket",
1167              "ldom" (NUMA), "core", "thread" and "off" (remove previous bind‐
1168              ing mode).
1169
1170
1171       Gres=<gres>
1172              Identify  generic  resources to be associated with the specified
1173              node.  Any previously defined generic resources  will  be  over‐
1174              written with the new value.  Specifications for multiple generic
1175              resources should be comma separated.  Each  resource  specifica‐
1176              tion consists of a name followed by an optional colon with a nu‐
1177              meric  value  (default   value   is   one)   (e.g.   "Gres=band‐
1178              width:10000").   Modification of GRES count associated with spe‐
1179              cific files (e.g. GPUs) is not allowed other than to  set  their
1180              count  on  a node to zero.  In order to change the GRES count to
1181              another value, modify your slurm.conf and  gres.conf  files  and
1182              restart  daemons.   If GRES as associated with specific sockets,
1183              that information will be reported For example if all 4 GPUs on a
1184              node    are    all    associated    with   socket   zero,   then
1185              "Gres=gpu:4(S:0)". If associated  with  sockets  0  and  1  then
1186              "Gres=gpu:4(S:0-1)".  The information of which specific GPUs are
1187              associated with specific GPUs is not reported, but  only  avail‐
1188              able  by parsing the gres.conf file.  Generic resources assigned
1189              via scontrol will only persist across the restart of the  slurm‐
1190              ctld  daemon  with  the  -R  option and state files preserved or
1191              slurmctld's receipt of a SIGHUP.   Update  slurm.conf  with  any
1192              changes  meant to be persistent across normal restarts of slurm‐
1193              ctld or the execution of scontrol reconfig.
1194
1195
1196       NodeAddr=<node address>
1197              Name that a node should be referred to in establishing a  commu‐
1198              nications  path.   This  name will be used as an argument to the
1199              getaddrinfo() function for identification. If a node  range  ex‐
1200              pression  is used to designate multiple nodes, they must exactly
1201              match  the  entries  in  the  NodeName  (e.g.  "NodeName=lx[0-7]
1202              NodeAddr=elx[0-7]"). NodeAddr may also contain IP addresses.
1203
1204
1205       NodeHostname=<node hostname>
1206              Typically  this  would be the string that "/bin/hostname -s" re‐
1207              turns.  It may also be the fully qualified domain  name  as  re‐
1208              turned by "/bin/hostname -f" (e.g. "foo1.bar.com"), or any valid
1209              domain name associated with the host through the  host  database
1210              (/etc/hosts)  or  DNS,  depending on the resolver settings. Note
1211              that if the short form of the hostname is not used, it may  pre‐
1212              vent  use of hostlist expressions (the numeric portion in brack‐
1213              ets must be at the end of the string). A node  range  expression
1214              can be used to specify a set of nodes. If an expression is used,
1215              the number of nodes identified by NodeHostname must be identical
1216              to the number of nodes identified by NodeName.
1217
1218
1219       Reason=<reason>
1220              Identify  the reason the node is in a "DOWN", "DRAINED", "DRAIN‐
1221              ING", "FAILING" or "FAIL" state.  Use quotes to enclose a reason
1222              having more than one word.
1223
1224
1225       State=<state>
1226              Identify  the  state  to  be assigned to the node. Possible node
1227              states are "NoResp", "ALLOC", "ALLOCATED", "COMPLETING", "DOWN",
1228              "DRAIN",  "FAIL",  "FAILING", "FUTURE" "IDLE", "MAINT", "MIXED",
1229              "PERFCTRS/NPC", "RESERVED", "POWER_DOWN",  "POWER_UP",  "RESUME"
1230              or "UNDRAIN". Not all of those states can be set using the scon‐
1231              trol command only the following  can:  "CANCEL_REBOOT",  "DOWN",
1232              "DRAIN",  "FAIL",  "FUTURE",  "RESUME",  "NoResp", "POWER_DOWN",
1233              "POWER_UP" and "UNDRAIN".  If a node is in a  "MIXED"  state  it
1234              usually  means  the node is in multiple states.  For instance if
1235              only part of the node is "ALLOCATED" and the rest of the node is
1236              "IDLE"  the state will be "MIXED".  If you want to remove a node
1237              from service, you typically want to set its  state  to  "DRAIN".
1238              "CANCEL_REBOOT"  cancels  a  pending reboot on the node (same as
1239              "scontrol  cancel_reboot  <node>").   "FAILING"  is  similar  to
1240              "DRAIN"  except  that  some applications will seek to relinquish
1241              those nodes before the job completes.  "PERFCTRS/NPC"  indicates
1242              that  Network Performance Counters associated with this node are
1243              in use, rendering this node as not usable for  any  other  jobs.
1244              "RESERVED"  indicates the node is in an advanced reservation and
1245              not generally available.  "RESUME" is not an actual node  state,
1246              but  will change a node state from "DRAINED", "DRAINING", "DOWN"
1247              or "REBOOT" to either "IDLE" or "ALLOCATED" state  as  appropri‐
1248              ate.   "RESUME"  will  also clear the "POWERING_DOWN" state of a
1249              node and make it eligible to be allocted.  "UNDRAIN" clears  the
1250              node from being drained (like "RESUME"), but will not change the
1251              node's base state (e.g. "DOWN").  Setting  a  node  "DOWN"  will
1252              cause  all  running and suspended jobs on that node to be termi‐
1253              nated.  "POWER_DOWN" and "POWER_UP" will use the configured Sus‐
1254              pendProg  and  ResumeProg programs to explicitly place a node in
1255              or out of a power saving mode. If  a  node  is  already  in  the
1256              process  of  being  powered  up  or  down, the command will only
1257              change the state of the node but won't have any effect until the
1258              configured  ResumeTimeout  or SuspendTimeout is reached.  Use of
1259              this command can be useful in situations where a ResumeProg like
1260              capmc  in  Cray machines is stalled and one wants to restore the
1261              node to "IDLE" manually, in this case  rebooting  the  node  and
1262              setting  the  state  to  "POWER_DOWN"  will  cancel the previous
1263              "POWER_UP" state and the node will become "IDLE".  The  "NoResp"
1264              state  will only set the "NoResp" flag for a node without chang‐
1265              ing its underlying state.  While all of  the  above  states  are
1266              valid,  some  of  them are not valid new node states given their
1267              prior state.  If the node state code printed is followed by "~",
1268              this  indicates  the  node  is  presently in a power saving mode
1269              (typically running at reduced frequency).   If  the  node  state
1270              code  is  followed  by "#", this indicates the node is presently
1271              being powered up or configured.  If the node state code is  fol‐
1272              lowed by "$", this indicates the node is currently in a reserva‐
1273              tion with a flag value of "maintenance".  If the node state code
1274              is  followed by "@", this indicates the node is currently sched‐
1275              uled to be rebooted.  Generally only "DRAIN",  "FAIL"  and  "RE‐
1276              SUME"  should be used.  NOTE: The scontrol command should not be
1277              used to change node state on Cray systems. Use Cray  tools  such
1278              as xtprocadmin instead.
1279
1280
1281       Weight=<weight>
1282              Identify  weight to be associated with specified nodes. This al‐
1283              lows dynamic changes to weight associated with nodes, which will
1284              be  used  for  the subsequent node allocation decisions.  Weight
1285              assigned via scontrol will only persist across  the  restart  of
1286              the  slurmctld  daemon  with  the -R option and state files pre‐
1287              served or slurmctld's receipt of a  SIGHUP.   Update  slurm.conf
1288              with  any  changes meant to be persistent across normal restarts
1289              of slurmctld or the execution of scontrol reconfig.
1290
1291
1292   NODES - SPECIFICATIONS FOR SHOW COMMAND
1293       The meaning of the energy information is as follows:
1294
1295
1296       CurrentWatts
1297              The instantaneous power consumption of the node at the  time  of
1298              the last node energy accounting sample, in watts.
1299
1300
1301       LowestJoules
1302              The  energy  consumed  by  the node between the last time it was
1303              powered on and the last time it was  registered  by  slurmd,  in
1304              joules.
1305
1306
1307       ConsumedJoules
1308              The  energy  consumed  by  the node between the last time it was
1309              registered by the slurmd daemon and the  last  node  energy  ac‐
1310              counting sample, in joules.
1311
1312
1313       If  the reported value is "n/s" (not supported), the node does not sup‐
1314       port the configured AcctGatherEnergyType plugin. If the reported  value
1315       is zero, energy accounting for nodes is disabled.
1316
1317
1318       The meaning of the external sensors information is as follows:
1319
1320
1321       ExtSensorsJoules
1322              The  energy  consumed  by  the node between the last time it was
1323              powered on and the last external sensors plugin node sample,  in
1324              joules.
1325
1326
1327
1328       ExtSensorsWatts
1329              The  instantaneous  power consumption of the node at the time of
1330              the last external sensors plugin node sample, in watts.
1331
1332
1333       ExtSensorsTemp
1334              The temperature of the node at the time  of  the  last  external
1335              sensors plugin node sample, in celsius.
1336
1337
1338       If  the reported value is "n/s" (not supported), the node does not sup‐
1339       port the configured ExtSensorsType plugin.
1340
1341
1342       The meaning of the resource specialization information is as follows:
1343
1344
1345       CPUSpecList
1346              The list of Slurm abstract CPU IDs on this node reserved for ex‐
1347              clusive  use  by  the Slurm compute node daemons (slurmd, slurm‐
1348              stepd).
1349
1350
1351       MemSpecLimit
1352              The combined memory limit, in megabytes, on this  node  for  the
1353              Slurm compute node daemons (slurmd, slurmstepd).
1354
1355
1356       The meaning of the memory information is as follows:
1357
1358
1359       RealMemory
1360              The total memory, in MB, on the node.
1361
1362
1363       AllocMem
1364              The  total  memory,  in  MB,  currently allocated by jobs on the
1365              node.
1366
1367
1368       FreeMem
1369              The total memory, in MB, currently free on the node as  reported
1370              by the OS.
1371
1372
1373   FRONTEND - SPECIFICATIONS FOR UPDATE COMMAND
1374       FrontendName=<name>
1375              Identify the front end node to be updated. This specification is
1376              required.
1377
1378
1379       Reason=<reason>
1380              Identify the reason the node is in a "DOWN"  or  "DRAIN"  state.
1381              Use quotes to enclose a reason having more than one word.
1382
1383
1384       State=<state>
1385              Identify  the state to be assigned to the front end node. Possi‐
1386              ble values are "DOWN", "DRAIN" or "RESUME".  If you want to  re‐
1387              move  a  front  end node from service, you typically want to set
1388              its state to "DRAIN".  "RESUME" is not an actual node state, but
1389              will return a "DRAINED", "DRAINING", or "DOWN" front end node to
1390              service, either "IDLE"  or  "ALLOCATED"  state  as  appropriate.
1391              Setting  a front end node "DOWN" will cause all running and sus‐
1392              pended jobs on that node to be terminated.
1393
1394
1395   PARTITIONS - SPECIFICATIONS FOR CREATE, UPDATE, AND DELETE COMMANDS
1396       AllowGroups=<name>
1397              Identify the user groups which may use this partition.  Multiple
1398              groups  may  be  specified in a comma separated list.  To permit
1399              all groups to use the partition specify "AllowGroups=ALL".
1400
1401
1402       AllocNodes=<name>
1403              Comma separated list of nodes from which users can execute  jobs
1404              in  the  partition.   Node names may be specified using the node
1405              range expression syntax described above.  The default  value  is
1406              "ALL".
1407
1408
1409       Alternate=<partition name>
1410              Alternate partition to be used if the state of this partition is
1411              "DRAIN" or "INACTIVE."  The value "NONE" will clear a previously
1412              set alternate partition.
1413
1414
1415       CpuBind=<node>
1416              Specify  the  task  binding  mode to be used by default for this
1417              partition.   Supported   options   include:   "none",   "board",
1418              "socket", "ldom" (NUMA), "core", "thread" and "off" (remove pre‐
1419              vious binding mode).
1420
1421
1422       Default=<yes|no>
1423              Specify if this partition is to be used by jobs which do not ex‐
1424              plicitly  identify  a  partition to use.  Possible output values
1425              are "YES" and "NO".  In order to change the default partition of
1426              a  running  system,  use the scontrol update command and set De‐
1427              fault=yes for the partition that you want to become the new  de‐
1428              fault.
1429
1430
1431       DefaultTime=<time>
1432              Run  time limit used for jobs that don't specify a value. If not
1433              set then MaxTime will be used.  Format is the same as  for  Max‐
1434              Time.
1435
1436
1437       DefMemPerCPU=<MB>
1438              Set  the default memory to be allocated per CPU for jobs in this
1439              partition.  The memory size is specified in megabytes.
1440
1441       DefMemPerNode=<MB>
1442              Set the default memory to be allocated per node for jobs in this
1443              partition.  The memory size is specified in megabytes.
1444
1445
1446       DisableRootJobs=<yes|no>
1447              Specify  if  jobs can be executed as user root.  Possible values
1448              are "YES" and "NO".
1449
1450
1451       GraceTime=<seconds>
1452              Specifies, in units of seconds, the preemption grace time to  be
1453              extended  to  a job which has been selected for preemption.  The
1454              default value is zero, no preemption grace time  is  allowed  on
1455              this partition or qos.  (Meaningful only for PreemptMode=CANCEL)
1456
1457
1458       Hidden=<yes|no>
1459              Specify  if  the  partition  and  its jobs should be hidden from
1460              view.  Hidden partitions will by  default  not  be  reported  by
1461              Slurm APIs or commands.  Possible values are "YES" and "NO".
1462
1463
1464       JobDefaults=<specs>
1465              Specify  job  default  values  using  a  comma delimited list of
1466              "key=value" pairs.  Supported keys include
1467
1468              DefCpuPerGPU  Default number of CPUs per allocated GPU.
1469
1470              DefMemPerGPU  Default memory limit (in megabytes) per  allocated
1471                            GPU.
1472
1473
1474       MaxMemPerCPU=<MB>
1475              Set  the maximum memory to be allocated per CPU for jobs in this
1476              partition.  The memory size is specified in megabytes.
1477
1478       MaxMemPerCNode=<MB>
1479              Set the maximum memory to be allocated per node for jobs in this
1480              partition.  The memory size is specified in megabytes.
1481
1482
1483       MaxNodes=<count>
1484              Set  the  maximum number of nodes which will be allocated to any
1485              single job in the partition. Specify  a  number,  "INFINITE"  or
1486              "UNLIMITED".  Changing the MaxNodes of a partition has no effect
1487              upon jobs that have already begun execution.
1488
1489
1490       MaxTime=<time>
1491              The   maximum   run   time   for   jobs.    Output   format   is
1492              [days-]hours:minutes:seconds  or "UNLIMITED".  Input format (for
1493              update command) is minutes, minutes:seconds,  hours:minutes:sec‐
1494              onds,  days-hours, days-hours:minutes or days-hours:minutes:sec‐
1495              onds.  Time resolution is  one  minute  and  second  values  are
1496              rounded up to the next minute.  Changing the MaxTime of a parti‐
1497              tion has no effect upon jobs that have already begun execution.
1498
1499
1500       MinNodes=<count>
1501              Set the minimum number of nodes which will be allocated  to  any
1502              single  job in the partition.  Changing the MinNodes of a parti‐
1503              tion has no effect upon jobs that have already begun  execution.
1504              Increasing  this  value  may prevent pending jobs from starting,
1505              even if they were submitted  without  -N/--nodes  specification.
1506              If  you do get in that situation, updating the MinNodes value of
1507              a pending job using the scontrol command will allow that job  to
1508              be scheduled.
1509
1510
1511       Nodes=<name>
1512              Identify  the node(s) to be associated with this partition. Mul‐
1513              tiple node names may be specified using simple  node  range  ex‐
1514              pressions  (e.g. "lx[10-20]").  Note that jobs may only be asso‐
1515              ciated with one partition at any time.   Specify  a  blank  data
1516              value  to remove all nodes from a partition: "Nodes=".  Changing
1517              the Nodes in a partition has no effect upon jobs that  have  al‐
1518              ready begun execution.
1519
1520
1521       OverTimeLimit=<count>
1522              Number  of  minutes by which a job can exceed its time limit be‐
1523              fore being canceled.  The configured job time limit  is  treated
1524              as  a  soft  limit.  Adding OverTimeLimit to the soft limit pro‐
1525              vides a hard limit, at which point the job is canceled.  This is
1526              particularly  useful  for  backfill scheduling, which bases upon
1527              each job's soft time limit.  A partition-specific  OverTimeLimit
1528              will override any global OverTimeLimit value.  If not specified,
1529              the global OverTimeLimit value will take  precedence.   May  not
1530              exceed  65533 minutes.  An input value of "UNLIMITED" will clear
1531              any  previously  configured   partition-specific   OverTimeLimit
1532              value.
1533
1534
1535       OverSubscribe=<yes|no|exclusive|force>[:<job_count>]
1536              Specify if compute resources (i.e. individual CPUs) in this par‐
1537              tition can be shared by  multiple  jobs.   Possible  values  are
1538              "YES",  "NO",  "EXCLUSIVE"  and  "FORCE".  An optional job count
1539              specifies how many jobs can be allocated to use each resource.
1540
1541
1542       PartitionName=<name>
1543              Identify the partition to be updated. This specification is  re‐
1544              quired.
1545
1546
1547       PreemptMode=<mode>
1548              Reset  the  mechanism  used to preempt jobs in this partition if
1549              PreemptType is configured to preempt/partition_prio. The default
1550              preemption  mechanism  is specified by the cluster-wide Preempt‐
1551              Mode configuration parameter.  Possible values are "OFF",  "CAN‐
1552              CEL", "REQUEUE" and "SUSPEND".
1553
1554
1555       Priority=<count>
1556              Jobs submitted to a higher priority partition will be dispatched
1557              before pending jobs in lower priority partitions and if possible
1558              they  will  preempt running jobs from lower priority partitions.
1559              Note that a partition's priority takes precedence over  a  job's
1560              priority.  The value may not exceed 65533.
1561
1562
1563       PriorityJobFactor=<count>
1564              Partition  factor  used by priority/multifactor plugin in calcu‐
1565              lating job priority.  The value may not exceed 65533.  Also  see
1566              PriorityTier.
1567
1568
1569       PriorityTier=<count>
1570              Jobs  submitted to a partition with a higher priority tier value
1571              will be dispatched before pending jobs in partition  with  lower
1572              priority  tier  value  and,   if  possible,  they  will  preempt
1573              running jobs from partitions with lower  priority  tier  values.
1574              Note  that  a  partition's priority tier takes precedence over a
1575              job's priority.  The value may not exceed 65533.  Also see  Pri‐
1576              orityJobFactor.
1577
1578
1579       QOS=<QOSname|blank to remove>
1580              Set the partition QOS with a QOS name or to remove the Partition
1581              QOS leave the option blank.
1582
1583
1584       RootOnly=<yes|no>
1585              Specify if only allocation requests initiated by user root  will
1586              be  satisfied.  This can be used to restrict control of the par‐
1587              tition to some meta-scheduler.  Possible values  are  "YES"  and
1588              "NO".
1589
1590
1591       ReqResv=<yes|no>
1592              Specify  if  only  allocation requests designating a reservation
1593              will be satisfied.  This is used to restrict partition usage  to
1594              be allowed only within a reservation.  Possible values are "YES"
1595              and "NO".
1596
1597
1598       Shared=<yes|no|exclusive|force>[:<job_count>]
1599              Renamed to OverSubscribe, see option descriptions above.
1600
1601
1602       State=<up|down|drain|inactive>
1603              Specify if jobs can be allocated nodes or queued in this  parti‐
1604              tion.  Possible values are "UP", "DOWN", "DRAIN" and "INACTIVE".
1605
1606              UP        Designates  that new jobs may queued on the partition,
1607                        and that jobs may be allocated nodes and run from  the
1608                        partition.
1609
1610              DOWN      Designates  that  new jobs may be queued on the parti‐
1611                        tion, but queued jobs may not be allocated  nodes  and
1612                        run  from  the  partition. Jobs already running on the
1613                        partition continue to run. The jobs must be explicitly
1614                        canceled to force their termination.
1615
1616              DRAIN     Designates  that no new jobs may be queued on the par‐
1617                        tition (job submission requests will be denied with an
1618                        error  message), but jobs already queued on the parti‐
1619                        tion may be allocated nodes and  run.   See  also  the
1620                        "Alternate" partition specification.
1621
1622              INACTIVE  Designates  that no new jobs may be queued on the par‐
1623                        tition, and jobs already queued may not  be  allocated
1624                        nodes  and  run.   See  also the "Alternate" partition
1625                        specification.
1626
1627
1628       TRESBillingWeights=<TRES Billing Weights>
1629              TRESBillingWeights is used to define the billing weights of each
1630              TRES  type  that will be used in calculating the usage of a job.
1631              The calculated usage is used when calculating fairshare and when
1632              enforcing  the  TRES  billing limit on jobs.  Updates affect new
1633              jobs and not existing jobs.  See the  slurm.conf  man  page  for
1634              more information.
1635
1636
1637   RESERVATIONS - SPECIFICATIONS FOR CREATE, UPDATE, AND DELETE COMMANDS
1638       Reservation=<name>
1639              Identify  the name of the reservation to be created, updated, or
1640              deleted.  This parameter is required for update and is the  only
1641              parameter  for delete.  For create, if you do not want to give a
1642              reservation name, use "scontrol create res ..." and a name  will
1643              be created automatically.
1644
1645
1646       Accounts=<account list>
1647              List  of accounts permitted to use the reserved nodes, for exam‐
1648              ple "Accounts=physcode1,physcode2".  A user in any  of  the  ac‐
1649              counts may use the reserved nodes.  A new reservation must spec‐
1650              ify Users or Groups and/or Accounts.  If both  Users/Groups  and
1651              Accounts  are  specified,  a job must match both in order to use
1652              the reservation.  Accounts can also be denied access to reserva‐
1653              tions  by  preceding  all  of the account names with '-'. Alter‐
1654              nately precede the equal  sign  with  '-'.   For  example,  "Ac‐
1655              counts=-physcode1,-physcode2" or "Accounts-=physcode1,physcode2"
1656              will permit any account except physcode1 and  physcode2  to  use
1657              the reservation.  You can add or remove individual accounts from
1658              an existing reservation by using the update command and adding a
1659              '+' or '-' sign before the '=' sign.  If accounts are denied ac‐
1660              cess to a reservation (account name preceded by a '-'), then all
1661              other accounts are implicitly allowed to use the reservation and
1662              it is not possible to also explicitly specify allowed accounts.
1663
1664
1665       BurstBuffer=<buffer_spec>[,<buffer_spec>,...]
1666              Specification of burst buffer resources  which  are  to  be  re‐
1667              served.     "buffer_spec"    consists    of    four    elements:
1668              [plugin:][type:]#[units] "plugin" is  the  burst  buffer  plugin
1669              name, currently either "datawarp" or "generic".  If no plugin is
1670              specified, the reservation applies to all configured burst  buf‐
1671              fer  plugins.   "type" specifies a Cray generic burst buffer re‐
1672              source, for example "nodes".  if "type" is  not  specified,  the
1673              number  is  a  measure of storage space.  The "units" may be "N"
1674              (nodes), "K|KiB", "M|MiB", "G|GiB", "T|TiB", "P|PiB" (for powers
1675              of  1024) and "KB", "MB", "GB", "TB", "PB" (for powers of 1000).
1676              The default units are bytes for reservations of  storage  space.
1677              For  example  "BurstBuffer=datawarp:2TB" (reserve 2TB of storage
1678              plus 3 nodes from the Cray plugin) or  "BurstBuffer=100GB"  (re‐
1679              serve  100  GB of storage from all configured burst buffer plug‐
1680              ins).  Jobs using this reservation are not restricted  to  these
1681              burst  buffer  resources,  but  may use these reserved resources
1682              plus any which are generally available.  NOTE: Usually Slurm in‐
1683              terprets KB, MB, GB, TB, PB, TB units as powers of 1024, but for
1684              Burst Buffers size specifications  Slurm  supports  both  IEC/SI
1685              formats.   This  is  because the CRAY API for managing DataWarps
1686              supports both formats.
1687
1688
1689       CoreCnt=<num>
1690              This option is only supported when SelectType=select/cons_res or
1691              select/cons_tres.  Identify  number of cores to be reserved.  If
1692              NodeCnt is used without the FIRST_CORES flag, this is the  total
1693              number   of   cores   to   reserve   where  cores  per  node  is
1694              CoreCnt/NodeCnt.  If a nodelist is used, or if NodeCnt  is  used
1695              with  the FIRST_CORES flag, this should be an array of core num‐
1696              bers   by    node:    Nodes=node[1-5]    CoreCnt=2,2,3,3,4    or
1697              flags=FIRST_CORES NodeCnt=5 CoreCnt=1,2,1,3,2.
1698
1699
1700       Licenses=<license>
1701              Specification  of  licenses (or other resources available on all
1702              nodes of the cluster) which are to be reserved.   License  names
1703              can be followed by a colon and count (the default count is one).
1704              Multiple license names should  be  comma  separated  (e.g.  "Li‐
1705              censes=foo:4,bar").   A new reservation must specify one or more
1706              resource to be included: NodeCnt, Nodes and/or Licenses.   If  a
1707              reservation includes Licenses, but no NodeCnt or Nodes, then the
1708              option Flags=LICENSE_ONLY must also be  specified.   Jobs  using
1709              this  reservation  are not restricted to these licenses, but may
1710              use these reserved licenses plus any which are generally  avail‐
1711              able.
1712
1713
1714       MaxStartDelay[=<timespec>]
1715              Change  MaxStartDelay  value which specifies the maximum time an
1716              eligible job not requesting this reservation can delay a job re‐
1717              questing  it.  Default is none.  Valid formats are minutes, min‐
1718              utes:seconds, hours:minutes:seconds, days-hours, days-hours:min‐
1719              utes, days-hours:minutes:seconds.  Time resolution is one minute
1720              and second values are rounded up to the next minute. Output for‐
1721              mat is always [days-]hours:minutes:seconds.
1722
1723
1724       NodeCnt=<num>[,num,...]
1725              Identify  number of nodes to be reserved. The number can include
1726              a suffix of "k" or "K", in which case the  number  specified  is
1727              multiplied  by 1024.  A new reservation must specify one or more
1728              resource to be included: NodeCnt, Nodes and/or Licenses.
1729
1730
1731       Nodes=<name>
1732              Identify the node(s) to be reserved. Multiple node names may  be
1733              specified    using   simple   node   range   expressions   (e.g.
1734              "Nodes=lx[10-20]").  Specify a blank data value  to  remove  all
1735              nodes  from  a  reservation:  "Nodes=".   A new reservation must
1736              specify one or more resource  to  be  included:  NodeCnt,  Nodes
1737              and/or  Licenses.  A  specification  of  "ALL"  will reserve all
1738              nodes. Set Flags=PART_NODES  and  PartitionName=  in  order  for
1739              changes  in the nodes associated with a partition to also be re‐
1740              flected in the nodes associated with a reservation.
1741
1742
1743       StartTime=<time_spec>
1744              The start time for the  reservation.   A  new  reservation  must
1745              specify a start time.  It accepts times of the form HH:MM:SS for
1746              a specific time of day (seconds are optional).  (If that time is
1747              already  past,  the  next day is assumed.)  You may also specify
1748              midnight, noon, fika (3 PM) or teatime (4 PM) and you can have a
1749              time-of-day suffixed with AM or PM for running in the morning or
1750              the evening.  You can also say what day the job will be run,  by
1751              specifying a date of the form MMDDYY or MM/DD/YY or MM.DD.YY, or
1752              a date and time as YYYY-MM-DD[THH:MM[:SS]].  You can  also  give
1753              times  like  now + count time-units, where the time-units can be
1754              seconds (default), minutes, hours, days, or weeks  and  you  can
1755              tell  Slurm  to  run the job today with the keyword today and to
1756              run the job tomorrow with the keyword tomorrow. You  cannot  up‐
1757              date the StartTime of a reservation in ACTIVE state.
1758
1759
1760       EndTime=<time_spec>
1761              The  end time for the reservation.  A new reservation must spec‐
1762              ify an end time or a duration.  Valid formats are  the  same  as
1763              for StartTime.
1764
1765
1766       Duration=<time>
1767              The  length of a reservation.  A new reservation must specify an
1768              end time or a duration.  Valid formats are minutes, minutes:sec‐
1769              onds,   hours:minutes:seconds,  days-hours,  days-hours:minutes,
1770              days-hours:minutes:seconds, or UNLIMITED.   Time  resolution  is
1771              one  minute and second values are rounded up to the next minute.
1772              Output format is always [days-]hours:minutes:seconds.
1773
1774
1775       PartitionName=<name>
1776              Partition used to reserve nodes from. This will attempt to allo‐
1777              cate  all  nodes  in  the specified partition unless you request
1778              fewer resources than are  available  with  CoreCnt,  NodeCnt  or
1779              TRES.  Jobs will be allowed to use this reservation even if run‐
1780              ning in a different partition. There only needs to  be  overlap‐
1781              ping  nodes  from that different partition and the nodes used in
1782              the reservation.
1783
1784
1785       Flags=<flags>
1786              Flags associated with the reservation.  You can  add  or  remove
1787              individual flags from an existing reservation by adding a '+' or
1788              '-' sign before the '=' sign.  For example: Flags-=DAILY  (NOTE:
1789              this  shortcut  is not supported for all flags).  Currently sup‐
1790              ported flags include:
1791
1792              ANY_NODES     This is a reservation for burst buffers and/or li‐
1793                            censes  only  and not compute nodes.  If this flag
1794                            is set, a job using this reservation may  use  the
1795                            associated  burst buffers and/or licenses plus any
1796                            compute nodes.  If this flag is not set, a job us‐
1797                            ing  this  reservation  may use only the nodes and
1798                            licenses associated with the reservation.
1799
1800              DAILY         Repeat the reservation at the same time every day.
1801
1802              FLEX          Permit jobs requesting the  reservation  to  begin
1803                            prior  to  the reservation's start time, end after
1804                            the reservation's end time, and use any  resources
1805                            inside  and/or  outside of the reservation regard‐
1806                            less of any constraints possibly set in the reser‐
1807                            vation.  A typical use case is to prevent jobs not
1808                            explicitly requesting the reservation  from  using
1809                            those  reserved resources rather than forcing jobs
1810                            requesting the reservation to use those  resources
1811                            in the time frame reserved. Another use case could
1812                            be to always have a  particular  number  of  nodes
1813                            with  a  specific  feature reserved for a specific
1814                            account so users in  this  account  may  use  this
1815                            nodes  plus possibly other nodes without this fea‐
1816                            ture.
1817
1818              FIRST_CORES   Use the lowest numbered cores on a node only. Flag
1819                            removal with '-=' is not supported.
1820
1821              IGNORE_JOBS   Ignore  currently  running  jobs when creating the
1822                            reservation.  This can be especially  useful  when
1823                            reserving all nodes in the system for maintenance.
1824
1825              LICENSE_ONLY  See ANY_NODES.
1826
1827              MAINT         Maintenance   mode,  receives  special  accounting
1828                            treatment.  This reservation is permitted  to  use
1829                            resources that are already in another reservation.
1830
1831              MAGNETIC      This  flag  allows  jobs to be considered for this
1832                            reservation even if they didn't request it.
1833
1834              NO_HOLD_JOBS_AFTER
1835                            By default, when a reservation ends  the  reserva‐
1836                            tion request will be removed from any pending jobs
1837                            submitted to the reservation and will be put  into
1838                            a  held state.  Use this flag to let jobs run out‐
1839                            side of the reservation after the  reservation  is
1840                            gone. Flag removal with '-=' is not supported.
1841
1842              OVERLAP       This  reservation  can be allocated resources that
1843                            are already in another reservation.  Flag  removal
1844                            with '-=' is not supported.
1845
1846              PART_NODES    This  flag can be used to reserve all nodes within
1847                            the  specified   partition.    PartitionName   and
1848                            Nodes=ALL must be specified with this flag.
1849
1850              PURGE_COMP[=<timespec>]
1851                            Purge the reservation if it is ever idle for time‐
1852                            spec (no jobs associated with  it).   If  timespec
1853                            isn't  given then 5 minutes is the default.  Valid
1854                            timespec  formats  are  minutes,  minutes:seconds,
1855                            hours:minutes:seconds, days-hours, days-hours:min‐
1856                            utes, days-hours:minutes:seconds.  Time resolution
1857                            is  one minute and second values are rounded up to
1858                            the  next  minute.   Output   format   is   always
1859                            [days-]hours:minutes:seconds.
1860
1861              REPLACE       Nodes  which  are  DOWN,  DRAINED, or allocated to
1862                            jobs are automatically replenished using idle  re‐
1863                            sources.   This  option  can be used to maintain a
1864                            constant number of idle  resources  available  for
1865                            pending  jobs (subject to availability of idle re‐
1866                            sources).  This should be used  with  the  NodeCnt
1867                            reservation option; do not identify specific nodes
1868                            to be included in the  reservation.  Flag  removal
1869                            with '-=' is not supported.
1870
1871                            NOTE:  Removing a node from the cluster while in a
1872                            reservation with the REPLACE flag will  not  cause
1873                            it to be replaced.
1874
1875              REPLACE_DOWN  Nodes  which are DOWN or DRAINED are automatically
1876                            replenished using idle resources.  This option can
1877                            be  used  to maintain a constant sized pool of re‐
1878                            sources available for  pending  jobs  (subject  to
1879                            availability  of  idle resources).  This should be
1880                            used with the NodeCnt reservation option;  do  not
1881                            identify  specific  nodes  to  be  included in the
1882                            reservation. Flag removal with '-='  is  not  sup‐
1883                            ported.
1884
1885                            NOTE:  Removing a node from the cluster while in a
1886                            reservation with the REPLACE_DOWN  flag  will  not
1887                            cause it to be replaced.
1888
1889              SPEC_NODES    Reservation is for specific nodes (output only).
1890
1891              STATIC_ALLOC  Make  it  so  after  the  nodes are selected for a
1892                            reservation they don't change.  Without  this  op‐
1893                            tion when nodes are selected for a reservation and
1894                            one goes down the reservation will  select  a  new
1895                            node to fill the spot.
1896
1897              TIME_FLOAT    The reservation start time is relative to the cur‐
1898                            rent time and moves forward through time  (e.g.  a
1899                            StartTime=now+10minutes  will always be 10 minutes
1900                            in the future). Repeating  (e.g.  DAILY)  floating
1901                            reservations  are  not  supported.  Flag cannot be
1902                            added to or removed from an existing reservation.
1903
1904              WEEKDAY       Repeat the reservation at the same time  on  every
1905                            weekday  (Monday, Tuesday, Wednesday, Thursday and
1906                            Friday).
1907
1908              WEEKEND       Repeat the reservation at the same time  on  every
1909                            weekend day (Saturday and Sunday).
1910
1911              WEEKLY        Repeat  the  reservation  at  the  same time every
1912                            week.
1913
1914
1915       Features=<features>
1916              Set the reservation's required node  features.  Multiple  values
1917              may  be  "&"  separated if all features are required (AND opera‐
1918              tion) or separated by "|" if any of the specified  features  are
1919              required  (OR  operation).   Parenthesis  are also supported for
1920              features to be ANDed together with counts of  nodes  having  the
1921              specified        features.         For       example       "Fea‐
1922              tures=[(knl&a2a&flat)*4&haswell*2]"   indicates   the   advanced
1923              reservation  should  include  4  nodes  with ALL of the features
1924              "knl",  "a2a",  and  "flat"  plus  2  nodes  with  the   feature
1925              "haswell".
1926
1927              Value may be cleared with blank data value, "Features=".
1928
1929
1930       Groups=<group list>
1931              List  of groups permitted to use the reserved nodes, for example
1932              "Group=bio,chem".  A  new  reservation  must  specify  Users  or
1933              Groups  and/or  Accounts.  If both Users/Groups and Accounts are
1934              specified, a job must match both in order to  use  the  reserva‐
1935              tion.   Unlike users groups do not allow denied access to reser‐
1936              vations.  You can add or remove individual groups from an exist‐
1937              ing  reservation by using the update command and adding a '+' or
1938              '-' sign before the '=' sign.  NOTE: Groups and Users are  mutu‐
1939              ally  exclusive  in  reservations, if you want to switch between
1940              the 2 you must update the reservation with a group='' or user=''
1941              and fill in the opposite with the appropriate setting.
1942
1943
1944       Skip   Used  on a reoccurring reservation, skip to the next reservation
1945              iteration.  NOTE: Only available for update.
1946
1947
1948       Users=<user list>
1949              List of users permitted to use the reserved nodes,  for  example
1950              "User=jones1,smith2".   A  new reservation must specify Users or
1951              Groups and/or Accounts.  If both Users/Groups and  Accounts  are
1952              specified,  a  job  must match both in order to use the reserva‐
1953              tion.  Users can also be denied access to reservations  by  pre‐
1954              ceding  all  of the user names with '-'. Alternately precede the
1955              equal sign with '-'.   For  example,  "User=-jones1,-smith2"  or
1956              "User-=jones1,smith2"  will  permit  any  user except jones1 and
1957              smith2 to use the reservation.  You can add or remove individual
1958              users  from  an existing reservation by using the update command
1959              and adding a '+' or '-' sign before the '=' sign.  If users  are
1960              denied  access  to  a reservation (user name preceded by a '-'),
1961              then all other users are implicitly allowed to use the  reserva‐
1962              tion  and  it is not possible to also explicitly specify allowed
1963              users.  NOTE: Groups and Users are mutually exclusive in  reser‐
1964              vations, if you want to switch between the 2 you must update the
1965              reservation with a group='' or user='' and fill in the  opposite
1966              with the appropriate setting.
1967
1968
1969       TRES=<tres_spec>
1970              Comma-separated  list of TRES required for the reservation. Cur‐
1971              rent supported TRES types with reservations are: CPU, Node,  Li‐
1972              cense and BB. CPU and Node follow the same format as CoreCnt and
1973              NodeCnt parameters respectively.  License names can be  followed
1974              by an equal '=' and a count:
1975
1976              License/<name1>=<count1>[,License/<name2>=<count2>,...]
1977
1978              BurstBuffer can be specified in a similar way as BurstBuffer pa‐
1979              rameter. The only difference is that colon symbol ':' should  be
1980              replaced by an equal '=' in order to follow the TRES format.
1981
1982              Some examples of TRES valid specifications:
1983
1984              TRES=cpu=5,bb/cray=4,license/iop1=1,license/iop2=3
1985
1986              TRES=node=5k,license/iop1=2
1987
1988              As  specified in CoreCnt, if a nodelist is specified, cpu can be
1989              an  array  of   core   numbers   by   node:   nodes=compute[1-3]
1990              TRES=cpu=2,2,1,bb/cray=4,license/iop1=2
1991
1992              Please note that CPU, Node, License and BB can override CoreCnt,
1993              NodeCnt, Licenses and BurstBuffer parameters respectively.  Also
1994              CPU represents CoreCnt, in a reservation and will be adjusted if
1995              you have threads per core on your nodes.
1996
1997              Note that a reservation that contains nodes or cores is  associ‐
1998              ated  with one partition, and can't span resources over multiple
1999              partitions.  The only exception from this is when  the  reserva‐
2000              tion is created with explicitly requested nodes.
2001
2002

PERFORMANCE

2004       Executing  scontrol  sends  a  remote  procedure  call to slurmctld. If
2005       enough calls from scontrol or other Slurm client commands that send re‐
2006       mote  procedure  calls  to the slurmctld daemon come in at once, it can
2007       result in a degradation of performance of the slurmctld daemon,  possi‐
2008       bly resulting in a denial of service.
2009
2010       Do  not  run  scontrol  or other Slurm client commands that send remote
2011       procedure calls to slurmctld from loops in shell scripts or other  pro‐
2012       grams. Ensure that programs limit calls to scontrol to the minimum nec‐
2013       essary for the information you are trying to gather.
2014
2015

ENVIRONMENT VARIABLES

2017       Some scontrol options may be set via environment variables. These envi‐
2018       ronment  variables,  along with their corresponding options, are listed
2019       below. (Note: Commandline options will always override these settings.)
2020
2021       SCONTROL_ALL        -a, --all
2022
2023       SCONTROL_FEDERATION --federation
2024
2025       SCONTROL_FUTURE     -F, --future
2026
2027       SCONTROL_LOCAL      --local
2028
2029       SCONTROL_SIBLING    --sibling
2030
2031       SLURM_BITSTR_LEN    Specifies the string length to be used for  holding
2032                           a  job  array's  task  ID  expression.  The default
2033                           value is 64 bytes.  A value of  0  will  print  the
2034                           full  expression  with any length required.  Larger
2035                           values may adversely impact the application perfor‐
2036                           mance.
2037
2038       SLURM_CLUSTERS      Same as --clusters
2039
2040       SLURM_CONF          The location of the Slurm configuration file.
2041
2042       SLURM_CONF_OUT      When  running  'write  config', the location of the
2043                           Slurm configuration file to be written.
2044
2045       SLURM_TIME_FORMAT   Specify the format used to report  time  stamps.  A
2046                           value  of  standard,  the  default value, generates
2047                           output            in            the            form
2048                           "year-month-dateThour:minute:second".   A  value of
2049                           relative returns only "hour:minute:second"  if  the
2050                           current  day.   For other dates in the current year
2051                           it prints the "hour:minute"  preceded  by  "Tomorr"
2052                           (tomorrow),  "Ystday"  (yesterday), the name of the
2053                           day for the coming week (e.g. "Mon", "Tue",  etc.),
2054                           otherwise  the  date  (e.g.  "25  Apr").  For other
2055                           years it returns a date month and  year  without  a
2056                           time  (e.g.   "6 Jun 2012"). All of the time stamps
2057                           use a 24 hour format.
2058
2059                           A valid strftime() format can  also  be  specified.
2060                           For example, a value of "%a %T" will report the day
2061                           of the week and a time stamp (e.g. "Mon 12:34:56").
2062
2063
2064       SLURM_TOPO_LEN      Specify the maximum size of the line when  printing
2065                           Topology.  If  not set, the default value is unlim‐
2066                           ited.
2067
2068

AUTHORIZATION

2070       When using SlurmDBD, users who have an AdminLevel defined (Operator  or
2071       Admin)  and  users who are account coordinators are given the authority
2072       to view and modify jobs, reservations, nodes, etc., as defined  in  the
2073       following  table  - regardless of whether a PrivateData restriction has
2074       been defined in the slurm.conf file.
2075
2076       scontrol show job(s):        Admin, Operator, Coordinator
2077       scontrol update job:         Admin, Operator, Coordinator
2078       scontrol requeue:            Admin, Operator, Coordinator
2079       scontrol show step(s):       Admin, Operator, Coordinator
2080       scontrol update step:        Admin, Operator, Coordinator
2081
2082       scontrol show node:          Admin, Operator
2083       scontrol update node:        Admin
2084
2085       scontrol create partition:   Admin
2086       scontrol show partition:     Admin, Operator
2087       scontrol update partition:   Admin
2088       scontrol delete partition:   Admin
2089
2090       scontrol create reservation: Admin, Operator
2091       scontrol show reservation:   Admin, Operator
2092       scontrol update reservation: Admin, Operator
2093       scontrol delete reservation: Admin, Operator
2094
2095       scontrol reconfig:           Admin
2096       scontrol shutdown:           Admin
2097       scontrol takeover:           Admin
2098
2099

EXAMPLES

2101       $ scontrol
2102       scontrol: show part debug
2103       PartitionName=debug
2104          AllocNodes=ALL AllowGroups=ALL Default=YES
2105          DefaultTime=NONE DisableRootJobs=NO Hidden=NO
2106          MaxNodes=UNLIMITED MaxTime=UNLIMITED MinNodes=1
2107          Nodes=snowflake[0-48]
2108          Priority=1 RootOnly=NO OverSubscribe=YES:4
2109          State=UP TotalCPUs=694 TotalNodes=49
2110       scontrol: update PartitionName=debug MaxTime=60:00 MaxNodes=4
2111       scontrol: show job 71701
2112       JobId=71701 Name=hostname
2113          UserId=da(1000) GroupId=da(1000)
2114          Priority=66264 Account=none QOS=normal WCKey=*123
2115          JobState=COMPLETED Reason=None Dependency=(null)
2116          TimeLimit=UNLIMITED Requeue=1 Restarts=0 BatchFlag=0 ExitCode=0:0
2117          SubmitTime=2010-01-05T10:58:40 EligibleTime=2010-01-05T10:58:40
2118          StartTime=2010-01-05T10:58:40 EndTime=2010-01-05T10:58:40
2119          SuspendTime=None SecsPreSuspend=0
2120          Partition=debug AllocNode:Sid=snowflake:4702
2121          ReqNodeList=(null) ExcNodeList=(null)
2122          NodeList=snowflake0
2123          NumNodes=1 NumCPUs=10 CPUs/Task=2 ReqS:C:T=1:1:1
2124          MinCPUsNode=2 MinMemoryNode=0 MinTmpDiskNode=0
2125          Features=(null) Reservation=(null)
2126          OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)
2127       scontrol: update JobId=71701 TimeLimit=30:00 Priority=500
2128       scontrol: show hostnames tux[1-3]
2129       tux1
2130       tux2
2131       tux3
2132       scontrol: create res StartTime=2009-04-01T08:00:00 Duration=5:00:00 Users=dbremer NodeCnt=10
2133       Reservation created: dbremer_1
2134       scontrol: update Reservation=dbremer_1 Flags=Maint NodeCnt=20
2135       scontrol: delete Reservation=dbremer_1
2136       scontrol: quit
2137
2138

COPYING

2140       Copyright (C) 2002-2007 The Regents of the  University  of  California.
2141       Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
2142       Copyright (C) 2008-2010 Lawrence Livermore National Security.
2143       Copyright (C) 2010-2018 SchedMD LLC.
2144
2145       This  file  is  part  of Slurm, a resource management program.  For de‐
2146       tails, see <https://slurm.schedmd.com/>.
2147
2148       Slurm is free software; you can redistribute it and/or modify it  under
2149       the  terms  of  the GNU General Public License as published by the Free
2150       Software Foundation; either version 2 of the License, or (at  your  op‐
2151       tion) any later version.
2152
2153       Slurm  is  distributed  in the hope that it will be useful, but WITHOUT
2154       ANY WARRANTY; without even the implied warranty of  MERCHANTABILITY  or
2155       FITNESS  FOR  A PARTICULAR PURPOSE.  See the GNU General Public License
2156       for more details.
2157

FILES

2159       /etc/slurm.conf
2160

SEE ALSO

2162       scancel(1),   sinfo(1),    squeue(1),    slurm_create_partition    (3),
2163       slurm_delete_partition  (3),  slurm_load_ctl_conf  (3), slurm_load_jobs
2164       (3), slurm_load_node (3), slurm_load_partitions (3),  slurm_reconfigure
2165       (3),    slurm_requeue   (3),   slurm_resume  (3),  slurm_shutdown  (3),
2166       slurm_suspend (3), slurm_takeover (3), slurm_update_job (3),  slurm_up‐
2167       date_node (3), slurm_update_partition (3), slurm.conf(5), slurmctld(8)
2168
2169
2170
2171March 2021                      Slurm Commands                     scontrol(1)
Impressum