| OLD | NEW |
| (Empty) |
| 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 Bisect Tool | |
| 6 | |
| 7 This script is intended for use by anyone that wants to run a remote bisection | |
| 8 on a range of revisions to look for a performance regression. Modify the config | |
| 9 below and add the revision range, performance command, and metric. You can then | |
| 10 run a git try <bot>. | |
| 11 | |
| 12 Changes to this file should never be submitted. | |
| 13 | |
| 14 Args: | |
| 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 'good_revision': An svn or git revision where the metric hadn't regressed yet. | |
| 18 'bad_revision': An svn or git revision sometime after the metric had | |
| 19 regressed. | |
| 20 'metric': The name of the metric to parse out from the results of the | |
| 21 performance test. You can retrieve the metric by looking at the stdio of | |
| 22 the performance test. Look for lines of the format: | |
| 23 | |
| 24 RESULT <graph>: <trace>= <value> <units> | |
| 25 | |
| 26 The metric name is "<graph>/<trace>". | |
| 27 'repeat_count': The number of times to repeat the performance test. | |
| 28 'max_time_minutes': The script will attempt to run the performance test | |
| 29 "repeat_count" times, unless it exceeds "max_time_minutes". | |
| 30 'truncate_percent': Discard the highest/lowest % values from performance test. | |
| 31 | |
| 32 Sample config: | |
| 33 | |
| 34 config = { | |
| 35 'command': './tools/perf/run_measurement --browser=release blink_perf third_pa
rty/WebKit/PerformanceTests/Layout/floats_50_100.html', | |
| 36 'good_revision': '233015', | |
| 37 'bad_revision': '233115', | |
| 38 'metric': 'floats_50_100/floats_50_100', | |
| 39 'repeat_count': '20', | |
| 40 'max_time_minutes': '20', | |
| 41 'truncate_percent': '25', | |
| 42 } | |
| 43 | |
| 44 On Windows: | |
| 45 - If you're calling a python script you will need to add "python" to | |
| 46 the command: | |
| 47 | |
| 48 config = { | |
| 49 'command': 'python tools/perf/run_measurement -v --browser=release kraken', | |
| 50 'good_revision': '185319', | |
| 51 'bad_revision': '185364', | |
| 52 'metric': 'Total/Total', | |
| 53 'repeat_count': '20', | |
| 54 'max_time_minutes': '20', | |
| 55 'truncate_percent': '25', | |
| 56 } | |
| 57 | |
| 58 | |
| 59 On ChromeOS: | |
| 60 - Script accepts either ChromeOS versions, or unix timestamps as revisions. | |
| 61 - You don't need to specify --identity and --remote, they will be added to | |
| 62 the command using the bot's BISECT_CROS_IP and BISECT_CROS_BOARD values. | |
| 63 | |
| 64 config = { | |
| 65 'command': './tools/perf/run_measurement -v '\ | |
| 66 '--browser=cros-chrome-guest '\ | |
| 67 'dromaeo tools/perf/page_sets/dromaeo/jslibstylejquery.json', | |
| 68 'good_revision': '4086.0.0', | |
| 69 'bad_revision': '4087.0.0', | |
| 70 'metric': 'jslib/jslib', | |
| 71 'repeat_count': '20', | |
| 72 'max_time_minutes': '20', | |
| 73 'truncate_percent': '25', | |
| 74 } | |
| 75 | |
| 76 """ | |
| 77 | |
| 78 config = { | |
| 79 'command': '', | |
| 80 'good_revision': '', | |
| 81 'bad_revision': '', | |
| 82 'metric': '', | |
| 83 'repeat_count':'', | |
| 84 'max_time_minutes': '', | |
| 85 'truncate_percent':'', | |
| 86 } | |
| 87 | |
| 88 # Workaround git try issue, see crbug.com/257689 | |
| OLD | NEW |