Skip to content

Commit ffba2ed

Browse files
committed
adding utility to print placement and route data into a file
1 parent 1bee484 commit ffba2ed

File tree

1 file changed

+24
-2
lines changed

1 file changed

+24
-2
lines changed

vtr_flow/scripts/noc/noc_benchmark_test.py

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
PLACE_CPD = "Post Place CPD (ns): "
3636
NOC_AGGREGATE_BANDWIDTH_COST = "NoC BW Cost: "
3737
NOC_LATENCY_COST = "NoC Latency Cost: "
38-
NOC_LATENCY_CONSTRAINT_COST = "# NoC Latency Constraints Met: "
38+
NOC_LATENCY_CONSTRAINT_COST = "# Of NoC Latency Constraints Met: "
3939
NOC_PLACEMENT_WEIGHT = "noc_placement_weight"
4040
POST_ROUTED_WIRE_LENGTH_SEGMENTS = "Post Route WL (segments): "
4141
POST_ROUTED_FREQ = "Post Route Freq (MHz): "
@@ -615,6 +615,26 @@ def process_vpr_runs(run_args, num_of_seeds, route):
615615
return vpr_average_place_data
616616

617617

618+
def print_results(parsed_data, design_file, user_args):
619+
"""
620+
Outputs collected metrics from VPR runs into a file.
621+
"""
622+
results_file_name = (os.path.splitext(user_args.flow_file))[-2]
623+
results_file_name = (results_file_name.split("/"))[-1]
624+
results_file_name = os.path.join(os.getcwd(), results_file_name + ".txt")
625+
results_file = open(results_file_name, "w+")
626+
627+
# write out placement info individually in seperate lines
628+
results_file.write("Design File: {0}\n".format(design_file))
629+
results_file.write("Flows File: {0}\n".format(user_args.flow_file))
630+
631+
results_file.write("------------ Place & Route Info ------------\n")
632+
for metric, value in parsed_data.items():
633+
results_file.write("{0}: {1}\n".format(metric, value))
634+
635+
results_file.close()
636+
637+
618638
def execute_vpr_and_process_output(vpr_command_list, num_of_seeds, num_of_threads, route):
619639
"""
620640
Given a number of VPR run commands, execute them over a number
@@ -697,7 +717,9 @@ def execute_vpr_and_process_output(vpr_command_list, num_of_seeds, num_of_thread
697717
route=args.route,
698718
)
699719

700-
print(vpr_placement_results)
720+
print_results(
721+
parsed_data=vpr_placement_results, design_file=single_design, user_args=args
722+
)
701723

702724
# pylint: disable=broad-except
703725
except Exception as error:

0 commit comments

Comments
 (0)