Add DDL skpbench bot for just DDL recording time
Change-Id: If75799bfd719ccc47c2064571723e6852c07bfaa Reviewed-on: https://skia-review.googlesource.com/131144 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Eric Boren <borenet@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
This commit is contained in:
parent
774168efac
commit
65eb4fba7e
@ -331,7 +331,7 @@ func deriveCompileTaskName(jobName string, parts map[string]string) string {
|
||||
ec := []string{}
|
||||
if val := parts["extra_config"]; val != "" {
|
||||
ec = strings.Split(val, "_")
|
||||
ignore := []string{"Skpbench", "AbandonGpuContext", "PreAbandonGpuContext", "Valgrind", "ReleaseAndAbandonGpuContext", "CCPR", "FSAA", "FAAA", "FDAA", "NativeFonts", "GDI", "NoGPUThreads", "ProcDump", "DDL1", "DDL3", "T8888", "DDLTotal", "9x9"}
|
||||
ignore := []string{"Skpbench", "AbandonGpuContext", "PreAbandonGpuContext", "Valgrind", "ReleaseAndAbandonGpuContext", "CCPR", "FSAA", "FAAA", "FDAA", "NativeFonts", "GDI", "NoGPUThreads", "ProcDump", "DDL1", "DDL3", "T8888", "DDLTotal", "DDLRecord", "9x9"}
|
||||
keep := make([]string, 0, len(ec))
|
||||
for _, part := range ec {
|
||||
if !util.In(part, ignore) {
|
||||
|
@ -257,6 +257,7 @@
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan",
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench",
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLTotal_9x9",
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9",
|
||||
"Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All",
|
||||
"Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE",
|
||||
"Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Release-All",
|
||||
|
@ -0,0 +1,157 @@
|
||||
[
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
||||
"--json-output",
|
||||
"/path/to/tmp/json",
|
||||
"ensure-directory",
|
||||
"--mode",
|
||||
"0777",
|
||||
"[START_DIR]/tmp"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "makedirs tmp_dir"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
||||
"--json-output",
|
||||
"/path/to/tmp/json",
|
||||
"copy",
|
||||
"[START_DIR]/skia/infra/bots/assets/skp/VERSION",
|
||||
"/path/to/tmp/"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "Get skp VERSION"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
||||
"--json-output",
|
||||
"/path/to/tmp/json",
|
||||
"copy",
|
||||
"42",
|
||||
"[START_DIR]/tmp/SKP_VERSION"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "write SKP_VERSION"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
||||
"--json-output",
|
||||
"/path/to/tmp/json",
|
||||
"ensure-directory",
|
||||
"--mode",
|
||||
"0777",
|
||||
"[START_DIR]/[SWARM_OUT_DIR]/perfdata/Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9/data"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "makedirs perf_dir"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"[START_DIR]/skia/tools/skpbench/skpbench.py",
|
||||
"[START_DIR]/build/out/Release_x64/skpbench",
|
||||
"--resultsfile",
|
||||
"[START_DIR]/[SWARM_OUT_DIR]/table",
|
||||
"--config",
|
||||
"vk",
|
||||
"-v5",
|
||||
"--ddl",
|
||||
"--ddlRecord",
|
||||
"--ddlNumAdditionalThreads",
|
||||
"9",
|
||||
"--ddlTilingWidthHeight",
|
||||
"3",
|
||||
"[START_DIR]/skp"
|
||||
],
|
||||
"env": {
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
|
||||
},
|
||||
"name": "skpbench"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n"
|
||||
],
|
||||
"name": "get swarming bot id",
|
||||
"stdout": "/path/to/tmp/",
|
||||
"~followup_annotations": [
|
||||
"@@@STEP_LOG_LINE@python.inline@import os@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@",
|
||||
"@@@STEP_LOG_END@python.inline@@@"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n"
|
||||
],
|
||||
"name": "get swarming task id",
|
||||
"stdout": "/path/to/tmp/",
|
||||
"~followup_annotations": [
|
||||
"@@@STEP_LOG_LINE@python.inline@import os@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@",
|
||||
"@@@STEP_LOG_END@python.inline@@@"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"[START_DIR]/skia/tools/skpbench/skiaperf.py",
|
||||
"[START_DIR]/[SWARM_OUT_DIR]/table",
|
||||
"--properties",
|
||||
"gitHash",
|
||||
"abc123",
|
||||
"swarming_bot_id",
|
||||
"skia-bot-123",
|
||||
"swarming_task_id",
|
||||
"123456",
|
||||
"--outfile",
|
||||
"[START_DIR]/[SWARM_OUT_DIR]/perfdata/Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9/data/skpbench_abc123_1337000001.json",
|
||||
"--key",
|
||||
"arch",
|
||||
"x86_64",
|
||||
"compiler",
|
||||
"Clang",
|
||||
"cpu_or_gpu",
|
||||
"GPU",
|
||||
"cpu_or_gpu_value",
|
||||
"QuadroP400",
|
||||
"extra_config",
|
||||
"Vulkan_Skpbench_DDLRecord_9x9",
|
||||
"model",
|
||||
"Golo",
|
||||
"os",
|
||||
"Win10",
|
||||
"test_filter",
|
||||
"All"
|
||||
],
|
||||
"env": {
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
|
||||
},
|
||||
"name": "Parse skpbench output into Perf json"
|
||||
},
|
||||
{
|
||||
"name": "$result",
|
||||
"recipe_result": null,
|
||||
"status_code": 0
|
||||
}
|
||||
]
|
@ -60,9 +60,13 @@ def skpbench_steps(api):
|
||||
'--config', config,
|
||||
# TODO(dogben): Track down what's causing bots to die.
|
||||
'-v5']
|
||||
if 'DDLTotal_9x9' in api.vars.builder_name:
|
||||
if 'DDL' in api.vars.builder_name:
|
||||
# This adds the "--ddl" flag for both DDLTotal and DDLRecord
|
||||
skpbench_args += ['--ddl']
|
||||
if 'DDLRecord' in api.vars.builder_name:
|
||||
skpbench_args += ['--ddlRecord']
|
||||
if '9x9' in api.vars.builder_name:
|
||||
skpbench_args += [
|
||||
'--ddl',
|
||||
'--ddlNumAdditionalThreads', 9,
|
||||
'--ddlTilingWidthHeight', 3]
|
||||
if 'Android' in api.vars.builder_name:
|
||||
@ -140,6 +144,8 @@ TEST_BUILDERS = [
|
||||
'Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench',
|
||||
('Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-'
|
||||
'Vulkan_Skpbench_DDLTotal_9x9'),
|
||||
('Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-'
|
||||
'Vulkan_Skpbench_DDLRecord_9x9'),
|
||||
]
|
||||
|
||||
|
||||
|
@ -1554,6 +1554,12 @@
|
||||
"Upload-Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench"
|
||||
]
|
||||
},
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9": {
|
||||
"priority": 0.8,
|
||||
"tasks": [
|
||||
"Upload-Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9"
|
||||
]
|
||||
},
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLTotal_9x9": {
|
||||
"priority": 0.8,
|
||||
"tasks": [
|
||||
@ -33108,6 +33114,104 @@
|
||||
],
|
||||
"priority": 0.8
|
||||
},
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9": {
|
||||
"caches": [
|
||||
{
|
||||
"name": "vpython",
|
||||
"path": "cache/vpython"
|
||||
}
|
||||
],
|
||||
"cipd_packages": [
|
||||
{
|
||||
"name": "infra/tools/luci/kitchen/${platform}",
|
||||
"path": ".",
|
||||
"version": "git_revision:206b4474cb712bdad8b7b3f213880cfbf03f120c"
|
||||
},
|
||||
{
|
||||
"name": "infra/tools/authutil/${platform}",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "git_revision:9c63809842a277ce10a86afd51b61c639a665d11"
|
||||
},
|
||||
{
|
||||
"name": "infra/tools/luci/vpython/${platform}",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "git_revision:d0130097bd6364a8d834cb9efd4554c1f6192c82"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
"./kitchen${EXECUTABLE_SUFFIX}",
|
||||
"cook",
|
||||
"-checkout-dir",
|
||||
"recipe_bundle",
|
||||
"-mode",
|
||||
"swarming",
|
||||
"-luci-system-account",
|
||||
"system",
|
||||
"-cache-dir",
|
||||
"cache",
|
||||
"-temp-dir",
|
||||
"tmp",
|
||||
"-known-gerrit-host",
|
||||
"android.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"boringssl.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"chromium.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"dart.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"fuchsia.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"go.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"llvm.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"skia.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"webrtc.googlesource.com",
|
||||
"-output-result-json",
|
||||
"${ISOLATED_OUTDIR}/build_result_filename",
|
||||
"-workdir",
|
||||
".",
|
||||
"-recipe",
|
||||
"skpbench",
|
||||
"-properties",
|
||||
"{\"$kitchen\":{\"devshell\":true,\"git_auth\":true},\"buildbucket_build_id\":\"<(BUILDBUCKET_BUILD_ID)\",\"buildername\":\"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9\",\"patch_issue\":\"<(ISSUE)\",\"patch_ref\":\"<(PATCH_REF)\",\"patch_repo\":\"<(PATCH_REPO)\",\"patch_set\":\"<(PATCHSET)\",\"patch_storage\":\"<(PATCH_STORAGE)\",\"repository\":\"<(REPO)\",\"revision\":\"<(REVISION)\",\"swarm_out_dir\":\"perf\"}",
|
||||
"-logdog-annotation-url",
|
||||
"logdog://logs.chromium.org/skia/<(TASK_ID)/+/annotations"
|
||||
],
|
||||
"dependencies": [
|
||||
"Housekeeper-PerCommit-BundleRecipes",
|
||||
"Build-Win-Clang-x86_64-Release-Vulkan",
|
||||
"Housekeeper-PerCommit-IsolateSKP"
|
||||
],
|
||||
"dimensions": [
|
||||
"gpu:10de:1cb3-23.21.13.9103",
|
||||
"os:Windows-10-16299.309",
|
||||
"pool:Skia"
|
||||
],
|
||||
"env_prefixes": {
|
||||
"PATH": [
|
||||
"cipd_bin_packages",
|
||||
"cipd_bin_packages/bin"
|
||||
],
|
||||
"VPYTHON_VIRTUALENV_ROOT": [
|
||||
"${cache_dir}/vpython"
|
||||
]
|
||||
},
|
||||
"execution_timeout_ns": 14400000000000,
|
||||
"expiration_ns": 72000000000000,
|
||||
"extra_tags": {
|
||||
"log_location": "logdog://logs.chromium.org/skia/<(TASK_ID)/+/annotations"
|
||||
},
|
||||
"io_timeout_ns": 14400000000000,
|
||||
"isolate": "skpbench_skia_bundled.isolate",
|
||||
"max_attempts": 1,
|
||||
"outputs": [
|
||||
"perf"
|
||||
],
|
||||
"priority": 0.8
|
||||
},
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLTotal_9x9": {
|
||||
"caches": [
|
||||
{
|
||||
@ -78006,6 +78110,106 @@
|
||||
"priority": 0.8,
|
||||
"service_account": "skia-external-nano-uploader@skia-swarming-bots.iam.gserviceaccount.com"
|
||||
},
|
||||
"Upload-Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9": {
|
||||
"caches": [
|
||||
{
|
||||
"name": "vpython",
|
||||
"path": "cache/vpython"
|
||||
}
|
||||
],
|
||||
"cipd_packages": [
|
||||
{
|
||||
"name": "infra/tools/luci/kitchen/${platform}",
|
||||
"path": ".",
|
||||
"version": "git_revision:206b4474cb712bdad8b7b3f213880cfbf03f120c"
|
||||
},
|
||||
{
|
||||
"name": "infra/tools/authutil/${platform}",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "git_revision:9c63809842a277ce10a86afd51b61c639a665d11"
|
||||
},
|
||||
{
|
||||
"name": "infra/tools/luci/vpython/${platform}",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "git_revision:d0130097bd6364a8d834cb9efd4554c1f6192c82"
|
||||
},
|
||||
{
|
||||
"name": "infra/gsutil",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "version:4.28"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
"./kitchen${EXECUTABLE_SUFFIX}",
|
||||
"cook",
|
||||
"-checkout-dir",
|
||||
"recipe_bundle",
|
||||
"-mode",
|
||||
"swarming",
|
||||
"-luci-system-account",
|
||||
"system",
|
||||
"-cache-dir",
|
||||
"cache",
|
||||
"-temp-dir",
|
||||
"tmp",
|
||||
"-known-gerrit-host",
|
||||
"android.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"boringssl.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"chromium.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"dart.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"fuchsia.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"go.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"llvm.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"skia.googlesource.com",
|
||||
"-known-gerrit-host",
|
||||
"webrtc.googlesource.com",
|
||||
"-output-result-json",
|
||||
"${ISOLATED_OUTDIR}/build_result_filename",
|
||||
"-workdir",
|
||||
".",
|
||||
"-recipe",
|
||||
"upload_nano_results",
|
||||
"-properties",
|
||||
"{\"$kitchen\":{\"devshell\":true,\"git_auth\":true},\"buildbucket_build_id\":\"<(BUILDBUCKET_BUILD_ID)\",\"buildername\":\"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9\",\"gs_bucket\":\"skia-perf\",\"patch_issue\":\"<(ISSUE)\",\"patch_ref\":\"<(PATCH_REF)\",\"patch_repo\":\"<(PATCH_REPO)\",\"patch_set\":\"<(PATCHSET)\",\"patch_storage\":\"<(PATCH_STORAGE)\",\"repository\":\"<(REPO)\",\"revision\":\"<(REVISION)\",\"swarm_out_dir\":\"output_ignored\"}",
|
||||
"-logdog-annotation-url",
|
||||
"logdog://logs.chromium.org/skia/<(TASK_ID)/+/annotations"
|
||||
],
|
||||
"dependencies": [
|
||||
"Housekeeper-PerCommit-BundleRecipes",
|
||||
"Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLRecord_9x9"
|
||||
],
|
||||
"dimensions": [
|
||||
"cpu:x86-64-Haswell_GCE",
|
||||
"gpu:none",
|
||||
"machine_type:n1-highmem-2",
|
||||
"os:Debian-9.4",
|
||||
"pool:Skia"
|
||||
],
|
||||
"env_prefixes": {
|
||||
"PATH": [
|
||||
"cipd_bin_packages",
|
||||
"cipd_bin_packages/bin"
|
||||
],
|
||||
"VPYTHON_VIRTUALENV_ROOT": [
|
||||
"${cache_dir}/vpython"
|
||||
]
|
||||
},
|
||||
"execution_timeout_ns": 3600000000000,
|
||||
"extra_tags": {
|
||||
"log_location": "logdog://logs.chromium.org/skia/<(TASK_ID)/+/annotations"
|
||||
},
|
||||
"io_timeout_ns": 3600000000000,
|
||||
"isolate": "swarm_recipe.isolate",
|
||||
"priority": 0.8,
|
||||
"service_account": "skia-external-nano-uploader@skia-swarming-bots.iam.gserviceaccount.com"
|
||||
},
|
||||
"Upload-Perf-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-Vulkan_Skpbench_DDLTotal_9x9": {
|
||||
"caches": [
|
||||
{
|
||||
|
@ -51,6 +51,7 @@
|
||||
DEFINE_bool(ddl, false, "record the skp into DDLs before rendering");
|
||||
DEFINE_int32(ddlNumAdditionalThreads, 0, "number of DDL recording threads in addition to main one");
|
||||
DEFINE_int32(ddlTilingWidthHeight, 0, "number of tiles along one edge when in DDL mode");
|
||||
DEFINE_bool(ddlRecordTime, false, "report just the cpu time spent recording DDLs");
|
||||
|
||||
DEFINE_int32(duration, 5000, "number of milliseconds to run the benchmark");
|
||||
DEFINE_int32(sampleMs, 50, "minimum duration of a sample");
|
||||
@ -117,9 +118,11 @@ static void ddl_sample(GrContext* context, DDLTileHelper* tiles, GpuSync* gpuSyn
|
||||
|
||||
tiles->createDDLsInParallel();
|
||||
|
||||
tiles->drawAllTilesAndFlush(context, true);
|
||||
if (gpuSync) {
|
||||
gpuSync->syncToPreviousFrame();
|
||||
if (!FLAGS_ddlRecordTime) {
|
||||
tiles->drawAllTilesAndFlush(context, true);
|
||||
if (gpuSync) {
|
||||
gpuSync->syncToPreviousFrame();
|
||||
}
|
||||
}
|
||||
|
||||
*startStopTime = clock::now();
|
||||
|
@ -73,6 +73,8 @@ __argparse.add_argument('--ddlNumAdditionalThreads',
|
||||
help="number of DDL recording threads in addition to main one")
|
||||
__argparse.add_argument('--ddlTilingWidthHeight',
|
||||
type=int, default=0, help="number of tiles along one edge when in DDL mode")
|
||||
__argparse.add_argument('--ddlRecordTime',
|
||||
action='store_true', help="report just the cpu time spent recording DDLs")
|
||||
__argparse.add_argument('skps',
|
||||
nargs='+',
|
||||
help=".skp files or directories to expand for .skp files")
|
||||
@ -136,6 +138,8 @@ class SKPBench:
|
||||
str(FLAGS.ddlNumAdditionalThreads)])
|
||||
if FLAGS.ddlTilingWidthHeight:
|
||||
ARGV.extend(['--ddlTilingWidthHeight', str(FLAGS.ddlTilingWidthHeight)])
|
||||
if FLAGS.ddlRecordTime:
|
||||
ARGV.extend(['--ddlRecordTime', 'true'])
|
||||
|
||||
if FLAGS.adb:
|
||||
if FLAGS.device_serial is None:
|
||||
|
Loading…
Reference in New Issue
Block a user