3333 STDDEV_CHECK_ATOL_DEFAULT ,
3434 STDDEV_CHECK_RTOL_DEFAULT ,
3535)
36- from iree .turbine .kernel .boo .driver .utils import get_timing_parser
36+ from iree .turbine .kernel .boo .driver .utils import get_timing_parser , resolve_timing_args
3737from iree .turbine .runtime .device import get_device_from_torch
3838
3939ZoneData = dict [str , list [float ]]
@@ -52,23 +52,23 @@ class ZoneStats(NamedTuple):
5252ZoneStatsSummary = dict [str , ZoneStats ]
5353
5454
55- def compute_auto_iters (warmup_time : float , min_time : float , iter_fallback : int ) -> int :
55+ def compute_auto_iters (warmup_time : float , min_time : float , min_iter : int ) -> int :
5656 """Compute the number of iterations needed to run for at least `min_time` seconds.
5757
58- When min_time is active (> 0), its computed iteration count takes priority
59- over --iter. The iter_fallback is only used when min_time is disabled.
58+ When min_time is active (> 0), its computed iteration count takes priority.
59+ The min_iter value is only used when min_time is disabled (i.e. via --iter) .
6060
6161 Args:
6262 warmup_time: Time in seconds for a single warmup iteration.
6363 min_time: Minimum benchmark duration in seconds.
64- iter_fallback: Fallback number of iterations when min_time is disabled (from --iter).
64+ min_iter: Number of iterations when min_time is disabled (from --min -iter).
6565
6666 Returns:
6767 The iteration count to use.
6868 """
6969 if warmup_time > 0 and min_time > 0 :
7070 return math .ceil (min_time / warmup_time )
71- return iter_fallback
71+ return min_iter
7272
7373
7474def _get_main_driver_parser () -> argparse .ArgumentParser :
@@ -267,6 +267,7 @@ def main(args: list[str] = sys.argv[1:]) -> int:
267267 else :
268268 print ("Running test :" , test_count )
269269 timing_args , runner_args = timing_parser .parse_known_args (driver_args )
270+ resolve_timing_args (timing_args )
270271 csv_row .append (shlex .join (driver_args ))
271272 signature = BooOpRegistry .parse_command (runner_args )
272273
@@ -550,15 +551,16 @@ def pause_and_collect_mem():
550551 # Auto-adjust iteration count: ensure benchmark runs for at least min_time seconds.
551552 if timing_args .time :
552553 actual_iters = compute_auto_iters (
553- warmup_time , timing_args .min_time , timing_args .iter
554+ warmup_time , timing_args .min_time , timing_args .min_iter
554555 )
555556 else :
556- actual_iters = timing_args .iter
557+ actual_iters = timing_args .min_iter
557558
558- if verbose and actual_iters != timing_args .iter :
559+ if verbose and actual_iters != timing_args .min_iter :
559560 print (
560561 f">>>\t Auto-adjusted iterations: { actual_iters } "
561- f"(warmup: { warmup_time :.4f} s, target: { timing_args .min_time :.1f} s, floor: { timing_args .iter } )"
562+ f"(warmup: { warmup_time :.4f} s, target: { timing_args .min_time :.1f} s, "
563+ f"min-iter: { timing_args .min_iter } )"
562564 )
563565
564566 output_num_bytes = sum (x .element_size () * x .numel () for x in example_results )
0 commit comments