| Index: devil/docs/persistent_device_list.md
|
| diff --git a/devil/docs/persistent_device_list.md b/devil/docs/persistent_device_list.md
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..d08d9a9e897af93d79fb9f12b835fc41bb1926bc
|
| --- /dev/null
|
| +++ b/devil/docs/persistent_device_list.md
|
| @@ -0,0 +1,41 @@
|
| +<!-- Copyright 2016 The Chromium Authors. All rights reserved.
|
| + Use of this source code is governed by a BSD-style license that can be
|
| + found in the LICENSE file.
|
| +-->
|
| +
|
| +# Devil: Persistent Device List
|
| +
|
| +## What is it?
|
| +
|
| +A persistent device list that stores all expected devices between builds. It
|
| +is used by the perf test runner in order to properly shard tests by device
|
| +affinity. This is important because the same performance test can yield
|
| +meaningfully different results when run on different devices.
|
| +
|
| +## Bots
|
| +
|
| +The list is usually located at one of these locations:
|
| +
|
| + - `/b/build/site_config/.known_devices`.
|
| + - `~/.android`.
|
| +
|
| +Look at recipes listed below in order to find more up to date location.
|
| +
|
| +## Local Runs
|
| +
|
| +The persistent device list is unnecessary for local runs. It is only used on the
|
| +bots that upload data to the perf dashboard.
|
| +
|
| +## Where it is used
|
| +
|
| +The persistent device list is used in performance test recipes via
|
| +[api.chromium\_tests.steps.DynamicPerfTests](https://cs.chromium.org/chromium/build/scripts/slave/recipe_modules/chromium_tests/steps.py?q=DynamicPerfTests).
|
| +For example, the [android/perf](https://cs.chromium.org/chromium/build/scripts/slave/recipes/android/perf.py) recipe uses it like this:
|
| +
|
| +```python
|
| +dynamic_perf_tests = api.chromium_tests.steps.DynamicPerfTests(
|
| + builder['perf_id'], 'android', None,
|
| + known_devices_file=builder.get('known_devices_file', None))
|
| +dynamic_perf_tests.run(api, None)
|
| +```
|
| +
|
|
|