From: Ian Romanick <ian.d.roman...@intel.com> This is useful for preparing data to go in a Mesa commit message.
Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> --- report.py | 60 ++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 32 insertions(+), 28 deletions(-) diff --git a/report.py b/report.py index 003a1ee..e0068bc 100755 --- a/report.py +++ b/report.py @@ -60,6 +60,8 @@ def main(): parser.add_argument("--measurements", "-m", type=split_list, default=["instructions", "cycles", "loops", "spills", "fills"], help="comma-separated list of measurements to report") + parser.add_argument("--summary-only", "-s", action="store_true", default=False, + help="do not show the per-shader helped / hurt data") parser.add_argument("before", type=get_results, help="the output of the original code") parser.add_argument("after", type=get_results, help="the output of the new code") args = parser.parse_args() @@ -104,23 +106,24 @@ def main(): else: helped.append(p) - helped.sort( - key=lambda k: args.after[k][m] if args.before[k][m] == 0 else float(args.before[k][m] - args.after[k][m]) / args.before[k][m]) - for p in helped: - namestr = p[0] + " " + p[1] - print(m + " helped: " + get_result_string( - namestr, args.before[p][m], args.after[p][m])) - if len(helped) > 0: - print("") - - hurt.sort( - key=lambda k: args.after[k][m] if args.before[k][m] == 0 else float(args.after[k][m] - args.before[k][m]) / args.before[k][m]) - for p in hurt: - namestr = p[0] + " " + p[1] - print(m + " HURT: " + get_result_string( - namestr, args.before[p][m], args.after[p][m])) - if len(hurt) > 0: - print("") + if not args.summary_only: + helped.sort( + key=lambda k: args.after[k][m] if args.before[k][m] == 0 else float(args.before[k][m] - args.after[k][m]) / args.before[k][m]) + for p in helped: + namestr = p[0] + " " + p[1] + print(m + " helped: " + get_result_string( + namestr, args.before[p][m], args.after[p][m])) + if len(helped) > 0: + print("") + + hurt.sort( + key=lambda k: args.after[k][m] if args.before[k][m] == 0 else float(args.after[k][m] - args.before[k][m]) / args.before[k][m]) + for p in hurt: + namestr = p[0] + " " + p[1] + print(m + " HURT: " + get_result_string( + namestr, args.before[p][m], args.after[p][m])) + if len(hurt) > 0: + print("") num_helped[m] = len(helped) num_hurt[m] = len(hurt) @@ -137,17 +140,18 @@ def main(): if args.before.get(p) is None: gained.append(p[0] + " " + p[1]) - lost.sort() - for p in lost: - print("LOST: " + p) - if len(lost) > 0: - print("") - - gained.sort() - for p in gained: - print("GAINED: " + p) - if len(gained) > 0: - print("") + if not args.summary_only: + lost.sort() + for p in lost: + print("LOST: " + p) + if len(lost) > 0: + print("") + + gained.sort() + for p in gained: + print("GAINED: " + p) + if len(gained) > 0: + print("") for m in args.measurements: print("total {0} in shared programs: {1}\n" -- 2.9.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev