From fee5f65a385c3e9f582759de91cacc9ecb05479a Mon Sep 17 00:00:00 2001 From: Eric Astor Date: Thu, 14 Aug 2025 12:33:21 -0400 Subject: [PATCH] Fix place_and_route benchmark metrics extraction --- place_and_route/private/benchmark.bzl | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/place_and_route/private/benchmark.bzl b/place_and_route/private/benchmark.bzl index 958468b4..6ae88ef0 100644 --- a/place_and_route/private/benchmark.bzl +++ b/place_and_route/private/benchmark.bzl @@ -70,21 +70,21 @@ def benchmark(ctx, open_road_info): "echo \"# proto-message: hdl.ppa.PowerPerformanceAreaProto\n\" >> {out};".format(out = benchmark_path), ] awk_cmds = [ - "area=$(cat {log} | awk '/Design area/ {{ print $3 }}');", - "util_fraction=$(cat {log} | awk -F '[ %]' '/Design area/ {{ printf(\"%.3f\", $5 / 100.0); }}');", + "area=$(cat {log} | awk '/^Design area/ {{ print $3 }}');", + "util_fraction=$(cat {log} | awk -F '[ %]' '/^Design area/ {{ printf(\"%.3f\", $5 / 100.0); }}');", "combos=$(cat {log} | awk '/combinational cell/ {{ print $4 }}');", "combos_area=$(cat {log} | awk '/combinational cell/ {{ print $5 }}');", - "seq=$(cat {log} | awk '/Sequential cell/ {{ print $3 }}');", - "seq_area=$(cat {log} | awk '/Sequential cell/ {{ print $4 }}');", - "buffs=$(cat {log} | awk '/Buffer/ {{ buffer=$2; exit }} END {{ print buffers }}');", - "buffs_area=$(cat {log} | awk '/Buffer/ {{ buffer=$2; exit }} END {{ print buffers }}');", - "tbuffs=$(cat {log} | awk '/Timing Repair Buffer/ {{ print $4 }}');", - "tbuffs_area=$(cat {log} | awk '/Timing Repair Buffer/ {{ print $4 }}');", - "inverters=$(cat {log} | awk '/Inverter/ {{ print $2 }}');", - "inverters_area=$(cat {log} | awk '/Inverter/ {{ print $2 }}');", - "wns_ps=$(cat {log} | awk '/wns/ {{ printf(\"%.0f\", $2 * 1000); }}');", - "tns_ps=$(cat {log} | awk '/tns/ {{ printf(\"%.0f\", $2 * 1000); }}');", - "period=$(cat {log} | awk '/clk / {{ period=$2; exit }} END {{ printf(\"%.0f\", period * 1000); }}');", + "seq=$(cat {log} | awk '/^\\s*Sequential cell/ {{ print $3 }}');", + "seq_area=$(cat {log} | awk '/^\\s*Sequential cell/ {{ print $4 }}');", + "buffs=$(cat {log} | awk '/^\\s*Buffer/ {{ buffer=$2; exit }} END {{ print buffer }}');", + "buffs_area=$(cat {log} | awk '/^\\s*Buffer/ {{ buffer=$3; exit }} END {{ print buffer }}');", + "tbuffs=$(cat {log} | awk '/^\\s*Timing Repair Buffer/ {{ print $4 }}');", + "tbuffs_area=$(cat {log} | awk '/^\\s*Timing Repair Buffer/ {{ print $5 }}');", + "inverters=$(cat {log} | awk '/^\\s*Inverter/ {{ print $2 }}');", + "inverters_area=$(cat {log} | awk '/^\\s*Inverter/ {{ print $3 }}');", + "wns_ps=$(cat {log} | awk '/^wns max/ {{ printf(\"%.0f\", $3 * 1000); }}');", + "tns_ps=$(cat {log} | awk '/^tns max/ {{ printf(\"%.0f\", $3 * 1000); }}');", + "period=$(cat {log} | awk '/^clk / {{ period=$2; exit }} END {{ printf(\"%.0f\", period * 1000); }}');", "cpl=$(cat {log} | awk '/period_min/ {{ cpl=$4; exit }} END {{ printf(\"%.0f\", cpl * 1000); }}');", "fmax=$(cat {log} | awk '/fmax/ {{ fmax=$7; exit }} END {{ print fmax }}');", "tot_pow=$(cat {log} | awk '/^Total / {{ total_power=$5 }} END {{ print total_power }}');",