Revert of Use the Chromium-side script to run the PGO benchmarks. (patchset #1 id:40001 of https://codereview.chromium.org/2421363002/ )
Reason for revert:
breaking win-pgo build
Original issue's description:
> Use the Chromium-side script to run the PGO benchmarks.
>
> BUG=309849
>
> Committed: https://chromium.googlesource.com/chromium/tools/build/+/7ae96413206814a587e3e5921017762be6257983
TBR=scottmg@chromium.org,sebmarchand@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=309849
Review-Url: https://codereview.chromium.org/2422373003
diff --git a/scripts/slave/recipe_modules/pgo/api.py b/scripts/slave/recipe_modules/pgo/api.py
index 8ff8de4..f938ab14 100644
--- a/scripts/slave/recipe_modules/pgo/api.py
+++ b/scripts/slave/recipe_modules/pgo/api.py
@@ -65,16 +65,24 @@
"""
Run a suite of telemetry benchmarks to generate some profiling data.
"""
- args = [
- '--browser-type', self.m.chromium.c.build_config_fs.lower(),
- '--target-cpu', self.m.chromium.c.gyp_env.GYP_DEFINES['target_arch'],
- '--build-dir', self.m.chromium.output_dir,
- ]
- self.m.python(
- 'Profiling benchmarks.',
- self.m.path['checkout'].join('build', 'win',
- 'run_pgo_profiling_benchmarks.py'),
- args)
+ for benchmark in _BENCHMARKS_TO_RUN:
+ try:
+ args = [
+ '--checkout-dir', self.m.path['checkout'],
+ '--browser-type', self.m.chromium.c.build_config_fs.lower(),
+ '--target-bits', self.m.chromium.c.TARGET_BITS,
+ '--build-dir', self.m.chromium.output_dir,
+ '--benchmark', benchmark,
+ ]
+ self.m.python(
+ 'Telemetry benchmark: %s' % benchmark,
+ self.resource('run_benchmark.py'),
+ args)
+ except self.m.step.StepFailure:
+ # Turn the failures into warning, we shouldn't stop the build for a
+ # benchmark.
+ step_result = self.m.step.active_result
+ step_result.presentation.status = self.m.step.WARNING
def _compile_optimized_image(self, bot_config):
"""
diff --git a/scripts/slave/recipe_modules/pgo/example.expected/full_chromium_pgo_test_Test_builder.json b/scripts/slave/recipe_modules/pgo/example.expected/full_chromium_pgo_test_Test_builder.json
index 93fc414..4c77d62 100644
--- a/scripts/slave/recipe_modules/pgo/example.expected/full_chromium_pgo_test_Test_builder.json
+++ b/scripts/slave/recipe_modules/pgo/example.expected/full_chromium_pgo_test_Test_builder.json
@@ -220,15 +220,433 @@
"cmd": [
"python",
"-u",
- "[SLAVE_BUILD]\\src\\build\\win\\run_pgo_profiling_benchmarks.py",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
"--browser-type",
"release",
- "--target-cpu",
- "ia32",
+ "--target-bits",
+ "32",
"--build-dir",
- "[SLAVE_BUILD]\\src\\out\\Release"
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibstyleprototype"
],
- "name": "Profiling benchmarks."
+ "name": "Telemetry benchmark: dromaeo.jslibstyleprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibeventprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibeventprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "speedometer"
+ ],
+ "name": "Telemetry benchmark: speedometer"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "smoothness.top_25_smooth"
+ ],
+ "name": "Telemetry benchmark: smoothness.top_25_smooth"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "octane"
+ ],
+ "name": "Telemetry benchmark: octane"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.svg"
+ ],
+ "name": "Telemetry benchmark: blink_perf.svg"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraverseprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraverseprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_style.top_25"
+ ],
+ "name": "Telemetry benchmark: blink_style.top_25"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoreattr"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoreattr"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.cssqueryjquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.cssqueryjquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibattrprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibattrprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "sunspider"
+ ],
+ "name": "Telemetry benchmark: sunspider"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoretraverse"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoretraverse"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoremodify"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoremodify"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.dom"
+ ],
+ "name": "Telemetry benchmark: blink_perf.dom"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "indexeddb_perf"
+ ],
+ "name": "Telemetry benchmark: indexeddb_perf"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.canvas"
+ ],
+ "name": "Telemetry benchmark: blink_perf.canvas"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcorequery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcorequery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.bindings"
+ ],
+ "name": "Telemetry benchmark: blink_perf.bindings"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraversejquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraversejquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibmodifyprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibmodifyprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "media.tough_video_cases"
+ ],
+ "name": "Telemetry benchmark: media.tough_video_cases"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.css"
+ ],
+ "name": "Telemetry benchmark: blink_perf.css"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.paint"
+ ],
+ "name": "Telemetry benchmark: blink_perf.paint"
},
{
"cmd": [
diff --git a/scripts/slave/recipe_modules/pgo/example.expected/full_chromium_pgo_test_Test_builder_benchmark_failure.json b/scripts/slave/recipe_modules/pgo/example.expected/full_chromium_pgo_test_Test_builder_benchmark_failure.json
new file mode 100644
index 0000000..ecab859
--- /dev/null
+++ b/scripts/slave/recipe_modules/pgo/example.expected/full_chromium_pgo_test_Test_builder_benchmark_failure.json
@@ -0,0 +1,733 @@
+[
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_PACKAGE_REPO[build]\\scripts\\slave\\kill_processes.py"
+ ],
+ "name": "taskkill"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[depot_tools::bot_update]\\resources\\bot_update.py",
+ "--spec",
+ "cache_dir = '[GIT_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': True, 'name': 'src', 'url': 'https://chromium.googlesource.com/chromium/src.git'}]",
+ "--patch_root",
+ "src",
+ "--revision_mapping_file",
+ "{\"src\": \"got_revision\", \"src/buildtools\": \"got_buildtools_revision\", \"src/native_client\": \"got_nacl_revision\", \"src/third_party/angle\": \"got_angle_revision\", \"src/third_party/webrtc\": \"got_webrtc_revision\", \"src/tools/swarming_client\": \"got_swarming_client_revision\", \"src/v8\": \"got_v8_revision\"}",
+ "--git-cache-dir",
+ "[GIT_CACHE]",
+ "--output_json",
+ "/path/to/tmp/json",
+ "--revision",
+ "src@HEAD",
+ "--output_manifest"
+ ],
+ "env": {
+ "PATH": "%(PATH)s;RECIPE_PACKAGE_REPO[depot_tools]"
+ },
+ "name": "bot_update",
+ "~followup_annotations": [
+ "@@@STEP_TEXT@Some step text@@@",
+ "@@@STEP_LOG_LINE@json.output@{@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"did_run\": true, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"fixed_revisions\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src\": \"HEAD\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"manifest\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/src.git\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"revision\": \"f27fede2220bcd326aee3e86ddfd4ebd0fe58cb9\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src/buildtools\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/src/buildtools.git\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"revision\": \"f0319a328b2809876916353cb994259692140934\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src/native_client\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/src/native_client.git\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"revision\": \"d998e125e8253980d76e269b7982aeeefc1b9b50\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src/third_party/angle\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/src/third_party/angle.git\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"revision\": \"fac9503c46405f77757b9a728eb85b8d7bc6080c\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src/third_party/webrtc\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/src/third_party/webrtc.git\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"revision\": \"0f90628433546e61d9268596da93418c623137f4\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src/tools/swarming_client\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/src/tools/swarming_client.git\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"revision\": \"a0ee5d99f1d4b38ddaa4c759c837980b63b99566\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"src/v8\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/src/v8.git\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"revision\": \"801ada225ddc271c132c3a35f03975671d43e399\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"patch_failure\": false, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"patch_root\": \"src\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"properties\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_angle_revision\": \"fac9503c46405f77757b9a728eb85b8d7bc6080c\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_angle_revision_cp\": \"refs/heads/master@{#297276}\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_buildtools_revision\": \"f0319a328b2809876916353cb994259692140934\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_buildtools_revision_cp\": \"refs/heads/master@{#182578}\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_nacl_revision\": \"d998e125e8253980d76e269b7982aeeefc1b9b50\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_nacl_revision_cp\": \"refs/heads/master@{#274981}\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_revision\": \"f27fede2220bcd326aee3e86ddfd4ebd0fe58cb9\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_revision_cp\": \"refs/heads/master@{#170242}\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_swarming_client_revision\": \"a0ee5d99f1d4b38ddaa4c759c837980b63b99566\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_swarming_client_revision_cp\": \"refs/heads/master@{#276089}\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_v8_revision\": \"801ada225ddc271c132c3a35f03975671d43e399\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_v8_revision_cp\": \"refs/heads/master@{#43426}\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_webrtc_revision\": \"0f90628433546e61d9268596da93418c623137f4\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"got_webrtc_revision_cp\": \"refs/heads/master@{#120644}\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"root\": \"src\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"step_text\": \"Some step text\"@@@",
+ "@@@STEP_LOG_LINE@json.output@}@@@",
+ "@@@STEP_LOG_END@json.output@@@",
+ "@@@SET_BUILD_PROPERTY@got_nacl_revision@\"d998e125e8253980d76e269b7982aeeefc1b9b50\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_swarming_client_revision@\"a0ee5d99f1d4b38ddaa4c759c837980b63b99566\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_buildtools_revision_cp@\"refs/heads/master@{#182578}\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_webrtc_revision@\"0f90628433546e61d9268596da93418c623137f4\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_revision@\"f27fede2220bcd326aee3e86ddfd4ebd0fe58cb9\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_nacl_revision_cp@\"refs/heads/master@{#274981}\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_angle_revision@\"fac9503c46405f77757b9a728eb85b8d7bc6080c\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_v8_revision@\"801ada225ddc271c132c3a35f03975671d43e399\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_v8_revision_cp@\"refs/heads/master@{#43426}\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_swarming_client_revision_cp@\"refs/heads/master@{#276089}\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_webrtc_revision_cp@\"refs/heads/master@{#120644}\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_revision_cp@\"refs/heads/master@{#170242}\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_angle_revision_cp@\"refs/heads/master@{#297276}\"@@@",
+ "@@@SET_BUILD_PROPERTY@got_buildtools_revision@\"f0319a328b2809876916353cb994259692140934\"@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
+ "[SLAVE_BUILD]\\src\\out\\Release"
+ ],
+ "name": "rmtree clobber",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@python.inline@@@@",
+ "@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
+ "@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
+ "@@@STEP_LOG_LINE@python.inline@@@@",
+ "@@@STEP_LOG_LINE@python.inline@@@@",
+ "@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
+ "@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
+ "@@@STEP_LOG_END@python.inline@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_PACKAGE_REPO[depot_tools]\\gclient.py",
+ "runhooks"
+ ],
+ "cwd": "[SLAVE_BUILD]\\src",
+ "env": {
+ "GOMA_SERVICE_ACCOUNT_JSON_FILE": "C:\\creds\\service_accounts\\service-account-goma-client.json",
+ "GYP_DEFINES": "buildtype=Official chrome_pgo_phase=1 component=static_library fastbuild=0 target_arch=ia32 use_goma=0",
+ "GYP_MSVS_VERSION": "2015",
+ "PATH": "[SLAVE_BUILD]\\src\\out\\Release;%(PATH)s;RECIPE_PACKAGE_REPO[depot_tools]"
+ },
+ "name": "gclient Runhooks: Instrumentation phase."
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[SLAVE_BUILD]\\src\\tools\\mb\\mb.py",
+ "gen",
+ "-m",
+ "chromium_pgo.test",
+ "-b",
+ "Test builder",
+ "--config-file",
+ "[SLAVE_BUILD]\\src\\tools\\mb\\mb_config.pyl",
+ "--phase",
+ "1",
+ "//out/Release"
+ ],
+ "cwd": "[SLAVE_BUILD]\\src",
+ "env": {
+ "GOMA_SERVICE_ACCOUNT_JSON_FILE": "C:\\creds\\service_accounts\\service-account-goma-client.json",
+ "GYP_MSVS_VERSION": "2015"
+ },
+ "name": "generate_build_files"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\nchromium_utils.RemoveFilesWildcards(sys.argv[1], root=sys.argv[2])\n",
+ "*.pg[cd]",
+ "[SLAVE_BUILD]\\src\\out\\Release"
+ ],
+ "name": "rmwildcard *.pg[cd] in [SLAVE_BUILD]\\src\\out\\Release",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@python.inline@@@@",
+ "@@@STEP_LOG_LINE@python.inline@import sys@@@",
+ "@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
+ "@@@STEP_LOG_LINE@python.inline@@@@",
+ "@@@STEP_LOG_LINE@python.inline@chromium_utils.RemoveFilesWildcards(sys.argv[1], root=sys.argv[2])@@@",
+ "@@@STEP_LOG_END@python.inline@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_PACKAGE_REPO[build]\\scripts\\tools\\runit.py",
+ "--show-path",
+ "python",
+ "RECIPE_PACKAGE_REPO[build]\\scripts\\slave\\compile.py",
+ "--gsutil-py-path",
+ "RECIPE_PACKAGE_REPO[depot_tools]\\gsutil.py",
+ "--ninja-path",
+ "RECIPE_PACKAGE_REPO[depot_tools]\\ninja.exe",
+ "--target",
+ "Release",
+ "--src-dir",
+ "[SLAVE_BUILD]\\src",
+ "--goma-cache-dir",
+ "[GOMA_CACHE]",
+ "--buildbot-buildername",
+ "Test builder",
+ "--buildbot-mastername",
+ "chromium_pgo.test",
+ "--buildbot-slavename",
+ "TestSlavename",
+ "--goma-deps-cache-file",
+ "Test_builder.gomadeps",
+ "--",
+ "chrome"
+ ],
+ "env": {
+ "GOMA_SERVICE_ACCOUNT_JSON_FILE": "C:\\creds\\service_accounts\\service-account-goma-client.json",
+ "PATH": "[SLAVE_BUILD]\\src\\out\\Release;%(PATH)s"
+ },
+ "name": "Compile: Instrumentation phase."
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibstyleprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibstyleprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibeventprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibeventprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "speedometer"
+ ],
+ "name": "Telemetry benchmark: speedometer"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "smoothness.top_25_smooth"
+ ],
+ "name": "Telemetry benchmark: smoothness.top_25_smooth"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "octane"
+ ],
+ "name": "Telemetry benchmark: octane"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.svg"
+ ],
+ "name": "Telemetry benchmark: blink_perf.svg"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraverseprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraverseprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_style.top_25"
+ ],
+ "name": "Telemetry benchmark: blink_style.top_25"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoreattr"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoreattr"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.cssqueryjquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.cssqueryjquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibattrprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibattrprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "sunspider"
+ ],
+ "name": "Telemetry benchmark: sunspider",
+ "~followup_annotations": [
+ "step returned non-zero exit code: 1",
+ "@@@STEP_WARNINGS@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoretraverse"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoretraverse"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoremodify"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoremodify"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.dom"
+ ],
+ "name": "Telemetry benchmark: blink_perf.dom"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "indexeddb_perf"
+ ],
+ "name": "Telemetry benchmark: indexeddb_perf"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.canvas"
+ ],
+ "name": "Telemetry benchmark: blink_perf.canvas"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcorequery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcorequery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.bindings"
+ ],
+ "name": "Telemetry benchmark: blink_perf.bindings"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraversejquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraversejquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibmodifyprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibmodifyprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "media.tough_video_cases"
+ ],
+ "name": "Telemetry benchmark: media.tough_video_cases"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.css"
+ ],
+ "name": "Telemetry benchmark: blink_perf.css"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.paint"
+ ],
+ "name": "Telemetry benchmark: blink_perf.paint"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_PACKAGE_REPO[depot_tools]\\gclient.py",
+ "runhooks"
+ ],
+ "cwd": "[SLAVE_BUILD]\\src",
+ "env": {
+ "GOMA_SERVICE_ACCOUNT_JSON_FILE": "C:\\creds\\service_accounts\\service-account-goma-client.json",
+ "GYP_DEFINES": "buildtype=Official chrome_pgo_phase=2 component=static_library fastbuild=0 target_arch=ia32 use_goma=0",
+ "GYP_MSVS_VERSION": "2015",
+ "PATH": "%(PATH)s;RECIPE_PACKAGE_REPO[depot_tools]"
+ },
+ "name": "gclient Runhooks: Optimization phase."
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[SLAVE_BUILD]\\src\\tools\\mb\\mb.py",
+ "gen",
+ "-m",
+ "chromium_pgo.test",
+ "-b",
+ "Test builder",
+ "--config-file",
+ "[SLAVE_BUILD]\\src\\tools\\mb\\mb_config.pyl",
+ "--phase",
+ "2",
+ "//out/Release"
+ ],
+ "cwd": "[SLAVE_BUILD]\\src",
+ "env": {
+ "GOMA_SERVICE_ACCOUNT_JSON_FILE": "C:\\creds\\service_accounts\\service-account-goma-client.json",
+ "GYP_MSVS_VERSION": "2015"
+ },
+ "name": "generate_build_files (2)"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_PACKAGE_REPO[build]\\scripts\\tools\\runit.py",
+ "--show-path",
+ "python",
+ "RECIPE_PACKAGE_REPO[build]\\scripts\\slave\\compile.py",
+ "--gsutil-py-path",
+ "RECIPE_PACKAGE_REPO[depot_tools]\\gsutil.py",
+ "--ninja-path",
+ "RECIPE_PACKAGE_REPO[depot_tools]\\ninja.exe",
+ "--target",
+ "Release",
+ "--src-dir",
+ "[SLAVE_BUILD]\\src",
+ "--goma-cache-dir",
+ "[GOMA_CACHE]",
+ "--buildbot-buildername",
+ "Test builder",
+ "--buildbot-mastername",
+ "chromium_pgo.test",
+ "--buildbot-slavename",
+ "TestSlavename",
+ "--goma-deps-cache-file",
+ "Test_builder.gomadeps",
+ "--",
+ "chrome"
+ ],
+ "env": {
+ "GOMA_SERVICE_ACCOUNT_JSON_FILE": "C:\\creds\\service_accounts\\service-account-goma-client.json"
+ },
+ "name": "Compile: Optimization phase."
+ },
+ {
+ "name": "$result",
+ "recipe_result": null,
+ "status_code": 0
+ }
+]
\ No newline at end of file
diff --git a/scripts/slave/recipe_modules/pgo/example.py b/scripts/slave/recipe_modules/pgo/example.py
index d8a1833..c661d9c 100644
--- a/scripts/slave/recipe_modules/pgo/example.py
+++ b/scripts/slave/recipe_modules/pgo/example.py
@@ -56,3 +56,12 @@
api.platform('win', 64)
)
+ yield (
+ api.test('full_%s_%s_benchmark_failure' %
+ (_sanitize_nonalpha('chromium_pgo.test'),
+ _sanitize_nonalpha('Test builder'))) +
+ api.properties.generic(mastername='chromium_pgo.test',
+ buildername='Test builder') +
+ api.platform('win', 32) +
+ api.step_data('Telemetry benchmark: sunspider', retcode=1)
+ )
diff --git a/scripts/slave/recipe_modules/pgo/resources/run_benchmark.py b/scripts/slave/recipe_modules/pgo/resources/run_benchmark.py
new file mode 100644
index 0000000..35782f0
--- /dev/null
+++ b/scripts/slave/recipe_modules/pgo/resources/run_benchmark.py
@@ -0,0 +1,101 @@
+#!/usr/bin/env python
+# 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.
+
+"""Run a profiling benchmark for a PGO build.
+
+This wrapper script is required so we can find the path to pgosweep.exe.
+"""
+
+import json
+import optparse
+import os
+import subprocess
+import sys
+
+
+def find_pgosweep(chrome_checkout_dir, target_bits):
+ """Find the directory containing pgosweep.exe."""
+ win_toolchain_json_file = os.path.join(chrome_checkout_dir, 'build',
+ 'win_toolchain.json')
+ if not os.path.exists(win_toolchain_json_file):
+ print 'The toolchain JSON file is missing.'
+ return
+ with open(win_toolchain_json_file) as temp_f:
+ toolchain_data = json.load(temp_f)
+ if not os.path.isdir(toolchain_data['path']):
+ print 'The toolchain JSON file is invalid.'
+ return
+
+ pgo_sweep_dir = os.path.join(toolchain_data['path'], 'VC', 'bin')
+ if target_bits == 64:
+ pgo_sweep_dir = os.path.join(pgo_sweep_dir, 'amd64')
+
+ if not os.path.exists(os.path.join(pgo_sweep_dir, 'pgosweep.exe')):
+ print 'pgosweep.exe is missing from %s.' % pgo_sweep_dir
+ return
+
+ return pgo_sweep_dir
+
+
+def main():
+ parser = optparse.OptionParser(usage='%prog [options]')
+ parser.add_option(
+ '--checkout-dir', help='The Chrome checkout directory.')
+ parser.add_option(
+ '--browser-type', help='The browser type (to be passed to Telemetry\'s '
+ 'benchmark runner).')
+ parser.add_option('--target-bits', help='The target\'s bitness.', type=int)
+ parser.add_option('--benchmark', help='The benchmark to run.')
+ parser.add_option('--build-dir', help='Chrome build directory.')
+ options, _ = parser.parse_args()
+
+ if not options.checkout_dir:
+ parser.error('--checkout-dir is required')
+ if not options.browser_type:
+ parser.error('--browser-type is required')
+ if not options.target_bits:
+ parser.error('--target-bits is required')
+ if not options.benchmark:
+ parser.error('--benchmark is required')
+ if not options.build_dir:
+ parser.error('--build-dir is required')
+
+ # Starts by finding the directory containing pgosweep.exe
+ pgo_sweep_dir = find_pgosweep(options.checkout_dir, options.target_bits)
+ if not pgo_sweep_dir:
+ return 1
+
+ # Then find the run_benchmark script.
+ chrome_run_benchmark_script = os.path.join(options.checkout_dir, 'tools',
+ 'perf', 'run_benchmark')
+ if not os.path.exists(chrome_run_benchmark_script):
+ print ('Unable to find the run_benchmark script (%s doesn\'t exist) ' %
+ chrome_run_benchmark_script)
+ return 1
+
+ # Augment the PATH to make sure that the benchmarking script can find
+ # pgosweep.exe and its runtime libraries.
+ env = os.environ.copy()
+ env['PATH'] = str(os.pathsep.join([pgo_sweep_dir, options.build_dir,
+ os.environ['PATH']]))
+ env['PogoSafeMode'] = '1'
+ # Apply a scaling factor of 0.5 to the PGO profiling buffers for the 32-bit
+ # builds, without this the buffers will be too large and the process will
+ # fail to start. See crbug.com/632864#c22.
+ if options.target_bits == 32:
+ env['VCPROFILE_ALLOC_SCALE'] = '0.5'
+
+ benchmark_command = [
+ sys.executable,
+ chrome_run_benchmark_script,
+ '--browser', options.browser_type,
+ '--profiler', 'win_pgo_profiler',
+ options.benchmark
+ ]
+ return subprocess.call(benchmark_command, env=env)
+
+
+if __name__ == '__main__':
+ sys.exit(main())
diff --git a/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_PGO_Builder.json b/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_PGO_Builder.json
index 5aad9b2..f01a151 100644
--- a/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_PGO_Builder.json
+++ b/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_PGO_Builder.json
@@ -220,15 +220,433 @@
"cmd": [
"python",
"-u",
- "[SLAVE_BUILD]\\src\\build\\win\\run_pgo_profiling_benchmarks.py",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
"--browser-type",
"release",
- "--target-cpu",
- "ia32",
+ "--target-bits",
+ "32",
"--build-dir",
- "[SLAVE_BUILD]\\src\\out\\Release"
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibstyleprototype"
],
- "name": "Profiling benchmarks."
+ "name": "Telemetry benchmark: dromaeo.jslibstyleprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibeventprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibeventprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "speedometer"
+ ],
+ "name": "Telemetry benchmark: speedometer"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "smoothness.top_25_smooth"
+ ],
+ "name": "Telemetry benchmark: smoothness.top_25_smooth"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "octane"
+ ],
+ "name": "Telemetry benchmark: octane"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.svg"
+ ],
+ "name": "Telemetry benchmark: blink_perf.svg"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraverseprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraverseprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_style.top_25"
+ ],
+ "name": "Telemetry benchmark: blink_style.top_25"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoreattr"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoreattr"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.cssqueryjquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.cssqueryjquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibattrprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibattrprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "sunspider"
+ ],
+ "name": "Telemetry benchmark: sunspider"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoretraverse"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoretraverse"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoremodify"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoremodify"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.dom"
+ ],
+ "name": "Telemetry benchmark: blink_perf.dom"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "indexeddb_perf"
+ ],
+ "name": "Telemetry benchmark: indexeddb_perf"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.canvas"
+ ],
+ "name": "Telemetry benchmark: blink_perf.canvas"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcorequery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcorequery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.bindings"
+ ],
+ "name": "Telemetry benchmark: blink_perf.bindings"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraversejquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraversejquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibmodifyprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibmodifyprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "media.tough_video_cases"
+ ],
+ "name": "Telemetry benchmark: media.tough_video_cases"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.css"
+ ],
+ "name": "Telemetry benchmark: blink_perf.css"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.paint"
+ ],
+ "name": "Telemetry benchmark: blink_perf.paint"
},
{
"cmd": [
diff --git a/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_x64_PGO_Builder.json b/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_x64_PGO_Builder.json
index 5b7645e..64fd2cc 100644
--- a/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_x64_PGO_Builder.json
+++ b/scripts/slave/recipes/chromium_pgo.expected/full_chromium_fyi_Chromium_Win_x64_PGO_Builder.json
@@ -220,15 +220,433 @@
"cmd": [
"python",
"-u",
- "[SLAVE_BUILD]\\src\\build\\win\\run_pgo_profiling_benchmarks.py",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
"--browser-type",
"release_x64",
- "--target-cpu",
- "x64",
+ "--target-bits",
+ "64",
"--build-dir",
- "[SLAVE_BUILD]\\src\\out\\Release_x64"
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.jslibstyleprototype"
],
- "name": "Profiling benchmarks."
+ "name": "Telemetry benchmark: dromaeo.jslibstyleprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.jslibeventprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibeventprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "speedometer"
+ ],
+ "name": "Telemetry benchmark: speedometer"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "smoothness.top_25_smooth"
+ ],
+ "name": "Telemetry benchmark: smoothness.top_25_smooth"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "octane"
+ ],
+ "name": "Telemetry benchmark: octane"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "blink_perf.svg"
+ ],
+ "name": "Telemetry benchmark: blink_perf.svg"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.jslibtraverseprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraverseprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "blink_style.top_25"
+ ],
+ "name": "Telemetry benchmark: blink_style.top_25"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.domcoreattr"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoreattr"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.cssqueryjquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.cssqueryjquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.jslibattrprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibattrprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "sunspider"
+ ],
+ "name": "Telemetry benchmark: sunspider"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.domcoretraverse"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoretraverse"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.domcoremodify"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoremodify"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "blink_perf.dom"
+ ],
+ "name": "Telemetry benchmark: blink_perf.dom"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "indexeddb_perf"
+ ],
+ "name": "Telemetry benchmark: indexeddb_perf"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "blink_perf.canvas"
+ ],
+ "name": "Telemetry benchmark: blink_perf.canvas"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.domcorequery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcorequery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "blink_perf.bindings"
+ ],
+ "name": "Telemetry benchmark: blink_perf.bindings"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.jslibtraversejquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraversejquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "dromaeo.jslibmodifyprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibmodifyprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "media.tough_video_cases"
+ ],
+ "name": "Telemetry benchmark: media.tough_video_cases"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "blink_perf.css"
+ ],
+ "name": "Telemetry benchmark: blink_perf.css"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release_x64",
+ "--target-bits",
+ "64",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release_x64",
+ "--benchmark",
+ "blink_perf.paint"
+ ],
+ "name": "Telemetry benchmark: blink_perf.paint"
},
{
"cmd": [
diff --git a/scripts/slave/recipes/chromium_pgo.expected/full_tryserver_chromium_win_win_pgo.json b/scripts/slave/recipes/chromium_pgo.expected/full_tryserver_chromium_win_win_pgo.json
index 67f261c..95cab3e 100644
--- a/scripts/slave/recipes/chromium_pgo.expected/full_tryserver_chromium_win_win_pgo.json
+++ b/scripts/slave/recipes/chromium_pgo.expected/full_tryserver_chromium_win_win_pgo.json
@@ -228,15 +228,433 @@
"cmd": [
"python",
"-u",
- "[SLAVE_BUILD]\\src\\build\\win\\run_pgo_profiling_benchmarks.py",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
"--browser-type",
"release",
- "--target-cpu",
- "ia32",
+ "--target-bits",
+ "32",
"--build-dir",
- "[SLAVE_BUILD]\\src\\out\\Release"
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibstyleprototype"
],
- "name": "Profiling benchmarks."
+ "name": "Telemetry benchmark: dromaeo.jslibstyleprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibeventprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibeventprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "speedometer"
+ ],
+ "name": "Telemetry benchmark: speedometer"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "smoothness.top_25_smooth"
+ ],
+ "name": "Telemetry benchmark: smoothness.top_25_smooth"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "octane"
+ ],
+ "name": "Telemetry benchmark: octane"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.svg"
+ ],
+ "name": "Telemetry benchmark: blink_perf.svg"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraverseprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraverseprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_style.top_25"
+ ],
+ "name": "Telemetry benchmark: blink_style.top_25"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoreattr"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoreattr"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.cssqueryjquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.cssqueryjquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibattrprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibattrprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "sunspider"
+ ],
+ "name": "Telemetry benchmark: sunspider"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoretraverse"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoretraverse"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcoremodify"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcoremodify"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.dom"
+ ],
+ "name": "Telemetry benchmark: blink_perf.dom"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "indexeddb_perf"
+ ],
+ "name": "Telemetry benchmark: indexeddb_perf"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.canvas"
+ ],
+ "name": "Telemetry benchmark: blink_perf.canvas"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.domcorequery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.domcorequery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.bindings"
+ ],
+ "name": "Telemetry benchmark: blink_perf.bindings"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibtraversejquery"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibtraversejquery"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "dromaeo.jslibmodifyprototype"
+ ],
+ "name": "Telemetry benchmark: dromaeo.jslibmodifyprototype"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "media.tough_video_cases"
+ ],
+ "name": "Telemetry benchmark: media.tough_video_cases"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.css"
+ ],
+ "name": "Telemetry benchmark: blink_perf.css"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[build::pgo]\\resources\\run_benchmark.py",
+ "--checkout-dir",
+ "[SLAVE_BUILD]\\src",
+ "--browser-type",
+ "release",
+ "--target-bits",
+ "32",
+ "--build-dir",
+ "[SLAVE_BUILD]\\src\\out\\Release",
+ "--benchmark",
+ "blink_perf.paint"
+ ],
+ "name": "Telemetry benchmark: blink_perf.paint"
},
{
"cmd": [