1CONDOR_SUBMIT_DAG(1) HTCondor Manual CONDOR_SUBMIT_DAG(1)
2
3
4
6 condor_submit_dag - HTCondor Manual
7
8 Manage and queue jobs within a specified DAG for execution on remote
9 machines
10
11
13 condor_submit_dag [-help | -version ]
14
15 condor_submit_dag [-no_submit ] [-verbose ] [-force ] [-maxidle Num‐
16 berOfProcs] [-maxjobs NumberOfClusters] [-dagman DagmanExecutable]
17 [-maxpre NumberOfPreScripts] [-maxpost NumberOfPostScripts] [-notifica‐
18 tion value] [-noeventchecks ] [-allowlogerror ] [-r schedd_name]
19 [-debug level] [-usedagdir ] [-outfile_dir directory] [-config Config‐
20 FileName] [-insert_sub_file FileName] [-append Command] [-batch-name
21 batch_name] [-autorescue 0|1] [-dorescuefrom number] [-allowversionmis‐
22 match ] [-no_recurse ] [-do_recurse ] [-update_submit ] [-import_env ]
23 [-DumpRescue ] [-valgrind ] [-DontAlwaysRunPost ] [-AlwaysRunPost ]
24 [-priority number] [-dont_use_default_node_log ] [-schedd-dae‐
25 mon-ad-file FileName] [-schedd-address-file FileName] [-suppress_noti‐
26 fication ] [-dont_suppress_notification ] [-DoRecovery ] DAGInputFile1
27 [DAGInputFile2 ...DAGInputFileN ]
28
30 condor_submit_dag is the program for submitting a DAG (directed acyclic
31 graph) of jobs for execution under HTCondor. The program enforces the
32 job dependencies defined in one or more DAGInputFile s. Each DAGInput‐
33 File contains commands to direct the submission of jobs implied by the
34 nodes of a DAG to HTCondor. Extensive documentation is in the HTCondor
35 User Manual section on DAGMan.
36
37
38
39 Some options may be specified on the command line or in the configura‐
40 tion or in a node job's submit description file. Precedence is given to
41 command line options or configuration over settings from a submit
42 description file. An example is e-mail notifications. When configura‐
43 tion variable DAGMAN_SUPPRESS_NOTIFICATION
44 is its default value of True, and a node job's submit description
45 file contains
46
47 notification = Complete
48
49 e-mail will not be sent upon completion, as the value of DAGMAN_SUP‐
50 PRESS_NOTIFICATION is enforced.
51
53 -help Display usage information and exit.
54
55 -version
56 Display version information and exit.
57
58 -no_submit
59 Produce the HTCondor submit description file for DAGMan, but
60 do not submit DAGMan as an HTCondor job.
61
62 -verbose
63 Cause condor_submit_dag to give verbose error messages.
64
65 -force Require condor_submit_dag to overwrite the files that it pro‐
66 duces, if the files already exist. Note that dagman.out will
67 be appended to, not overwritten. If new-style rescue DAG mode
68 is in effect, and any new-style rescue DAGs exist, the -force
69 flag will cause them to be renamed, and the original DAG will
70 be run. If old-style rescue DAG mode is in effect, any exist‐
71 ing old-style rescue DAGs will be deleted, and the original
72 DAG will be run.
73
74 -maxidle NumberOfProcs
75 Sets the maximum number of idle procs allowed before con‐
76 dor_dagman stops submitting more node jobs. Note that for
77 this argument, each individual proc within a cluster counts
78 as a towards the limit, which is inconsistent with -maxjobs .
79 Once idle procs start to run, condor_dagman will resume sub‐
80 mitting jobs once the number of idle procs falls below the
81 specified limit. NumberOfProcs is a non-negative integer. If
82 this option is omitted, the number of idle procs is limited
83 by the configuration variable DAGMAN_MAX_JOBS_IDLE
84 (see admin-manual/configuration-macros:configuration file
85 entries for dagman), which defaults to 1000. To disable this
86 limit, set NumberOfProcs to 0. Note that submit description
87 files that queue multiple procs can cause the NumberOfProcs
88 limit to be exceeded. Setting queue 5000 in the submit
89 description file, where -maxidle is set to 250 will result in
90 a cluster of 5000 new procs being submitted to the con‐
91 dor_schedd, not 250. In this case, condor_dagman will resume
92 submitting jobs when the number of idle procs falls below
93 250.
94
95 -maxjobs NumberOfClusters
96 Sets the maximum number of clusters within the DAG that will
97 be submitted to HTCondor at one time. Note that for this
98 argument, each cluster counts as one job, no matter how many
99 individual procs are in the cluster. NumberOfClusters is a
100 non-negative integer. If this option is omitted, the number
101 of clusters is limited by the configuration variable DAG‐
102 MAN_MAX_JOBS_SUBMITTED
103 (see admin-manual/configuration-macros:configuration file
104 entries for dagman), which defaults to 0 (unlimited).
105
106 -dagman DagmanExecutable
107 Allows the specification of an alternate condor_dagman exe‐
108 cutable to be used instead of the one found in the user's
109 path. This must be a fully qualified path.
110
111 -maxpre NumberOfPreScripts
112 Sets the maximum number of PRE scripts within the DAG that
113 may be running at one time. NumberOfPreScripts is a non-nega‐
114 tive integer. If this option is omitted, the number of PRE
115 scripts is limited by the configuration variable DAG‐
116 MAN_MAX_PRE_SCRIPTS (see admin-manual/configura‐
117 tion-macros:configuration file entries for dagman), which
118 defaults to 20.
119
120 -maxpost NumberOfPostScripts
121 Sets the maximum number of POST scripts within the DAG that
122 may be running at one time. NumberOfPostScripts is a non-neg‐
123 ative integer. If this option is omitted, the number of POST
124 scripts is limited by the configuration variable DAG‐
125 MAN_MAX_POST_SCRIPTS
126 (see admin-manual/configuration-macros:configuration file
127 entries for dagman), which defaults to 20.
128
129 -notification value
130 Sets the e-mail notification for DAGMan itself. This informa‐
131 tion will be used within the HTCondor submit description file
132 for DAGMan. This file is produced by condor_submit_dag. See
133 the description of notification within condor_submit manual
134 page for a specification of value.
135
136 -noeventchecks
137 This argument is no longer used; it is now ignored. Its func‐
138 tionality is now implemented by the DAGMAN_ALLOW_EVENTS con‐
139 figuration variable.
140
141 -allowlogerror
142 As of verson 8.5.5 this argument is no longer supported, and
143 setting it will generate a warning.
144
145 -r schedd_name
146 Submit condor_dagman to a remote machine, specifically the
147 condor_schedd daemon on that machine. The condor_dagman job
148 will not run on the local condor_schedd (the submit machine),
149 but on the specified one. This is implemented using the
150 -remote option to condor_submit. Note that this option does
151 not currently specify input files for condor_dagman, nor the
152 individual nodes to be taken along! It is assumed that any
153 necessary files will be present on the remote computer, pos‐
154 sibly via a shared file system between the local computer and
155 the remote computer. It is also necessary that the user has
156 appropriate permissions to submit a job to the remote
157 machine; the permissions are the same as those required to
158 use condor_submit 's -remote option. If other options are
159 desired, including transfer of other input files, consider
160 using the -no_submit option, modifying the resulting submit
161 file for specific needs, and then using condor_submit on
162 that.
163
164 -debug level
165 Passes the the level of debugging output desired to con‐
166 dor_dagman. level is an integer, with values of 0-7 inclu‐
167 sive, where 7 is the most verbose output. See the condor_dag‐
168 man manual page for detailed descriptions of these values. If
169 not specified, no -debug v alue is passed to condor_dagman.
170
171 -usedagdir
172 This optional argument causes condor_dagman to run each spec‐
173 ified DAG as if condor_submit_dag had been run in the direc‐
174 tory containing that DAG file. This option is most useful
175 when running multiple DAGs in a single condor_dagman. Note
176 that the -usedagdir flag must not be used when running an
177 old-style Rescue DAG.
178
179 -outfile_dir directory
180 Specifies the directory in which the .dagman.out file will be
181 written. The directory may be specified relative to the cur‐
182 rent working directory as condor_submit_dag is executed, or
183 specified with an absolute path. Without this option, the
184 .dagman.out file is placed in the same directory as the first
185 DAG input file listed on the command line.
186
187 -config ConfigFileName
188 Specifies a configuration file to be used for this DAGMan
189 run. Note that the options specified in the configuration
190 file apply to all DAGs if multiple DAGs are specified. Fur‐
191 ther note that it is a fatal error if the configuration file
192 specified by this option conflicts with a configuration file
193 specified in any of the DAG files, if they specify one.
194
195 -insert_sub_file FileName
196 Specifies a file to insert into the .condor.sub file created
197 by condor_submit_dag. The specified file must contain only
198 legal submit file commands. Only one file can be inserted.
199 (If both the DAGMAN_INSERT_SUB_FILE configuration variable
200 and -insert_sub_file are specified, -insert_sub_file over‐
201 rides DAGMAN_INSERT_SUB_FILE.) The specified file is inserted
202 into the .condor.sub file before the Queue command and before
203 any commands specified with the -append option.
204
205 -append Command
206 Specifies a command to append to the .condor.sub file created
207 by condor_submit_dag. The specified command is appended to
208 the .condor.sub file immediately before the Queue command.
209 Multiple commands are specified by using the -append option
210 multiple times. Each new command is given in a separate
211 -append option. Commands with spaces in them must be
212 enclosed in double quotes. Commands specified with the
213 -append option are appended to the .condor.sub file after
214 commands inserted from a file specified by the
215 -insert_sub_file option or the DAGMAN_INSERT_SUB_FILE config‐
216 uration variable, so the -append command(s) will override
217 commands from the inserted file if the commands conflict.
218
219 -batch-name batch_name
220 Set the batch name for this DAG/workflow. The batch name is
221 displayed by condor_q -batch. It is intended for use by users
222 to give meaningful names to their workflows and to influence
223 how condor_q groups jobs for display. As of version 8.5.5,
224 the batch name set with this argument is propagated to all
225 node jobs of the given DAG (including sub-DAGs), overriding
226 any batch names set in the individual submit files. Note: set
227 the batch name to ' ' (space) to avoid overriding batch names
228 specified in node job submit files. If no batch name is set,
229 the batch name defaults to DagFile +cluster (where DagFile is
230 the primary DAG file of the top-level DAGMan, and cluster is
231 the HTCondor cluster of the top-level DAGMan); the default
232 will override any lower-level batch names.
233
234 -autorescue 0|1
235 Whether to automatically run the newest rescue DAG for the
236 given DAG file, if one exists (0 = false, 1 = true).
237
238 -dorescuefrom number
239 Forces condor_dagman to run the specified rescue DAG number
240 for the given DAG. A value of 0 is the same as not specifying
241 this option. Specifying a non-existent rescue DAG is a fatal
242 error.
243
244 -allowversionmismatch
245 This optional argument causes condor_dagman to allow a ver‐
246 sion mismatch between condor_dagman itself and the .con‐
247 dor.sub file produced by condor_submit_dag (or, in other
248 words, between condor_submit_dag and condor_dagman). WARNING!
249 This option should be used only if absolutely necessary.
250 Allowing version mismatches can cause subtle problems when
251 running DAGs. (Note that, starting with version 7.4.0, con‐
252 dor_dagman no longer requires an exact version match between
253 itself and the .condor.sub file. Instead, a "minimum compat‐
254 ible version" is defined, and any .condor.sub file of that
255 version or newer is accepted.)
256
257 -no_recurse
258 This optional argument causes condor_submit_dag to not run
259 itself recursively on nested DAGs (this is now the default;
260 this flag has been kept mainly for backwards compatibility).
261
262 -do_recurse
263 This optional argument causes condor_submit_dag to run itself
264 recursively on nested DAGs. The default is now that it does
265 not run itself recursively; instead the .condor.sub files for
266 nested DAGs are generated "lazily" by condor_dagman itself.
267 DAG nodes specified with the SUBDAG EXTERNAL keyword or with
268 submit file names ending in .condor.sub are considered nested
269 DAGs. The DAGMAN_GENERATE_SUBDAG_SUBMITS configuration vari‐
270 able may be relevant.
271
272 -update_submit
273 This optional argument causes an existing .condor.sub file to
274 not be treated as an error; rather, the .condor.sub file will
275 be overwritten, but the existing values of -maxjobs, -maxi‐
276 dle, -maxpre, and -maxpost will be preserved.
277
278 -import_env
279 This optional argument causes condor_submit_dag to import the
280 current environment into the environment command of the .con‐
281 dor.sub file it generates.
282
283 -DumpRescue
284 This optional argument tells condor_dagman to immediately
285 dump a rescue DAG and then exit, as opposed to actually run‐
286 ning the DAG. This feature is mainly intended for testing.
287 The Rescue DAG file is produced whether or not there are
288 parse errors reading the original DAG input file. The name of
289 the file differs if there was a parse error.
290
291 -valgrind
292 This optional argument causes the submit description file
293 generated for the submission of condor_dagman to be modified.
294 The executable becomes valgrind run on condor_dagman, with a
295 specific set of arguments intended for testing condor_dagman.
296 Note that this argument is intended for testing purposes
297 only. Using the -valgrind option without the necessary val‐
298 grind software installed will cause the DAG to fail. If the
299 DAG does run, it will run much more slowly than usual.
300
301 -DontAlwaysRunPost
302 This option causes the submit description file generated for
303 the submission of condor_dagman to be modified. It causes
304 condor_dagman to not run the POST script of a node if the PRE
305 script fails. (This was the default behavior prior to HTCon‐
306 dor version 7.7.2, and is again the default behavior from
307 version 8.5.4 onwards.)
308
309 -AlwaysRunPost
310 This option causes the submit description file generated for
311 the submission of condor_dagman to be modified. It causes
312 condor_dagman to always run the POST script of a node, even
313 if the PRE script fails. (This was the default behavior for
314 HTCondor version 7.7.2 through version 8.5.3.)
315
316 -priority number
317 Sets the minimum job priority of node jobs submitted and run‐
318 ning under the condor_dagman job submitted by this con‐
319 dor_submit_dag command.
320
321 -dont_use_default_node_log
322 This option is disabled as of HTCondor version 8.3.1. This
323 causes a compatibility error if the HTCondor version number
324 of the condor_schedd is 7.9.0 or older. Tells condor_dagman
325 to use the file specified by the job ClassAd attribute User‐
326 Log to monitor job status. If this command line argument is
327 used, then the job event log file cannot be defined with a
328 macro.
329
330 -schedd-daemon-ad-file FileName
331 Specifies a full path to a daemon ad file dropped by a con‐
332 dor_schedd. Therefore this allows submission to a specific
333 scheduler if several are available without repeatedly query‐
334 ing the condor_collector. The value for this argument
335 defaults to the configuration attribute SCHEDD_DAE‐
336 MON_AD_FILE.
337
338 -schedd-address-file FileName
339 Specifies a full path to an address file dropped by a con‐
340 dor_schedd. Therefore this allows submission to a specific
341 scheduler if several are available without repeatedly query‐
342 ing the condor_collector. The value for this argument
343 defaults to the configuration attribute SCHEDD_ADDRESS_FILE.
344
345 -suppress_notification
346 Causes jobs submitted by condor_dagman to not send email
347 notification for events. The same effect can be achieved by
348 setting configuration variable DAGMAN_SUPPRESS_NOTIFICATION
349 to True. This command line option is independent of the
350 -notification command line option, which controls notifica‐
351 tion for the condor_dagman job itself.
352
353 -dont_suppress_notification
354 Causes jobs submitted by condor_dagman to defer to content
355 within the submit description file when deciding to send
356 email notification for events. The same effect can be
357 achieved by setting configuration variable DAGMAN_SUP‐
358 PRESS_NOTIFICATION
359 to False. This command line flag is independent of the
360 -notification command line option, which controls notifica‐
361 tion for the condor_dagman job itself. If both -dont_sup‐
362 press_notification and -suppress_notification are specified
363 with the same command line, the last argument is used.
364
365 -DoRecovery
366 Causes condor_dagman to start in recovery mode. (This means
367 that it reads the relevant job user log(s) and "catches up"
368 to the given DAG's previous state before submitting any new
369 jobs.)
370
372 condor_submit_dag will exit with a status value of 0 (zero) upon suc‐
373 cess, and it will exit with the value 1 (one) upon failure.
374
376 To run a single DAG:
377
378 % condor_submit_dag diamond.dag
379
380 To run a DAG when it has already been run and the output files exist:
381
382 % condor_submit_dag -force diamond.dag
383
384 To run a DAG, limiting the number of idle node jobs in the DAG to a
385 maximum of five:
386
387 % condor_submit_dag -maxidle 5 diamond.dag
388
389 To run a DAG, limiting the number of concurrent PRE scripts to 10 and
390 the number of concurrent POST scripts to five:
391
392 % condor_submit_dag -maxpre 10 -maxpost 5 diamond.dag
393
394 To run two DAGs, each of which is set up to run in its own directory:
395
396 % condor_submit_dag -usedagdir dag1/diamond1.dag dag2/diamond2.dag
397
399 HTCondor Team
400
402 1990-2020, Center for High Throughput Computing, Computer Sciences
403 Department, University of Wisconsin-Madison, Madison, WI, US. Licensed
404 under the Apache License, Version 2.0.
405
406
407
408
4098.8 Aug 06, 2020 CONDOR_SUBMIT_DAG(1)