1
.\" $Id: slaunch.1 13559 2008-03-11 22:41:30Z jette $
2
.TH "slaunch" "1" "SLURM 1.2" "October 2006" "SLURM Commands"
5
slaunch \- Launch a parallel application under a SLURM job allocation.
8
slaunch [\fIoptions\fP] <\fIcommand\fP> [\fIcommand args\fR]
11
\fBNOTE: Support of slaunch is expected to be discontinued in the near future.
12
Use of slaunch is not recommended.\fR
16
slaunch launches a parallel application (a \fBjob step\fR in SLURM parlance)
17
on the nodes, or subset of nodes, in a \fBjob allocation\fR. A valid job
18
allocation is a prerequisite of running slaunch. The ID of the job allocation
19
may be passed to slaunch through either the \fB\-\-jobid\fR command line
20
parameter or the \fBSLAUNCH_JOBID\fR environment variable. The \fBsalloc\fR
21
and \fBsbatch\fR commands may be used to request a job allocation, and each
22
of those commands automatically set the \fBSLURM_JOB_ID\fR environment variable,
23
which is also understood by slaunch. Users should not set SLURM_JOB_ID on their
24
own; use SLAUNCH_JOBID instead.
30
\fB\-C\fR, \fB\-\-overcommit\fR
31
Permit the allocation of more tasks to a node than there are available processors.
32
Normally SLURM will only allow up to N tasks on a node with N processors, but
33
this option will allow more than N tasks to be assigned to a node.
36
\fB\-c\fR, \fB\-\-cpus\-per\-task\fR[=]<\fIncpus\fR>
37
Specify that each task requires \fIncpus\fR number of CPUs. Useful for applications in which each task will launch multiple threads and can therefore benefit from there being free processors on the node.
40
\fB\-\-comm\-hostname\fR[=]<\fIhostname|address\fR>
41
Specify the hostname or address to be used for PMI communications only
42
(MPCIH2 communication bootstrapping mechanism).
43
Defaults to short hostname of the node on which slaunch is running.
46
\fB\-\-core\fR[=]<\fItype\fR>
47
Adjust corefile format for parallel job. If possible, slaunch will set
48
up the environment for the job such that a corefile format other than
49
full core dumps is enabled. If run with type = "list", slaunch will
50
print a list of supported corefile format types to stdout and exit.
53
\fB\-\-cpu_bind\fR=[{\fIquiet,verbose\fR},]\fItype\fR
54
Bind tasks to CPUs. Used only when the task/affinity or task/numa
56
NOTE: To have SLURM always report on the selected CPU binding for all
57
commands executed in a shell, you can enable verbose mode by setting
58
the SLURM_CPU_BIND environment variable value to "verbose".
59
Supported options include:
64
quietly bind before task runs (default)
67
verbosely report binding before task runs
70
don't bind tasks to CPUs (default)
76
bind by mapping CPU IDs to tasks as specified
77
where <list> is <cpuid1>,<cpuid2>,...<cpuidN>.
78
CPU IDs are interpreted as decimal values unless they are preceded
79
with '0x' in which case they interpreted as hexadecimal values.
82
bind by setting CPU masks on tasks as specified
83
where <list> is <mask1>,<mask2>,...<maskN>.
84
CPU masks are \fBalways\fR interpreted as hexadecimal values but can be
85
preceded with an optional '0x'.
89
\fB\-D\fR, \fB\-\-workdir\fR[=]<\fIdirectory\fR>
90
Set the working directory of the tasks to \fIdirectory\fR before execution.
91
The default task working directory is slaunch's working directory.
94
\fB\-d\fR, \fB\-\-slurmd\-debug\fR[=]<\fIlevel\fR>
95
Specify a debug level for slurmd(8). \fIlevel\fR may be an integer value
96
between 0 [quiet, only errors are displayed] and 4 [verbose operation].
97
The slurmd debug information is copied onto the stderr of
98
the job. By default only errors are displayed.
101
\fB\-E\fR, \fB\-\-task\-error\fR[=]<\fIfilename pattern\fR>
102
Instruct SLURM to connect each task's standard error directly to
103
the file name specified in the "\fIfilename pattern\fR".
104
See the \fB\-\-task\-input\fR option for filename specification options.
107
\fB\-e\fR, \fB\-\-slaunch\-error\fR[=]<\fIfilename pattern\fR>
108
Instruct SLURM to connect slaunch's standard error directly to the
109
file name specified in the "\fIfilename pattern\fR".
110
See the \fB\-\-slaunch\-input\fR option for filename specification options.
113
\fB\-\-epilog\fR[=]<\fIexecutable\fR>
114
\fBslaunch\fR will run \fIexecutable\fR just after the job step completes.
115
The command line arguments for \fIexecutable\fR will be the command
116
and arguments of the job step. If \fIexecutable\fR is "none", then
117
no epilog will be run. This parameter overrides the SrunEpilog
118
parameter in slurm.conf.
121
\fB\-F\fR, \fB\-\-task\-layout\-file\fR[=]<\fIfilename\fR>
122
Request a specific task layout. This option is much like the
123
\-\-task\-layout\-byname option, except that instead of a nodelist you
124
supply the name of a file. The file contains a nodelist that may span
125
multiple lines of the file.
127
NOTE: This option implicitly sets the task distribution method to "arbitrary".
128
Some network switch layers do not permit arbitrary task layout.
131
\fB\-\-gid\fR[=]<\fIgroup\fR>
132
If \fBslaunch\fR is run as root, and the \fB\-\-gid\fR option is used,
133
submit the job with \fIgroup\fR's group access permissions. \fIgroup\fR
134
may be the group name or the numerical group ID.
137
\fB\-h\fR, \fB\-\-help\fR
138
Display help information and exit.
141
\fB\-I\fR, \fB\-\-task\-input\fR[=]<\fIfilename pattern\fR>
142
Instruct SLURM to connect each task's standard input directly to
143
the file name specified in the "\fIfilename pattern\fR".
145
By default, the standard IO streams of all tasks are received and transmitted
146
over the network to commands like slaunch and sattach. These options disable
147
the networked standard IO streams and instead connect the standard IO streams
148
of the tasks directly to files on the local node of each task (although the file
149
may, of course, be located on a networked filesystem).
151
Whether or not the tasks share a file depends on whether or not the file lives
152
on a local filesystem or a shared network filesytem, and on whether or not
153
the filename pattern expands to the same file name for each task.
155
The filename pattern may
156
contain one or more replacement symbols, which are a percent sign "%" followed
157
by a letter (e.g. %t).
159
Supported replacement symbols are:
164
Job allocation number and job step number in the form "jobid.stepid". For instance, "128.0".
168
Job allocation number.
176
Node name. (Will result in a separate file per node.)
180
Relative node index number within the job step. All nodes used by the job step will be number sequentially starting at zero. (Will result in a separate file per node.)
184
Task rank number. (Will result in a separate file per task.)
188
\fB\-i\fR, \fB\-\-slaunch\-input\fR[=]<\fIfilename pattern\fR>
190
Change slaunch's standard input
191
to be a file of name "filename pattern". These options are similar to using
192
shell IO redirection capabilities, but with the additional ability to replace
193
certain symbols in the filename with useful SLURM information. Symbols are
196
By default, slaunch broadcasts its standard input over the network to the
197
standard input of all tasks. Likewise, standard output and standard error
198
from all tasks are collected over the network by slaunch and printed on
199
its standard output or standard error, respectively. If you want to see
200
traffic from fewer tasks, see the \-\-slaunch\-[input|output|error]\-filter
203
Supported replacement symbols are:
208
Job allocation number and job step number in the form "jobid.stepid". For instance, "128.0".
212
Job allocation number.
220
\fB\-J\fR, \fB\-\-name\fR[=]<\fIname\fR>
221
Set the name of the job step. By default, the job step's name will be the
222
name of the executable which slaunch is launching.
225
\fB\-\-jobid\fR=<\fIJOBID\fP>
226
The job allocation under which the parallel application should be launched. If slaunch is running under salloc or a batch script, slaunch can automatically determint the jobid from the SLURM_JOB_ID environment variable. Otherwise, you will need to tell slaunch which job allocation to use.
229
\fB\-K\fR, \fB\-\-kill\-on\-bad\-exit\fR
230
Terminate the job step if any task exits with a non\-zero exit code. By default
231
slaunch will not terminate a job step because of a task with a non\-zero exit
235
\fB\-L\fR, \fB\-\-nodelist\-byid\fR[=]<\fInode index list\fR>
236
Request a specific set of nodes in a job alloction on which to run the tasks of the job step. The list may be specified as a comma\-separated list relative node indices in the job allocation (e.g., "0,2\-5,\-2,8"). Duplicate indices are permitted, but are ignored. The order of the node indices in the list is not important; the node indices will be sorted my SLURM.
239
\fB\-l\fR, \fB\-\-label\fR
240
Prepend each line of task standard output or standard error with the task
241
number of its origin.
244
\fB\-m\fR, \fB\-\-distribution\fR=
245
(\fIblock\fR|\fIcyclic\fR|\fIhostfile\fR|\fIplane=<options>\fR)
246
Specify an alternate distribution method for remote processes.
251
The block method of distribution will allocate processes in\-order to
252
the cpus on a node. If the number of processes exceeds the number of
253
cpus on all of the nodes in the allocation then all nodes will be
254
utilized. For example, consider an allocation of three nodes each with
255
two cpus. A four\-process block distribution request will distribute
256
those processes to the nodes with processes one and two on the first
257
node, process three on the second node, and process four on the third node.
258
Block distribution is the default behavior if the number of tasks
259
exceeds the number of nodes requested.
262
The cyclic method distributes processes in a round\-robin fashion across
263
the allocated nodes. That is, process one will be allocated to the first
264
node, process two to the second, and so on. This is the default behavior
265
if the number of tasks is no larger than the number of nodes requested.
268
The tasks are distributed in blocks of a specified size.
269
The options include a number representing the size of the task block.
270
This is followed by an optional specification of the task distribution
271
scheme within a block of tasks and between the blocks of tasks.
272
For more details (including examples and diagrams), please see
274
https://computing.llnl.gov/linux/slurm/mc_support.html
278
https://computing.llnl.gov/linux/slurm/dist_plane.html.
281
The hostfile method of distribution will allocate processes in\-order as
282
listed in file designated by the environment variable SLURM_HOSTFILE. If
283
this variable is listed it will over ride any other method specified.
287
\fB\-\-mem_bind\fR=[{\fIquiet,verbose\fR},]\fItype\fR
288
Bind tasks to memory.
289
Used only when task/affinity plugin is enabled and
290
the NUMA memory functions are available
291
\fBNote that the resolution of CPU and memory binding
292
may differ on some architectures.\fR For example, CPU binding may be performed
293
at the level of the cores within a processor while memory binding will
294
be performed at the level of nodes, where the definition of "nodes"
295
may differ from system to system. \fBThe use of any type other than
296
"none" or "local" is not recommended.\fR
297
If you want greater control, try running a simple test code with the
298
options "\-\-cpu_bind=verbose,none \-\-mem_bind=verbose,none" to determine
299
the specific configuration.
300
Note: To have SLURM always report on the selected memory binding for all
301
commands executed in a shell, you can enable verbose mode by setting the
302
SLURM_MEM_BIND environment variable value to "verbose".
303
Supported options include:
308
quietly bind before task runs (default)
311
verbosely report binding before task runs
314
don't bind tasks to memory (default)
317
bind by task rank (not recommended)
320
Use memory local to the processor in use
323
bind by mapping a node's memory to tasks as specified
324
where <list> is <cpuid1>,<cpuid2>,...<cpuidN>.
325
CPU IDs are interpreted as decimal values unless they are preceded
326
with '0x' in which case they interpreted as hexadecimal values
330
bind by setting memory masks on tasks as specified
331
where <list> is <mask1>,<mask2>,...<maskN>.
332
memory masks are \fBalways\fR interpreted as hexadecimal values but can be
333
preceded with an optional '0x' (not recommended)
337
\fB\-\-mpi\fR[=]<\fImpi_type\fR>
338
Identify the type of MPI to be used. If run with mpi_type = "list",
339
slaunch will print a list of supported MPI types to stdout and exit.
342
\fB\-\-multi\-prog\fR
343
This option allows one to launch tasks with different executables within
344
the same job step. When this option is present, slaunch no long accepts
345
the name of an executable "command" on the command line, instead it accepts
346
the name of a file. This file specifies which executables and command line
347
parameters should be used by each task in the job step. See the section
348
\fBMULTIPLE PROGRAMS FILE\fR below for an explanation of the multiple program
352
\fB\-N\fR, \fB\-\-nodes\fR[=]<\fInumber\fR>
353
Specify the number of nodes to be used by this job step. By default,
354
slaunch will use all of the nodes in the specified job allocation.
357
\fB\-n\fR, \fB\-\-tasks\fR[=]<\fInumber\fR>
358
Specify the number of processes to launch. The default is one process per node.
361
\fB\-\-network\fR[=]<\fIoptions\fR>
362
(NOTE: this option is currently only of use on AIX systems.)
363
Specify the communication protocol to be used.
364
The interpretation of \fItype\fR is system dependent.
365
For AIX systems with an IBM Federation switch, the following
366
comma\-separated and case insensitive options are recongnized:
367
\fBIP\fR (the default is user\-space), \fBSN_ALL\fR, \fBSN_SINGLE\fR,
368
\fBBULK_XFER\fR and adapter names. For more information, on
369
IBM systems see \fIpoe\fR documenation on the environment variables
370
\fBMP_EUIDEVICE\fR and \fBMP_USE_BULK_XFER\fR.
373
\fB\-O\fR, \fB\-\-task\-output\fR[=]<\fIfilename pattern\fR>
374
Instruct SLURM to connect each task's standard output directly to
375
the file name specified in the "\fIfilename pattern\fR".
376
See the \fB\-\-task\-input\fR option for filename specification options.
379
\fB\-o\fR, \fB\-\-slaunch\-output\fR[=]<\fIfilename pattern\fR>
380
Instruct SLURM to connect slaunch's standard output directly to the
381
file name specified in the "\fIfilename pattern\fR".
382
See the \fB\-\-slaunch\-input\fR option for filename specification options.
385
\fB\-\-propagate\fR[=\fIrlimits\fR]
386
Allows users to specify which of the modifiable (soft) resource limits
387
to propagate to the compute nodes and apply to their jobs. If
388
\fIrlimits\fR is not specified, then all resource limits will be
390
The following rlimit names are supported by Slurm (although some
391
options may not be supported on some systems):
395
The maximum address space for a processes
398
The maximum size of core file
401
The maximum amount of CPU time
404
The maximum size of a process's data segment
407
The maximum size of files created
410
The maximum size that may be locked into memory
413
The maximum number of open files
416
The maximum number of processes available
419
The maximum resident set size
422
The maximum stack size
426
\fB\-\-prolog\fR[=]<\fIexecutable\fR>
427
\fBslaunch\fR will run \fIexecutable\fR just before launching the job step.
428
The command line arguments for \fIexecutable\fR will be the command
429
and arguments of the job step. If \fIexecutable\fR is "none", then
430
no prolog will be run. This parameter overrides the SrunProlog
431
parameter in slurm.conf.
434
\fB\-q\fR, \fB\-\-quiet\fR
435
Suppress informational messages from slaunch. Errors will still be displayed.
438
\fB\-r\fR, \fB\-\-relative\fR[=]<\fInumber\fR>
439
Specify the first node in the allocation on which this job step will be launched. Counting starts at zero, thus the first node in the job allocation is node 0. The option to \-\-relative may also be a negative number. \-1 is the last node in the allocation, \-2 is the next to last node, etc. By default, the controller will select the starting node (assuming that there are no other nodelist or task layout options that specify specific nodes).
442
\fB\-\-slaunch\-input\-filter\fR[=]<\fItask number\fR>
445
\fB\-\-slaunch\-output\-filter\fR[=]<\fItask number\fR>
448
\fB\-\-slaunch\-error\-filter\fR[=]<\fItask number\fR>
450
Only transmit standard input to a single task, or print the standard output
451
or standard error from a single task. These options perform the filtering
452
locally in slaunch. All tasks are still capable of sending or receiving
453
standard IO over the network, so the "sattach" command can still access the
454
standard IO streams of the other tasks. (NOTE: for \-output and \-error,
455
the streams from all tasks WILL be transmitted to slaunch, but it will only
456
print the streams for the selected task. If your tasks print a great deal of
457
data to standard output or error, this can be performance limiting.)
460
\fB\-T\fR, \fB\-\-task\-layout\-byid\fR[=]<\fInode index list\fR>
461
Request a specific task layout using node indices within the job allocation. The node index list can contain duplicate indices, and the indices may appear in any order. The order of indices in the nodelist IS significant. Each node index in the list represents one task, with the Nth node index in the list designating on which node the Nth task should be launched.
463
For example, given an allocation of nodes "linux[0\-15]" and a node index list "4,\-1,1\-3" task 0 will run on "linux4", task 1 will run on "linux15", task 2 on "linux1", task 3 on "linux2", and task 4 on "linux3".
465
NOTE: This option implicitly sets the task distribution method to "arbitrary". Some network switch layers do not permit arbitrary task layout.
468
\fB\-\-task\-epilog\fR[=]<\fIexecutable\fR>
469
The \fBslurmd\fR daemon will run \fIexecutable\fR just after each task
470
terminates. This will be before after any TaskEpilog parameter
471
in slurm.conf is executed. This is meant to be a very short\-lived
472
program. If it fails to terminate within a few seconds, it will
473
be killed along with any descendant processes.
476
\fB\-\-task\-prolog\fR[=]<\fIexecutable\fR>
477
The \fBslurmd\fR daemon will run \fIexecutable\fR just before launching
478
each task. This will be executed after any TaskProlog parameter
479
in slurm.conf is executed.
480
Besides the normal environment variables, this has SLURM_TASK_PID
481
available to identify the process ID of the task being started.
482
Standard output from this program of the form
483
"export NAME=value" will be used to set environment variables
484
for the task being spawned.
487
\fB\-u\fR, \fB\-\-unbuffered\fR
488
Do not line buffer standard output or standard error from remote tasks.
489
This option cannot be used with \-\-label.
492
\fB\-\-uid\fR[=]<\fIuser\fR>
493
Attempt to submit and/or run a job as \fIuser\fR instead of the
494
invoking user id. The invoking user's credentials will be used
495
to check access permissions for the target partition. User root
496
may use this option to run jobs as a normal user in a RootOnly
497
partition for example. If run as root, \fBslaunch\fR will drop
498
its permissions to the uid specified after node allocation is
499
successful. \fIuser\fR may be the user name or numerical user ID.
503
Display brief usage message and exit.
506
\fB\-V\fR, \fB\-\-version\fR
507
Display version information and exit.
510
\fB\-v\fR, \fB\-\-verbose\fR
511
Increase the verbosity of slaunch's informational messages. Multiple \-v's
512
will further increase slaunch's verbosity.
515
\fB\-W\fR, \fB\-\-wait\fR[=]<\fIseconds\fR>
516
slaunch will wait the specified number of seconds after the first tasks exits
517
before killing all tasks in the job step. If the value is 0, slaunch will
518
wait indefinitely for all tasks to exit. The default value is give by the
519
WaitTime parameter in the slurm configuration file (see \fBslurm.conf(5)\fR).
521
The \-\-wait option can be used to insure that a job step terminates in a timely
522
fashion in the event that one or more tasks terminate prematurely.
525
\fB\-w\fR, \fB\-\-nodelist\-byname\fR[=]<\fInode name list\fR>
526
Request a specific list of node names. The list may be specified as a comma\-separated list of node names, or a range of node names (e.g. mynode[1\-5,7,...]). Duplicate node names are not permitted in the list.
527
The order of the node names in the list is not important; the node names
528
will be sorted my SLURM.
531
\fB\-Y\fR, \fB\-\-task\-layout\-byname\fR[=]<\fInode name list\fR>
532
Request a specific task layout. The nodelist can contain duplicate node
533
names, and node names may appear in any order. The order of node names in
534
the nodelist IS significant. Each node name in the nodes list represents
535
one task, with the Nth node name in the nodelist designating on which node
536
the Nth task should be launched. For example, a nodelist of mynode[4,3,1\-2,4]
537
means that tasks 0 and 4 will run on mynode4, task 1 will run on mynode3,
538
task 2 will run on mynode1, and task 3 will run on mynode2.
540
NOTE: This option implicitly sets the task distribution method to "arbitrary".
541
Some network switch layers do not permit arbitrary task layout.
543
.SH "INPUT ENVIRONMENT VARIABLES"
545
Some slaunch options may be set via environment variables.
546
These environment variables, along with their corresponding options,
548
Note: Command line options will always override environment variables settings.
550
\fBSLAUNCH_COMM_HOSTNAME\fR
551
Same as \fB\-\-comm\-hostname\fR.
553
\fBSLAUNCH_CORE_FORMAT\fR
554
Same as \fB\-\-core\fR.
556
\fBSLAUNCH_CPU_BIND\fR
557
Same as \fB\-\-cpu_bind\fR.
560
Same as \fB\-v\fR or \fB\-\-verbose\fR.
562
\fBSLAUNCH_DISTRIBUTION\fR
563
Same as \fB\-m\fR or \fB\-\-distribution\fR.
566
Same as \fB\-\-epilog\fR=\fIexecutable\fR.
569
Same as \fB\-\-jobid\fR.
571
\fBSLAUNCH_KILL_BAD_EXIT\fR
572
Same as \fB\-K\fR or \fB\-\-kill\-on\-bad\-exit\fR.
574
\fBSLAUNCH_LABELIO\fR
575
Same as \fB\-l\fR or \fB\-\-label\fR.
577
\fBSLAUNCH_MEM_BIND\fR
578
Same as \fB\-\-mem_bind\fR.
580
\fBSLAUNCH_MPI_TYPE\fR
581
Same as \fB\-\-mpi\fR.
583
\fBSLAUNCH_OVERCOMMIT\fR
584
Same as \fB\-C\fR or \fB\-\-overcomit\fR.
587
Same as \fB\-\-prolog\fR=\fIexecutable\fR.
589
\fBSLAUNCH_TASK_EPILOG\fR
590
Same as \fB\-\-task\-epilog\fR=\fIexecutable\fR.
592
\fBSLAUNCH_TASK_PROLOG\fR
593
Same as \fB\-\-task\-prolog\fR=\fIexecutable\fR.
596
Same as \fB\-W\fR or \fB\-\-wait\fR.
599
Same as \fB\-d\fR or \fB\-\-slurmd\-debug\fR
601
.SH "OUTPUT ENVIRONMENT VARIABLES"
603
slaunch will set the following environment variables which will
604
appear in the environments of all tasks in the job step. Since slaunch
605
sets these variables itself, they will also be available to \-\-prolog
606
and \-\-epilog scripts. (Notice that the "backwards compatibility" environment
607
variables clobber some of the variables that were set by salloc or sbatch
608
at job allocation time. The newer SLURM_JOB_* and SLURM_STEP_* names do not
609
conflict, so any task in any job step can easily determine the parameters
610
of the job allocation.)
612
\fBSLURM_STEP_ID\fR (and \fBSLURM_STEPID\fR for backwards compatibility)
613
The ID of the job step within the job allocation.
615
\fBSLURM_STEP_NODELIST\fR
616
The list of nodes in the job step.
618
\fBSLURM_STEP_NUM_NODES\fR (and \fBSLURM_NNODES\fR for backwards compatibility)
619
The number of nodes used by the job step.
621
\fBSLURM_STEP_NUM_TASKS\fR (and \fBSLURM_NPROCS\fR for backwards compatibility)
622
The number of tasks in the job step.
624
\fBSLURM_STEP_TASKS_PER_NODE\fR (and \fBSLURM_TASKS_PER_NODE\fR for backwards compatibility)
625
The number of tasks on each node in the job step.
627
\fBSLURM_STEP_LAUNCHER_HOSTNAME\fR (and \fBSLURM_SRUN_COMM_HOST\fR for backwards compatibility)
629
\fBSLURM_STEP_LAUNCHER_PORT\fR (and \fBSLURM_SRUN_COMM_PORT\fR for backwards compatibility)
632
Additionally, SLURM daemons will ensure that the the following variables are
633
set in the environments of all tasks in the job step. Many of the following
634
variables will have different values in each task's environment. (These
635
variables are not available to the slaunch \-\-prolog and \-\-epilog scripts.)
639
Node ID relative to other nodes in the job step. Counting begins at zero.
642
Task ID relative to the other tasks in the job step. Counting begins at zero.
645
Task ID relative to the other tasks on the same node which belong to the
646
same job step. Counting begins at zero.
648
\fBSLURMD_NODENAME\fR
649
The SLURM NodeName for the node on which the task is running. Depending
650
on how your system administrator has configured SLURM, the NodeName for a
651
node may not be the same as the node's hostname. When you use commands
652
such as \fBsinfo\fR and \fBsqueue\fR, or look at environment variables such
653
as SLURM_JOB_NODELIST and SLURM_STEP_NODELIST, you are seeing SLURM NodeNames.
655
.SH "MULTIPLE PROGRAMS FILE"
656
Comments in the configuration file must have a "#" in collumn one.
657
The configuration file contains the following fields separated by white
661
One or more task ranks to use this configuration.
662
Multiple values may be comma separated.
663
Ranges may be indicated with two numbers separated with a '\-'.
664
To indicate all tasks, specify a rank of '*' (in which case you probably
665
should not be using this option).
668
The name of the program to execute.
669
May be fully qualified pathname if desired.
673
The expression "%t" will be replaced with the task's number.
674
The expression "%o" will be replaced with the task's offset within
675
this range (e.g. a configured task rank value of "1\-5" would
676
have offset values of "0\-4").
677
Single quotes may be used to avoid having the enclosed values interpretted.
678
This field is optional.
682
###################################################################
683
# srun multiple program configuration file
685
# srun \-n8 \-l \-\-multi\-prog silly.conf
686
###################################################################
689
0,2\-3 echo offset:%o
691
$ srun \-n8 \-l \-\-multi\-prog silly.conf
705
To launch a job step (parallel program) in an existing job allocation:
707
slaunch \-\-jobid 66777 \-N2 \-n8 myprogram
710
To grab an allocation of nodes and launch a parallel application on one command line (See the \fBsalloc\fR man page for more examples):
712
salloc \-N5 slaunch \-n10 myprogram
715
Copyright (C) 2006\-2007 The Regents of the University of California.
716
Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
719
This file is part of SLURM, a resource management program.
720
For details, see <https://computing.llnl.gov/linux/slurm/>.
722
SLURM is free software; you can redistribute it and/or modify it under
723
the terms of the GNU General Public License as published by the Free
724
Software Foundation; either version 2 of the License, or (at your option)
727
SLURM is distributed in the hope that it will be useful, but WITHOUT ANY
728
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
729
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
734
sinfo(1), sattach(1), salloc(1), sbatch(1), squeue(1), scancel(1), scontrol(1), slurm.conf(5), sched_setaffinity(2), numa(3)