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

NAME

6       sbcast - transmit a file to the nodes allocated to a Slurm job.
7
8

SYNOPSIS

10       sbcast [-CfFjpstvV] SOURCE DEST
11
12

DESCRIPTION

14       sbcast  is  used  to transmit a file to all nodes allocated to the cur‐
15       rently active Slurm job.  This command should  only  be  executed  from
16       within  a  Slurm  batch  job  or within the shell spawned after a Slurm
17       job's resource allocation.  SOURCE is the name of a file on the current
18       node.  DEST should be the fully qualified pathname for the file copy to
19       be created on each node.  If a fully qualified  pathname  is  not  pro‐
20       vided,  the  file  will  be  created  in the directory specified in the
21       BcastParameters parameter in the slurm.conf file (if available)  other‐
22       wise it will be created in the current working directory from which the
23       sbcast command is invoked.  DEST should be on a file  system  local  to
24       that  node.  Note that parallel file systems may provide better perfor‐
25       mance than sbcast can provide, although performance will vary  by  file
26       size, degree of parallelism, and network type.
27
28

OPTIONS

30       -C, --compress[=library]
31              Compress  the  file  being  transmitted.   The optional argument
32              specifies the data compression library to  be  used.   Supported
33              values  are  "lz4"  (default)  and "none".  Some compression li‐
34              braries may be unavailable on some systems.   The  default  com‐
35              pression library (and enabling compression itself) may be set in
36              the slurm.conf file using the BcastParameters option.
37
38       --exclude=<NONE|path1,...,pathN>
39              Comma-separated list of absolute directory paths to be  excluded
40              when autodetecting and broadcasting executable shared object de‐
41              pendencies. If the keyword "NONE" is  configured,  no  directory
42              paths  will be excluded. The default value is that of slurm.conf
43              BcastExclude and this option overrides it. See also --send-libs.
44
45       -F, --fanout=<number>
46              Specify the fanout of messages used for file transfer.   Maximum
47              value is currently eight.
48
49       -f, --force
50              If the destination file already exists, replace it.
51
52       -j, --jobid=<jobID[.stepID]>
53              Specify  the job ID to use with optional step ID.  If run inside
54              an allocation this is unneeded as the job ID will read from  the
55              environment.
56
57       -p, --preserve
58              Preserves  modification  times, access times, and modes from the
59              original file.
60
61       --send-libs[=yes|no]
62              If set to yes (or no argument), autodetect and broadcast the ex‐
63              ecutable's  shared  object  dependencies  to  allocated  compute
64              nodes. The files are placed in a directory  alongside  the  exe‐
65              cutable.  This  overrides  the  default  behavior  configured in
66              slurm.conf SbcastParameters send_libs. See also --exclude.
67
68       -s, --size=<size>
69              Specify the block size used for file broadcast.   The  size  can
70              have  a suffix of k or m for kilobytes or megabytes respectively
71              (defaults to bytes).  This size subject to  rounding  and  range
72              limits  to  maintain good performance.  The default value is the
73              file size or 8MB, whichever is smaller.  This value may need  to
74              be set on systems with very limited memory.
75
76       -t, --timeout=<seconds>
77              Specify  the  message  timeout in seconds.  The default value is
78              MessageTimeout as reported by "scontrol show config".  Setting a
79              higher  value may be necessitated by relatively slow I/O perfor‐
80              mance on the compute node disks.
81
82       -v, --verbose
83              Provide detailed event logging through program execution.
84
85       -V, --version
86              Print version information and exit.
87

PERFORMANCE

89       Executing sbcast sends a remote procedure call to slurmctld. If  enough
90       calls  from sbcast or other Slurm client commands that send remote pro‐
91       cedure calls to the slurmctld daemon come in at once, it can result  in
92       a  degradation of performance of the slurmctld daemon, possibly result‐
93       ing in a denial of service.
94
95       Do not run sbcast or other Slurm client commands that send remote  pro‐
96       cedure  calls  to  slurmctld  from loops in shell scripts or other pro‐
97       grams. Ensure that programs limit calls to sbcast to the minimum neces‐
98       sary for the information you are trying to gather.
99
100

ENVIRONMENT VARIABLES

102       Some  sbcast options may be set via environment variables.  These envi‐
103       ronment variables, along with their corresponding options,  are  listed
104       below.  (Note:  Command  line  options  will always override these set‐
105       tings.)
106
107
108       SBCAST_COMPRESS     -C, --compress
109
110       SBCAST_EXCLUDE      --exclude=<NONE|path1,...,pathN>
111
112       SBCAST_FANOUT       -F number, --fanout=number
113
114       SBCAST_FORCE        -f, --force
115
116       SBCAST_SEND_LIBS    --send-libs[=yes|no]
117
118       SBCAST_PRESERVE     -p, --preserve
119
120       SBCAST_SIZE         -s size, --size=size
121
122       SBCAST_TIMEOUT      -t seconds, --timeout=seconds
123
124       SLURM_CONF          The location of the Slurm configuration file.
125
126       SLURM_DEBUG_FLAGS   Specify debug flags for  sbcast  to  use.  See  De‐
127                           bugFlags  in  the slurm.conf(5) man page for a full
128                           list  of  flags.  The  environment  variable  takes
129                           precedence over the setting in the slurm.conf.
130

AUTHORIZATION

132       When  using SlurmDBD, users who have an AdminLevel defined (Operator or
133       Admin) are given the authority to invoke sbcast on other users jobs.
134
135

EXAMPLES

137       Using a batch script, transmit local file my.prog  to  /tmp/my.proc  on
138       the local nodes and then execute it.
139
140       $ cat my.job
141       #!/bin/bash
142       sbcast my.prog /tmp/my.prog
143       srun /tmp/my.prog
144
145       $ sbatch --nodes=8 my.job
146       srun: jobid 12345 submitted
147
148

COPYING

150       Copyright  (C)  2006-2010  The Regents of the University of California.
151       Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
152       Copyright (C) 2010-2022 SchedMD LLC.
153
154       This file is part of Slurm, a resource  management  program.   For  de‐
155       tails, see <https://slurm.schedmd.com/>.
156
157       Slurm  is free software; you can redistribute it and/or modify it under
158       the terms of the GNU General Public License as published  by  the  Free
159       Software  Foundation;  either version 2 of the License, or (at your op‐
160       tion) any later version.
161
162       Slurm is distributed in the hope that it will be  useful,  but  WITHOUT
163       ANY  WARRANTY;  without even the implied warranty of MERCHANTABILITY or
164       FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General  Public  License
165       for more details.
166
167

SEE ALSO

169       srun(1)
170
171
172
173August 2022                     Slurm Commands                       sbcast(1)
Impressum