Skip to content

Commit fb4f4bc

Browse files
Add module to compute standalone score
1 parent c273c1b commit fb4f4bc

File tree

2 files changed

+67
-0
lines changed

2 files changed

+67
-0
lines changed

mlperf_logging/result_summarizer/compute_score/__init__.py

Whitespace-only changes.
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
from .. import result_summarizer
2+
from ...compliance_checker.mlp_compliance import usage_choices, rule_choices
3+
import argparse
4+
5+
6+
def get_compute_args():
7+
parser = argparse.ArgumentParser(
8+
prog="mlperf_logging.result_summarizer.compute_score",
9+
description="Compute the score of a single benchmark",
10+
)
11+
parser.add_argument("benchmark", type=str, help="TODO:", required=True)
12+
parser.add_argument("system", type=str, help="System name", default=None)
13+
parser.add_argument(
14+
"has_power", action="store_true", help="Compute power score as well"
15+
)
16+
parser.add_argument(
17+
"benchmark_folder", type=str, help="Folder containing all the result files", required=True
18+
)
19+
parser.add_argument(
20+
"usage",
21+
type=str,
22+
default="training",
23+
choices=usage_choices(),
24+
help="the usage such as training, hpc, inference_edge, inference_server",
25+
required=True,
26+
)
27+
parser.add_argument(
28+
"ruleset",
29+
type=str,
30+
choices=rule_choices(),
31+
help="the ruleset such as 0.6.0, 0.7.0, or 1.0.0",
32+
required=True,
33+
)
34+
35+
parser.add_argument(
36+
"weak_scaling", action="store_true", help="Compute weak scaling score"
37+
)
38+
39+
return parser.parse_args()
40+
41+
42+
args = get_compute_args()
43+
44+
if args.weak_scaling:
45+
scores, power_scores = result_summarizer._compute_weak_score_standalone(
46+
args.benchmark,
47+
args.system,
48+
args.has_power,
49+
args.benchmark_folder,
50+
args.usage,
51+
args.ruleset,
52+
)
53+
print(f"Scores: {scores}")
54+
if power_scores:
55+
print(f"Power Scores: {power_scores}")
56+
else:
57+
score, power_score = result_summarizer._compute_strong_score_standalone(
58+
args.benchmark,
59+
args.system,
60+
args.has_power,
61+
args.benchmark_folder,
62+
args.usage,
63+
args.ruleset,
64+
)
65+
print(f"Score: {score}")
66+
if power_score:
67+
print(f"Power Score: {power_score}")

0 commit comments

Comments
 (0)