1# Copyright (c) 2013 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5"""Config file for Run Performance Test Bot
6
7This script is intended for use by anyone that wants to run a remote performance
8test. Modify the config below and add the command to run the performance test,
9the metric you're interested in, and repeat/discard parameters. You can then
10run a git try <bot>.
11
12Changes to this file should never be submitted.
13
14Args:
15  'command': This is the full command line to pass to the
16      bisect-perf-regression.py script in order to execute the test.
17  'metric': The name of the metric to parse out from the results of the
18      performance test. You can retrieve the metric by looking at the stdio of
19      the performance test. Look for lines of the format:
20
21      RESULT <graph>: <trace>= <value> <units>
22
23      The metric name is "<graph>/<trace>".
24  'repeat_count': The number of times to repeat the performance test.
25  'max_time_minutes': The script will attempt to run the performance test
26      "repeat_count" times, unless it exceeds "max_time_minutes".
27  'truncate_percent': Discard the highest/lowest % values from performance test.
28
29Sample config:
30
31config = {
32  'command': './out/Release/performance_ui_tests' +
33      ' --gtest_filter=PageCyclerTest.Intl1File',
34  'metric': 'times/t',
35  'repeat_count': '20',
36  'max_time_minutes': '20',
37  'truncate_percent': '25',
38}
39
40On Windows:
41  - If you're calling a python script you will need to add "python" to
42the command:
43
44config = {
45  'command': 'python tools/perf/run_measurement -v --browser=release kraken',
46  'metric': 'Total/Total',
47  'repeat_count': '20',
48  'max_time_minutes': '20',
49  'truncate_percent': '25',
50}
51
52
53On ChromeOS:
54  - Script accepts either ChromeOS versions, or unix timestamps as revisions.
55  - You don't need to specify --identity and --remote, they will be added to
56    the command using the bot's BISECT_CROS_IP and BISECT_CROS_BOARD values.
57
58config = {
59  'command': './tools/perf/run_measurement -v '\
60      '--browser=cros-chrome-guest '\
61      'dromaeo tools/perf/page_sets/dromaeo/jslibstylejquery.json',
62  'metric': 'jslib/jslib',
63  'repeat_count': '20',
64  'max_time_minutes': '20',
65  'truncate_percent': '25',
66}
67
68"""
69
70config = {
71  'command': '',
72  'metric': '',
73  'repeat_count': '',
74  'max_time_minutes': '',
75  'truncate_percent': '',
76}
77
78# Workaround git try issue, see crbug.com/257689
79