[skottie-wasm-perf] Add GPU bot

* Picked a GPU bot with 200+% capacity.
* Uses git from CIPD because some bots do not have git installed.
* Uses npm from node asset because some bots do not have npm installed.

NoTry: true
Bug: skia:9179
Change-Id: I75af7cd9f96b040481dcea85d65f95b29c11e3f7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221616
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
This commit is contained in:
Ravi Mistry 2019-06-19 13:12:50 +00:00 committed by Skia Commit-Bot
parent d5fad8cc18
commit 5d7f61b6a0
6 changed files with 276 additions and 3 deletions

View File

@ -1264,6 +1264,7 @@ func perf(b *specs.TasksCfgBuilder, name string, parts map[string]string, compil
} else if strings.Contains(parts["extra_config"], "SkottieWASM") {
task.CipdPackages = append(task.CipdPackages, b.MustGetCipdPackageFromAsset("node"))
task.CipdPackages = append(task.CipdPackages, b.MustGetCipdPackageFromAsset("lottie-samples"))
task.CipdPackages = append(task.CipdPackages, CIPD_PKGS_GIT...)
} else if strings.Contains(parts["extra_config"], "Skottie") {
task.CipdPackages = append(task.CipdPackages, b.MustGetCipdPackageFromAsset("lottie-samples"))
}

View File

@ -271,6 +271,7 @@
"Perf-Debian9-EMCC-GCE-CPU-AVX2-wasm-Release-All-PathKit",
"Perf-Debian9-EMCC-GCE-CPU-AVX2-wasm-Release-All-SkottieWASM",
"Perf-Debian9-EMCC-GCE-GPU-AVX2-wasm-Release-All-CanvasKit",
"Perf-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM",
"Perf-Debian9-GCC-GCE-CPU-AVX2-x86-Debug-All",
"Perf-Debian9-GCC-GCE-CPU-AVX2-x86_64-Debug-All",
"Perf-Mac10.13-Clang-MacBook10.1-GPU-IntelHD615-x86_64-Debug-All",

View File

