blob: 49019e2e264afa47a3a729d9b03e41845f85fd00 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
# Running Telemetry Benchmarks on Fuchsia
[TOC]
General instruction on running and debugging benchmarks can be found in the
[`tools/perf/README.md`](../../tools/perf/README.md).
Fuchsia uses [web_engine_shell](../../fuchsia_web/webengine/test/README.md) to run
integration tests. Be sure to build any components you wish to deploy on your
device, along with `web_engine_shell`.
## Supported benchmarks
The list of supported benchmarks can be found in the
[bot_platforms.py](https://source.chromium.org/chromium/chromium/src/+/main:tools/perf/core/bot_platforms.py?q=_FUCHSIA_PERF_FYI_BENCHMARK_CONFIGS).
The list of stories that are skipped can be found in
[expectations.config](https://source.chromium.org/chromium/chromium/src/+/main:tools/perf/expectations.config),
with the `fuchsia` tag.
## Run on a local device
---
**NOTE** This has not been tested as these instructions were developed while
remote work was the only available option.
---
After building chromium, be sure to have a device that has gone through
OOBE attached to the host. Run the following from the chromium build
directory if you want to run a specific benchmark:
```shell
$ ../../content/test/gpu/run_telemetry_benchmark_fuchsia.py \
--browser=web-engine-shell --output-format=histograms \
--experimental-tbmv3-metrics -d
[--repo=/path/to/fuchsia/out/dir --no-repo-init] \ # Deploy custom fuchsia.
[benchmark] [--story-filter=<story name>]
```
For instance, to run the simplest story, `load:chrome:blank` from the benchmark
`system_health.memory_desktop`:
```shell
$ ../../content/test/gpu/run_telemetry_benchmark_fuchsia.py \
--browser=web-engine-shell --output-format=histograms \
--experimental-tbmv3-metrics -d system_health.memory_desktop \
--story-filter=load:chrome:blank
```
If no benchmark or filter is specified, all supported benchmarks will run.
## Run on an ephemeral emulator
If you wish to run the tests on an emulator, simply drop the `-d` flag. This
will start an emulator and run through the supported tests, like so.
```shell
$ ../../content/test/gpu/run_telemetry_benchmark_fuchsia.py \
--browser=web-engine-shell --output-format=histograms \
--experimental-tbmv3-metrics system_health.memory_desktop \
--story-filter=load:chrome:blank
```
Note that this needs to be run from an x64 build directory.
## Run on a remote device
As connecting to a device that is not connected to a workstation is more common,
this flow is what is recommended and tested.
Be sure to first open a tunnel to your device:
```shell
$ ../../content/test/gpu/run_telemetry_benchmark_fuchsia.py \
--browser=web-engine-shell --output-format=histograms \
--experimental-tbmv3-metrics -d --target-id=[::1]:8022 \
[benchmark] [--story-filter=<story name>]
```
See the above section on how to use the `benchmark` and `--story-filter`.
|