8
8
from analyze .lib import block_stats , compile_times
9
9
10
10
sched_time = compile_times .sched_time
11
- total_compile_time_seconds = compile_times .total_compile_time_seconds
12
11
13
12
14
13
def blocks_enumerated_optimally (blocks ):
@@ -87,9 +86,7 @@ def blk_relative_cost(nogt, gt) -> Tuple[int, int]:
87
86
return no_sum , yes_sum
88
87
89
88
90
- def compute_stats (nogt : Logs , gt : Logs , * , pass_num : int ):
91
- TOTAL_BLOCKS = utils .count (nogt )
92
-
89
+ def compute_stats (nogt : Logs , gt : Logs , * , pass_num : int , total_compile_time_seconds ):
93
90
nogt_all , gt_all = nogt , gt
94
91
95
92
if pass_num is not None :
@@ -106,7 +103,7 @@ def compute_stats(nogt: Logs, gt: Logs, *, pass_num: int):
106
103
nogt_rel , gt_rel = blk_relative_cost (nogt , gt )
107
104
108
105
result = {
109
- 'Total Blocks in Benchsuite' : TOTAL_BLOCKS ,
106
+ 'Total Blocks in Benchsuite' : utils . count ( nogt_all ) ,
110
107
'Num Blocks enumerated with & without GT' : utils .count (nogt ),
111
108
'Num Blocks proved optimal just by GT' : NUM_PROVED_OPTIMAL_WITHOUT_ENUMERATING ,
112
109
@@ -158,7 +155,11 @@ def compute_stats(nogt: Logs, gt: Logs, *, pass_num: int):
158
155
parser .add_argument ('--pass-num' , type = int , default = None , help = 'Which pass to analyze (default: all passes)' )
159
156
args = analyze .parse_args (parser , 'nogt' , 'gt' )
160
157
161
- results = utils .foreach_bench (compute_stats , args .nogt , args .gt , pass_num = args .pass_num )
158
+ results = utils .foreach_bench (
159
+ compute_stats , args .nogt , args .gt ,
160
+ pass_num = args .pass_num ,
161
+ total_compile_time_seconds = compile_times .total_compile_time_seconds_f (args .benchsuite ),
162
+ )
162
163
163
164
writer = csv .DictWriter (sys .stdout ,
164
165
fieldnames = ['Benchmark' ] + list (results ['Total' ].keys ()))
0 commit comments