Skip to content

Commit 9fa50a4

Browse files
committed
final
Signed-off-by: Yang Wang <[email protected]>
1 parent 2f604a0 commit 9fa50a4

File tree

7 files changed

+25
-7
lines changed

7 files changed

+25
-7
lines changed

.ci/scripts/benchmark_tooling/README.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,14 @@ pip install -r requirements.txt
1414

1515
Run with default output (CLI):
1616
```bash
17-
python3 get_benchmark_analysis_data.py --startTime "2025-06-11T00:00:00" --endTime "2025-06-17T18:00:00"
17+
python3 .ci/scripts/benchmark_tooling/get_benchmark_analysis_data.py --startTime "2025-06-11T00:00:00" --endTime "2025-06-17T18:00:00"
1818
```
1919

2020
Additional options:
2121
- `--silent`: Hide processing logs, show only results
2222
- `--outputType df`: Display results in DataFrame format
2323
- `--outputType excel --excelDir "{YOUR_LOCAL_DIRECTORY}"`: Generate Excel files (`res_private.xlsx` and `res_public.xlsx`)
24+
- `--outputDir "{YOUR_LOCAL_DIRECTORY}"`: Specify a custom output directory for Excel/CSV files
2425

2526
### Python API Usage
2627

@@ -33,3 +34,18 @@ fetcher = ExecutorchBenchmarkFetcher()
3334
fetcher.run()
3435
private, public = fetcher.to_df()
3536
```
37+
38+
## analyze_benchmark_stability.py
39+
`analyze_benchmark_stability.py` analyzes the stability of benchmark data, comparing the results of private and public devices.
40+
41+
### Quick Start
42+
Install dependencies:
43+
```bash
44+
pip install -r requirements.txt
45+
```
46+
47+
```
48+
python .ci/scripts/benchmark_tooling/analyze_benchmark_stability.py \
49+
Benchmark\ Dataset\ with\ Private\ AWS\ Devices.xlsx \
50+
--reference_file Benchmark\ Dataset\ with\ Public\ AWS\ Devices.xlsx
51+
```

.ci/scripts/benchmark_tooling/get_benchmark_analysis_data.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,11 @@
6161
# The abbreviations used to generate the short name for the benchmark result table
6262
# this is used to avoid the long table name issue when generating excel file (<=31 characters)
6363
ABBREVIATIONS = {
64-
"samsung": "smg",
65-
"galaxy": "gx",
66-
"ultra": "ul",
67-
"android": "and",
68-
"iphone": "ip",
64+
"samsung": "",
65+
"galaxy": "",
66+
"5g": "",
6967
"xnnpackq8": "xnnq8",
68+
"iphone15promax": "iphone15max",
7069
}
7170

7271

@@ -539,7 +538,7 @@ def find_target_tables(self, keywords, is_private) -> List[Any]:
539538
f"\n============ MATCHING Found results: {len(results)}=========\n"
540539
)
541540
for keywords, match in matchings:
542-
logging.info(f"Keywords: {keywords}: matchings: {match}")
541+
logging.info(f"Keywords: {keywords} {len(match)} matchings: {match}")
543542
return list(results.values())
544543

545544
def normalize_string(self, s, replace="_"):
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
requests>=2.32.3
22
xlsxwriter>=3.2.3
33
pandas>=2.3.0
4+
openpyxl
5+
tabulate
6+
matplotlib
18.9 KB
Binary file not shown.
27.5 KB
Binary file not shown.
165 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)