@@ -288,25 +288,32 @@ def run(self):
288
288
print (_HRULE )
289
289
print ("### teardown ... " )
290
290
self ._call_attr (ATTR_TEARDOWN )
291
- warmup_iter = self .warmup if self .warmup > 0 else detect_warmup (durations )
292
- # if we cannot detect a warmup starting point but we performed some pre runs, we take a starting point
293
- # after the 10% of the first runs ...
294
- if warmup_iter < 0 and self .warmup_runs > 0 :
295
- print ("### warmup could not be detected, but %s pre-runs were executed.\n "
296
- "### we assume the benchmark is warmed up and pick an iteration "
297
- "in the first 10%% of the runs" % self .warmup_runs )
298
- warmup_iter = first_n_percent_runs (durations , 0.1 )
299
291
print ("### benchmark complete" )
300
292
print (_HRULE )
301
- print ("### BEST duration: %.3f s" % min (durations ))
302
- print ("### WORST duration: %.3f s" % max (durations ))
303
- print ("### AVG (all runs) duration: %.3f s" % (sum (durations ) / len (durations )))
304
- if warmup_iter > 0 :
305
- print ("### WARMUP %s at iteration: %d" % ("specified" if self .warmup > 0 else "detected" , warmup_iter ))
306
- no_warmup_durations = durations [warmup_iter :]
307
- print ("### AVG (no warmup) duration: %.3f s" % (sum (no_warmup_durations ) / len (no_warmup_durations )))
293
+
294
+ # summary
295
+ if self ._run_once :
296
+ print ("### SINGLE RUN duration: %.3f s" % durations [0 ])
308
297
else :
309
- print ("### WARMUP iteration not specified or could not be detected" )
298
+ print ("### BEST duration: %.3f s" % min (durations ))
299
+ print ("### WORST duration: %.3f s" % max (durations ))
300
+ print ("### AVG (all runs) duration: %.3f s" % (sum (durations ) / len (durations )))
301
+ warmup_iter = self .warmup if self .warmup > 0 else detect_warmup (durations )
302
+ # if we cannot detect a warmup starting point but we performed some pre runs, we take a starting point
303
+ # after the 10% of the first runs ...
304
+ if warmup_iter < 0 and self .warmup_runs > 0 :
305
+ print ("### warmup could not be detected, but %s pre-runs were executed.\n "
306
+ "### we assume the benchmark is warmed up and pick an iteration "
307
+ "in the first 10%% of the runs" % self .warmup_runs )
308
+ warmup_iter = first_n_percent_runs (durations , 0.1 )
309
+
310
+ if warmup_iter > 0 :
311
+ print ("### WARMUP %s at iteration: %d" % ("specified" if self .warmup > 0 else "detected" , warmup_iter ))
312
+ no_warmup_durations = durations [warmup_iter :]
313
+ print ("### AVG (no warmup) duration: %.3f s" % (sum (no_warmup_durations ) / len (no_warmup_durations )))
314
+ else :
315
+ print ("### WARMUP iteration not specified or could not be detected" )
316
+
310
317
print (_HRULE )
311
318
print ("### RAW DURATIONS: %s" % str (durations ))
312
319
print (_HRULE )
0 commit comments