From 33a26fb78c3259acb14d9361968bfe0c6f92c5ef Mon Sep 17 00:00:00 2001 From: Ross Thompson Date: Fri, 29 Mar 2024 13:52:28 -0500 Subject: [PATCH] Updates to branch predictor collection. --- bin/parseHPMC.py | 6 +-- sim/bp-results/branch-list-gshare-local8.txt | 12 +++++ sim/bp-results/branch-list.txt | 48 +++++++++++++++----- 3 files changed, 51 insertions(+), 15 deletions(-) create mode 100644 sim/bp-results/branch-list-gshare-local8.txt diff --git a/bin/parseHPMC.py b/bin/parseHPMC.py index 0767299a3..fd4efe20e 100755 --- a/bin/parseHPMC.py +++ b/bin/parseHPMC.py @@ -330,9 +330,9 @@ def ReportAsGraph(benchmarkDict, bar, FileName): sequencies = {} for (name, typ, entries, size, value) in benchmarkDict['Mean']: if not typ in sequencies: - sequencies[typ] = [(entries if not args.size else size, value)] + sequencies[typ] = [(entries if not args.size else int(size/8), value)] else: - sequencies[typ].append((entries if not args.size else size,value)) + sequencies[typ].append((entries if not args.size else int(size/8) ,value)) # then graph the common typ as a single line+scatter plot # finally repeat for all typs of branch predictors and overlay fig, axes = plt.subplots() @@ -349,7 +349,7 @@ def ReportAsGraph(benchmarkDict, bar, FileName): axes.legend(loc='upper left') axes.set_xscale("log") axes.set_ylabel('Prediction Accuracy') - Xlabel = 'Entries' if not args.size else 'Size (bits)' + Xlabel = 'Entries' if not args.size else 'Size (bytes)' axes.set_xlabel(Xlabel) axes.set_xticks(xdata) axes.set_xticklabels(xdata) diff --git a/sim/bp-results/branch-list-gshare-local8.txt b/sim/bp-results/branch-list-gshare-local8.txt new file mode 100644 index 000000000..ef020fe30 --- /dev/null +++ b/sim/bp-results/branch-list-gshare-local8.txt @@ -0,0 +1,12 @@ +../logs/rv32gc_gshare6.log gshare 6 +../logs/rv32gc_gshare8.log gshare 8 +../logs/rv32gc_gshare10.log gshare 10 +../logs/rv32gc_gshare12.log gshare 12 +../logs/rv32gc_gshare14.log gshare 14 +../logs/rv32gc_gshare16.log gshare 16 +../logs/rv32gc_8local_basic6.log local 8 6 +../logs/rv32gc_8local_basic8.log local 8 8 +../logs/rv32gc_8local_basic10.log local 8 10 +../logs/rv32gc_8local_basic12.log local 8 12 +../logs/rv32gc_8local_basic14.log local 8 14 +../logs/rv32gc_8local_basic16.log local 8 16 diff --git a/sim/bp-results/branch-list.txt b/sim/bp-results/branch-list.txt index 10827b3b9..41f65165d 100644 --- a/sim/bp-results/branch-list.txt +++ b/sim/bp-results/branch-list.txt @@ -1,12 +1,36 @@ -../logs/bpred_GSHARE_6_16_10_0_rv32gc_embench.log gshare 6 -../logs/bpred_GSHARE_8_16_10_0_rv32gc_embench.log gshare 8 -../logs/bpred_GSHARE_10_16_10_0_rv32gc_embench.log gshare 10 -../logs/bpred_GSHARE_12_16_10_0_rv32gc_embench.log gshare 12 -../logs/bpred_GSHARE_14_16_10_0_rv32gc_embench.log gshare 14 -../logs/bpred_GSHARE_16_16_10_0_rv32gc_embench.log gshare 16 -../logs/bpred_TWOBIT_6_16_10_0_rv32gc_embench.log twobit 6 -../logs/bpred_TWOBIT_8_16_10_0_rv32gc_embench.log twobit 8 -../logs/bpred_TWOBIT_10_16_10_0_rv32gc_embench.log twobit 10 -../logs/bpred_TWOBIT_12_16_10_0_rv32gc_embench.log twobit 12 -../logs/bpred_TWOBIT_14_16_10_0_rv32gc_embench.log twobit 14 -../logs/bpred_TWOBIT_16_16_10_0_rv32gc_embench.log twobit 16 +../logs/rv32gc_gshare6.log gshare 6 +../logs/rv32gc_gshare8.log gshare 8 +../logs/rv32gc_gshare10.log gshare 10 +../logs/rv32gc_gshare12.log gshare 12 +../logs/rv32gc_gshare14.log gshare 14 +../logs/rv32gc_gshare16.log gshare 16 +../logs/rv32gc_twobit6.log twobit 6 +../logs/rv32gc_twobit8.log twobit 8 +../logs/rv32gc_twobit10.log twobit 10 +../logs/rv32gc_twobit12.log twobit 12 +../logs/rv32gc_twobit14.log twobit 14 +../logs/rv32gc_twobit16.log twobit 16 +../logs/rv32gc_global6.log global 6 +../logs/rv32gc_global8.log global 8 +../logs/rv32gc_global10.log global 10 +../logs/rv32gc_global12.log global 12 +../logs/rv32gc_global14.log global 14 +../logs/rv32gc_global16.log global 16 +../logs/rv32gc_10local_basic6.log local 10 6 +../logs/rv32gc_10local_basic8.log local 10 8 +../logs/rv32gc_10local_basic10.log local 10 10 +../logs/rv32gc_10local_basic12.log local 10 12 +../logs/rv32gc_10local_basic14.log local 10 14 +../logs/rv32gc_10local_basic16.log local 10 16 +../logs/rv32gc_4local_basic6.log local 4 6 +../logs/rv32gc_4local_basic8.log local 4 8 +../logs/rv32gc_4local_basic10.log local 4 10 +../logs/rv32gc_4local_basic12.log local 4 12 +../logs/rv32gc_4local_basic14.log local 4 14 +../logs/rv32gc_4local_basic16.log local 4 16 +../logs/rv32gc_8local_basic6.log local 8 6 +../logs/rv32gc_8local_basic8.log local 8 8 +../logs/rv32gc_8local_basic10.log local 8 10 +../logs/rv32gc_8local_basic12.log local 8 12 +../logs/rv32gc_8local_basic14.log local 8 14 +../logs/rv32gc_8local_basic16.log local 8 16