| # benchmark |
| |
| This application connects to another mojo application, collects traces during |
| indicated period of time and computes a number of results based on the collected |
| traces. It can be used to measure performance of a mojo app, provided that the |
| app being benchmarked participates in the [tracing |
| ecosystem](../../mojo/services/tracing/public/interfaces/tracing.mojom). |
| |
| ## Arguments |
| |
| The benchmarking app expects the following arguments: |
| |
| - `--app=<app_url>` - url of the application to be benchmarked |
| - `--duration=<duration_seconds>` - duration of the benchmark in seconds |
| |
| any other arguments are assumed to be descriptions of measurements to be |
| conducted on the collected trace data. Each measurement has to be of form: |
| `<measurement_type>/<trace_event_category>/<trace_event_name>`. |
| |
| The following measurement types are available: |
| |
| - `time_until` - measures time until the first occurence of the event named |
| `trace_event_name` in category `trace_event_category`. |
| - `avg_duration` - measures average duration of all events named |
| `trace_event_name` in category `trace_event_category`. |
| |
| ## Runner script |
| |
| Devtools offers [a helper script](../../mojo/devtools/common/mojo_benchmark) |
| allowing to run a list of benchmarks, including on an Android device. |