You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .ci/scripts/benchmark_tooling/README.md
+53-21Lines changed: 53 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,20 +1,48 @@
1
-
# Benchmark Tooling
1
+
# Executorch Benchmark Tooling
2
2
3
-
A library providing tools for fetching, processing, and analyzing ExecutorchBenchmark data from the HUD Open API.
3
+
A library providing tools for fetching, processing, and analyzing ExecutorchBenchmark data from the HUD Open API. This tooling helps compare performance metrics between private and public devices with identical settings.
-[Working with Output Files](#working-with-output-files-csv-and-excel)
15
+
-[Python API Usage](#python-api-usage)
16
+
-[Running Unit Tests](#running-unit-tests)
17
+
18
+
## Overview
19
+
20
+
The Executorch Benchmark Tooling provides a suite of utilities designed to:
21
+
22
+
- Fetch benchmark data from HUD Open API for specified time ranges
23
+
- Clean and process data by filtering out failures
24
+
- Compare metrics between private and public devices with matching configurations
25
+
- Generate analysis reports in various formats (CSV, Excel, JSON)
26
+
- Support filtering by device pools, backends, and models
27
+
28
+
This tooling is particularly useful for performance analysis, regression testing, and cross-device comparisons.
4
29
5
30
## Installation
6
31
7
32
Install dependencies:
33
+
8
34
```bash
9
35
pip install -r requirements.txt
10
36
```
11
37
12
38
## Tools
13
39
14
40
### get_benchmark_analysis_data.py
15
-
This script mainlu used to generate analysis data between private device and public device with same settings.
16
41
17
-
It fetches benchmark data from HUD Open API for a time range, then cleans the data with FAILURE inidcator, and retrieves all private device metrics and equivalent public device metrics based on [model, backend, device_pool_names, arch]. User can filter the data by specifying private device_pool_names, backends, and models for private devices.
42
+
This script is mainly used to generate analysis data comparing private devices with public devices using the same settings.
43
+
44
+
It fetches benchmark data from HUD Open API for a specified time range, cleans the data by removing entries with FAILURE indicators, and retrieves all private device metrics along with equivalent public device metrics based on matching [model, backend, device_pool_names, arch] configurations. Users can filter the data by specifying private device_pool_names, backends, and models.
You can use methods in `common.py` to convert the file data back to DataFrame format, those methods read the first row in csv/excel file, and return result with format list of {"groupInfo":DICT, "df":df.Dataframe{}} format.
103
+
You can use methods in `common.py` to convert the file data back to DataFrame format. These methods read the first row in CSV/Excel files and return results with the format `list of {"groupInfo":DICT, "df":df.Dataframe{}}`.
0 commit comments