From: Steve Hancock Date: Mon, 6 Feb 2023 01:33:33 +0000 (-0800) Subject: add iteration convergence statistics X-Git-Tag: 20230309~34 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=3ac50133c1f04483d209a7d65d06a802d90d6338;p=perltidy.git add iteration convergence statistics --- diff --git a/dev-bin/run_convergence_tests.pl b/dev-bin/run_convergence_tests.pl index 5562161a..88224335 100755 --- a/dev-bin/run_convergence_tests.pl +++ b/dev-bin/run_convergence_tests.pl @@ -327,6 +327,10 @@ sub run_test_cases { } my @skipped_cases; + my $run_count = 0; + my $iteration_total = 0; + my $iteration_maximum = 0; + my $iteration_maximum_case = ""; foreach my $sname ( sort @selected_cases ) { # remove any old tmp files for this case @@ -405,6 +409,14 @@ sub run_test_cases { $rexpect_files->{$sname} = $output; } print "$sname: converged on iteration $iteration $msg\n"; + + $run_count++; + $iteration_total += $iteration; + if ( $iteration > $iteration_maximum ) { + $iteration_maximum = $iteration; + $iteration_maximum_case = $sname; + } + last; } elsif ( $iteration < $iteration_max ) { @@ -431,7 +443,18 @@ sub run_test_cases { } } - print "...\n"; + print "-" x 31 . "\n"; + if ( $run_count > 0 ) { + my $iteration_mean = sprintf( "%.2f", $iteration_total / $run_count ); + my $spaces = " " x length($iteration_maximum_case); + print <> +$spaces converged on iteration $iteration_mean (average) +$iteration_maximum_case: converged on iteration $iteration_maximum (max) +EOM + } + + print "-" x 31 . "\n"; if (@failed_to_converge) { print <