@ -99,6 +99,11 @@
"install"
],
"cwd": "[START_DIR]/cache/work/skia/tools/skottie-wasm-perf",
"env_prefixes": {
"PATH": [
"[START_DIR]/node/node/bin"
]
},
"name": "npm install"
},
{

View File

@ -101,6 +101,11 @@
"install"
],
"cwd": "[START_DIR]/cache/work/skia/tools/skottie-wasm-perf",
"env_prefixes": {
"PATH": [
"[START_DIR]/node/node/bin"
]
},
"name": "npm install"
},
{

View File

@ -36,8 +36,8 @@ def RunSteps(api):
api.checkout.bot_update(checkout_root=checkout_root)
# Install prerequisites.
env = {}
with api.context(cwd=skottie_wasm_perf_dir, env=env):
env_prefixes = {'PATH': [api.path['start_dir'].join('node', 'node', 'bin')]}
with api.context(cwd=skottie_wasm_perf_dir, env_prefixes=env_prefixes):
api.step('npm install', cmd=['npm', 'install'])
canvaskit_js_path = api.vars.build_dir.join('canvaskit.js')
@ -55,7 +55,7 @@ def RunSteps(api):
if not lottie_filename.endswith('.json'):
continue
output_file = output_dir.join(lottie_filename)
with api.context(cwd=skottie_wasm_perf_dir, env=env):
with api.context(cwd=skottie_wasm_perf_dir):
api.step('Run skottie-wasm-perf.js', cmd=[
node_path, skottie_wasm_js_path,
'--input', lottie_file,

View File

@ -1372,6 +1372,11 @@
"Upload-Perf-Debian9-EMCC-GCE-GPU-AVX2-wasm-Release-All-CanvasKit"
]
},
"Perf-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM": {
"tasks": [
"Upload-Perf-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM"
]
},
"Perf-Debian9-GCC-GCE-CPU-AVX2-x86-Debug-All": {
"tasks": [
"Perf-Debian9-GCC-GCE-CPU-AVX2-x86-Debug-All"
@ -34894,6 +34899,21 @@
"name": "skia/bots/lottie-samples",
"path": "lottie-samples",
"version": "version:1"
},
{
"name": "infra/git/${platform}",
"path": "cipd_bin_packages",
"version": "version:2.17.1.chromium15"
},
{
"name": "infra/tools/git/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:c9c8a52bfeaf8bc00ece22fdfd447822c8fcad77"
},
{
"name": "infra/tools/luci/git-credential-luci/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:2c805f1c716f6c5ad2126b27ec88b8585a09481e"
}
],
"command": [
@ -35068,6 +35088,147 @@
"perf"
]
},
"Perf-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM": {
"caches": [
{
"name": "vpython",
"path": "cache/vpython"
}
],
"cipd_packages": [
{
"name": "infra/tools/luci/kitchen/${platform}",
"path": ".",
"version": "git_revision:d8f38ca9494b5af249942631f9cee45927f6b4bc"
},
{
"name": "infra/tools/luci-auth/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:2c805f1c716f6c5ad2126b27ec88b8585a09481e"
},
{
"name": "infra/tools/luci/vpython/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:96f81e737868d43124b4661cf1c325296ca04944"
},
{
"name": "skia/bots/skimage",
"path": "skimage",
"version": "version:39"
},
{
"name": "skia/bots/skp",
"path": "skp",
"version": "version:191"
},
{
"name": "skia/bots/svg",
"path": "svg",
"version": "version:9"
},
{
"name": "skia/bots/mesa_intel_driver_linux",
"path": "mesa_intel_driver_linux",
"version": "version:5"
},
{
"name": "skia/bots/node",
"path": "node",
"version": "version:1"
},
{
"name": "skia/bots/lottie-samples",
"path": "lottie-samples",
"version": "version:1"
},
{
"name": "infra/git/${platform}",
"path": "cipd_bin_packages",
"version": "version:2.17.1.chromium15"
},
{
"name": "infra/tools/git/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:c9c8a52bfeaf8bc00ece22fdfd447822c8fcad77"
},
{
"name": "infra/tools/luci/git-credential-luci/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:2c805f1c716f6c5ad2126b27ec88b8585a09481e"
}
],
"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",
"perf_skottie_wasm",
"-properties",
"{\"$kitchen\":{\"devshell\":true,\"git_auth\":true},\"buildbucket_build_id\":\"<(BUILDBUCKET_BUILD_ID)\",\"buildername\":\"Perf-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM\",\"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\",\"task_id\":\"<(TASK_ID)\"}",
"-logdog-annotation-url",
"logdog://logs.chromium.org/skia/<(TASK_ID)/+/annotations"
],
"dependencies": [
"Housekeeper-PerCommit-BundleRecipes",
"Build-Debian9-EMCC-wasm-Release-CanvasKit"
],
"dimensions": [
"gpu:8086:5926",
"os:Debian-9.4",
"pool:Skia"
],
"env_prefixes": {
"PATH": [
"cipd_bin_packages",
"cipd_bin_packages/bin"
],
"VPYTHON_VIRTUALENV_ROOT": [
"cache/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": "perf_skia_bundled.isolate",
"max_attempts": 2,
"outputs": [
"perf"
]
},
"Perf-Debian9-GCC-GCE-CPU-AVX2-x86-Debug-All": {
"caches": [
{
@ -88381,6 +88542,106 @@
"max_attempts": 2,
"service_account": "skia-external-nano-uploader@skia-swarming-bots.iam.gserviceaccount.com"
},
"Upload-Perf-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM": {
"caches": [
{
"name": "vpython",
"path": "cache/vpython"
}
],
"cipd_packages": [
{
"name": "infra/tools/luci/kitchen/${platform}",
"path": ".",
"version": "git_revision:d8f38ca9494b5af249942631f9cee45927f6b4bc"
},
{
"name": "infra/tools/luci-auth/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:2c805f1c716f6c5ad2126b27ec88b8585a09481e"
},
{
"name": "infra/tools/luci/vpython/${platform}",
"path": "cipd_bin_packages",
"version": "git_revision:96f81e737868d43124b4661cf1c325296ca04944"
},
{
"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-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM\",\"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\",\"task_id\":\"<(TASK_ID)\"}",
"-logdog-annotation-url",
"logdog://logs.chromium.org/skia/<(TASK_ID)/+/annotations"
],
"dependencies": [
"Housekeeper-PerCommit-BundleRecipes",
"Perf-Debian9-EMCC-NUC7i5BNK-GPU-IntelIris640-wasm-Release-All-SkottieWASM"
],
"dimensions": [
"cpu:x86-64-Haswell_GCE",
"gpu:none",
"machine_type:n1-highmem-2",
"os:Debian-9.8",
"pool:Skia"
],
"env_prefixes": {
"PATH": [
"cipd_bin_packages",
"cipd_bin_packages/bin"
],
"VPYTHON_VIRTUALENV_ROOT": [
"cache/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",
"max_attempts": 2,
"service_account": "skia-external-nano-uploader@skia-swarming-bots.iam.gserviceaccount.com"
},
"Upload-Perf-Mac10.13-Clang-MacBook10.1-GPU-IntelHD615-x86_64-Release-All": {
"caches": [
{