Adding scripts, commands, and logging scaffolding"
This commit is contained in:
28
scripts/30_extract_csv.sh
Normal file
28
scripts/30_extract_csv.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
set -eu
|
||||
source "$(dirname "$0")/00_env.sh"
|
||||
|
||||
CSV="$OUTROOT/phase3_summary.csv"
|
||||
echo "workload,core,dvfs,l2,drowsy,sim_seconds,ipc,cycles,insts,l2_miss_rate" > "$CSV"
|
||||
|
||||
for d in "$OUTROOT"/*; do
|
||||
[[ -d "$d" ]] || continue
|
||||
base=$(basename "$d")
|
||||
W=$(echo "$base" | cut -d'_' -f1)
|
||||
CORE=$(echo "$base" | cut -d'_' -f2)
|
||||
DVFS=$(echo "$base" | cut -d'_' -f3)
|
||||
L2=$(echo "$base" | sed -E 's/.*_l2([^_]+).*/\1/')
|
||||
DROW=$(echo "$base" | sed -E 's/.*_d([01]).*/\1/')
|
||||
S="$d/stats.txt"
|
||||
|
||||
SIMS=$(awk '/^sim_seconds/ {print $2}' "$S")
|
||||
IPC=$(awk '/^system\.cpu\.ipc|^system\.cpu0\.ipc/ {print $2}' "$S" | head -n1)
|
||||
CYC=$(awk '/^system\.cpu\.numCycles|^system\.cpu0\.numCycles/ {print $2}' "$S" | head -n1)
|
||||
INST=$(awk '/^system\.cpu\.commit\.committedInsts|^system\.cpu0\.commit\.committedInsts/ {print $2}' "$S" | head -n1)
|
||||
L2MR=$(awk '/^system\.l2\.overall_miss_rate::total/ {print $2}' "$S")
|
||||
|
||||
echo "$W,$CORE,$DVFS,$L2,$DROW,$SIMS,$IPC,$CYC,$INST,$L2MR" >> "$CSV"
|
||||
done
|
||||
|
||||
echo "[extract] wrote $CSV"
|
||||
|
||||
Reference in New Issue
Block a user