Skip to content

Commit d6890dd

Browse files
Log results summary to terminal
1 parent 1fea7bc commit d6890dd

File tree

1 file changed

+123
-16
lines changed
  • tools/submission/submission_checker

1 file changed

+123
-16
lines changed

tools/submission/submission_checker/main.py

Lines changed: 123 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,14 @@ def main():
103103

104104
loader = Loader(args.input, args.version)
105105
exporter = ResultExporter(args.csv, config)
106+
results = {}
107+
systems = {}
108+
for division in ["closed", "open", "network"]:
109+
systems[division] = {}
110+
systems[division]["power"] = {}
111+
systems[division]["non_power"] = {}
112+
113+
# Main loop over all the submissions
106114
for logs in loader.load():
107115
# Initialize check classes
108116
performance_checks = PerformanceCheck(log, logs.loader_data["perf_path"], config, logs)
@@ -120,12 +128,28 @@ def main():
120128
valid &= power_checks()
121129
# Add results to summary
122130
if valid:
131+
# Results dictionary
132+
results[logs.loader_data.get("perf_path")] = logs.loader_data.get("performance_metric")
133+
# System dictionary
134+
system_id = logs.loader_data.get("system")
135+
if os.path.exists(logs.loader_data.get("power_dir_path", "")):
136+
if system_id in systems[logs.loader_data.get("division")]["power"]:
137+
systems[logs.loader_data.get("division")]["power"][system_id] += 1
138+
else:
139+
systems[logs.loader_data.get("division")]["power"][system_id] = 1
140+
else:
141+
if system_id in systems[logs.loader_data.get("division")]["non_power"]:
142+
systems[logs.loader_data.get("division")]["non_power"][system_id] += 1
143+
else:
144+
systems[logs.loader_data.get("division")]["non_power"][system_id] = 1
145+
# CSV exporter
123146
exporter.add_result(logs)
147+
else:
148+
results[logs.loader_data.get("perf_path")] = None
124149
# Export results
125150
exporter.export()
126151

127152
# log results
128-
results = {}
129153
log.info("---")
130154
with_results = 0
131155
for k, v in sorted(results.items()):
@@ -138,51 +162,134 @@ def main():
138162
log.error("NoResults %s", k)
139163

140164

165+
closed_systems = systems.get("closed", {})
166+
open_systems = systems.get("open", {})
167+
network_systems = systems.get("network", {})
168+
closed_power_systems = closed_systems.get("power", {})
169+
closed_non_power_systems = closed_systems.get("non_power", {})
170+
open_power_systems = open_systems.get("power", {})
171+
open_non_power_systems = open_systems.get("non_power", {})
172+
network_power_systems = network_systems.get("power", {})
173+
network_non_power_systems = network_systems.get("non_power", {})
174+
175+
number_closed_power_systems = len(closed_power_systems)
176+
number_closed_non_power_systems = len(closed_non_power_systems)
177+
number_closed_systems = (
178+
number_closed_power_systems + number_closed_non_power_systems
179+
)
180+
number_open_power_systems = len(open_power_systems)
181+
number_open_non_power_systems = len(open_non_power_systems)
182+
number_open_systems = number_open_power_systems + number_open_non_power_systems
183+
number_network_power_systems = len(network_power_systems)
184+
number_network_non_power_systems = len(network_non_power_systems)
185+
number_network_systems = (
186+
number_network_power_systems + number_network_non_power_systems
187+
)
188+
189+
def merge_two_dict(x, y):
190+
z = x.copy()
191+
for key in y:
192+
if key not in z:
193+
z[key] = y[key]
194+
else:
195+
z[key] += y[key]
196+
return z
197+
198+
# systems can be repeating in open, closed and network
199+
unique_closed_systems = merge_two_dict(
200+
closed_power_systems, closed_non_power_systems
201+
)
202+
unique_open_systems = merge_two_dict(
203+
open_power_systems, open_non_power_systems)
204+
unique_network_systems = merge_two_dict(
205+
network_power_systems, network_non_power_systems
206+
)
207+
208+
unique_systems = merge_two_dict(unique_closed_systems, unique_open_systems)
209+
unique_systems = merge_two_dict(unique_systems, unique_network_systems)
210+
211+
# power systems can be repeating in open, closed and network
212+
unique_power_systems = merge_two_dict(
213+
closed_power_systems, open_power_systems)
214+
unique_power_systems = merge_two_dict(
215+
unique_power_systems, network_power_systems)
216+
217+
number_systems = len(unique_systems)
218+
number_power_systems = len(unique_power_systems)
219+
220+
# Counting the number of closed,open and network results
221+
def sum_dict_values(x):
222+
count = 0
223+
for key in x:
224+
count += x[key]
225+
return count
226+
227+
count_closed_power_results = sum_dict_values(closed_power_systems)
228+
count_closed_non_power_results = sum_dict_values(closed_non_power_systems)
229+
count_closed_results = count_closed_power_results + count_closed_non_power_results
230+
231+
count_open_power_results = sum_dict_values(open_power_systems)
232+
count_open_non_power_results = sum_dict_values(open_non_power_systems)
233+
count_open_results = count_open_power_results + count_open_non_power_results
234+
235+
count_network_power_results = sum_dict_values(network_power_systems)
236+
count_network_non_power_results = sum_dict_values(
237+
network_non_power_systems)
238+
count_network_results = (
239+
count_network_power_results + count_network_non_power_results
240+
)
241+
242+
count_power_results = (
243+
count_closed_power_results
244+
+ count_open_power_results
245+
+ count_network_power_results
246+
)
247+
141248
# print summary
142249
log.info("---")
143250
log.info(
144251
"Results=%d, NoResults=%d, Power Results=%d",
145252
with_results,
146253
len(results) - with_results,
147-
0,
254+
count_power_results,
148255
)
149256

150257
log.info("---")
151258
log.info(
152259
"Closed Results=%d, Closed Power Results=%d\n",
153-
0,
154-
0,
260+
count_closed_results,
261+
count_closed_power_results,
155262
)
156263
log.info(
157264
"Open Results=%d, Open Power Results=%d\n",
158-
0,
159-
0,
265+
count_open_results,
266+
count_open_power_results,
160267
)
161268
log.info(
162269
"Network Results=%d, Network Power Results=%d\n",
163-
0,
164-
0,
270+
count_network_results,
271+
count_network_power_results,
165272
)
166273
log.info("---")
167274

168275
log.info(
169276
"Systems=%d, Power Systems=%d",
170-
0,
171-
0)
277+
number_systems,
278+
number_power_systems)
172279
log.info(
173280
"Closed Systems=%d, Closed Power Systems=%d",
174-
0,
175-
0,
281+
number_closed_systems,
282+
number_closed_power_systems,
176283
)
177284
log.info(
178285
"Open Systems=%d, Open Power Systems=%d",
179-
0,
180-
0,
286+
number_open_systems,
287+
number_open_power_systems,
181288
)
182289
log.info(
183290
"Network Systems=%d, Network Power Systems=%d",
184-
0,
185-
0,
291+
number_network_systems,
292+
number_network_power_systems,
186293
)
187294
log.info("---")
188295
if len(results) != with_results:

0 commit comments

Comments
 (0)