xref: /aosp_15_r20/external/pytorch/benchmarks/dynamo/check_csv.py (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
1import argparse
2import sys
3import textwrap
4
5import pandas as pd
6
7
8def check_csv(filename):
9    """
10    Basic accuracy checking.
11    """
12
13    df = pd.read_csv(filename)
14
15    failed = []
16    for _, row in df.iterrows():
17        model_name = row["name"]
18        status = row["accuracy"]
19        if "pass" not in status:
20            failed.append(model_name)
21
22        print(f"{model_name:34} {status}")
23
24    if failed:
25        print(
26            textwrap.dedent(
27                f"""
28                Error {len(failed)} models failed
29                    {' '.join(failed)}
30                """
31            )
32        )
33        sys.exit(1)
34
35
36if __name__ == "__main__":
37    parser = argparse.ArgumentParser()
38    parser.add_argument("--file", "-f", type=str, help="csv file name")
39    args = parser.parse_args()
40    check_csv(args.file)
41