diff --git a/lib/cli.py b/lib/cli.py index 50f5363cb99e1a7ece028df3245bf67793647905..1932a009a5d937e405abba3b9bbb857be9c4ee35 100644 --- a/lib/cli.py +++ b/lib/cli.py @@ -2248,11 +2248,18 @@ class JobExecutor(object): SetGenericOpcodeOpts(ops, self.opts) self.queue.append((name, ops)) - def SubmitPending(self): + def SubmitPending(self, each=False): """Submit all pending jobs. """ - results = self.cl.SubmitManyJobs([row[1] for row in self.queue]) + if each: + results = [] + for row in self.queue: + # SubmitJob will remove the success status, but raise an exception if + # the submission fails, so we'll notice that anyway. + results.append([True, self.cl.SubmitJob(row[1])]) + else: + results = self.cl.SubmitManyJobs([row[1] for row in self.queue]) for (idx, ((status, data), (name, _))) in enumerate(zip(results, self.queue)): self.jobs.append((idx, status, data, name)) diff --git a/scripts/gnt-debug b/scripts/gnt-debug index 5dc7dc63045f3ee9fb7b7c66c5784a84381bc44a..c96deca92a9bd1021d37f93139d75cbab012702e 100755 --- a/scripts/gnt-debug +++ b/scripts/gnt-debug @@ -90,7 +90,7 @@ def GenericOpCodes(opts, args): t1 = time.time() ToStdout("Submitting...") - jex.SubmitPending() + jex.SubmitPending(each=opts.each) if opts.timing_stats: t2 = time.time() @@ -174,6 +174,8 @@ commands = { help="Repeat the job this number of times"), cli_option("--timing-stats", default=False, action="store_true", help="Show timing stats"), + cli_option("--each", default=False, action="store_true", + help="Submit each job separately"), ], "<op_list_file...>", "Submits jobs built from json files" " containing a list of serialized opcodes"),