| 77 | |
| 78 | |
| 79 | def parse_args() -> argparse.Namespace: |
| 80 | parser = argparse.ArgumentParser( |
| 81 | description="Generate markdown report and plots for Python benchmark suite" |
| 82 | ) |
| 83 | parser.add_argument( |
| 84 | "--json-file", |
| 85 | default="results/benchmark_results.json", |
| 86 | help="Benchmark JSON file produced by benchmark.py", |
| 87 | ) |
| 88 | parser.add_argument( |
| 89 | "--output-dir", |
| 90 | default="results/report", |
| 91 | help="Output directory for report and plots", |
| 92 | ) |
| 93 | parser.add_argument( |
| 94 | "--plot-prefix", |
| 95 | default="", |
| 96 | help="Optional image path prefix used in markdown", |
| 97 | ) |
| 98 | return parser.parse_args() |
| 99 | |
| 100 | |
| 101 | def load_json(path: Path) -> Dict: |