This loads in the known digests from Gold, starts the test
harness (which runs the GMs using puppeteer) and then uses
goldctl to upload the results to Gold when finished.
This will fail (and should not be landed) until
https://skia-review.googlesource.com/c/buildbot/+/328156
makes it into goldctl and the cipd build.
Bug: skia:10812
Change-Id: I89e5cf188d8f2adeba4ff676525d9bfbdcb46d5a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/328380
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Next step is to add the following task:
Test-Ubuntu18-EMCC-Golo-GPU-QuadroP400-wasm-Release-All-WasmGMTests_WebGL2
Bug: skia:10812
Change-Id: Ibe45b7205cebd30f0e7904ea6d93a01ea3df87fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/324617
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Compilation of Metal shaders on 10.13 is unstable and keeps crashing
the bots.
Change-Id: If4e707b80a6ca20f989b504b5bab33c8b2dcaac6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/320297
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Weston Tracey <westont@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
This is too slow at the moment to run on the CQ (~50 minutes), but
metzman@ is planning on caching a bulk of the work needed before
we can compile the fuzzers.
Bug: skia:10713
Change-Id: I664b8afbdb9fa57a4bce3aa479ffce3c70b684ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/317283
Reviewed-by: Eric Boren <borenet@google.com>
Also adds GalaxyS20 to the mix, which wasn't running skpbench
previously.
Also removes the skpbench logic to fail if we don't recognize the
hardware or have specific scripts for it. We don't have time to reverse
engineer every new piece of hardware we want to run on and the general
android script is quite helpful already.
Bug: skia:10419
Change-Id: I0e139cdd4bc2e7ca0e2e14c715d319664fa8c949
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/319143
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
It has been largely superseded by the SkottieFrames varient.
The GPU version is still important because the Puppeteer
tracing gives us insights we don't yet get with SkottieFrames.
Furthermore, it is timing out for reasons unknown.
Change-Id: Ibdf2b5308e026e93502a597404b3d1214a9e6598
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/315276
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Change-Id: Icc731852d3b9efdec70c649cfcc4b5c9a47bc584
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/312492
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
This reverts commit 07438b0cda.
Bug: skia:10369
Bug: skia:10371
This will allow Skia clients developing for Android 11+ to rely on
Android's NDK APIs for decoding, which will allow them to decode
without including their own decoding libraries (e.g. libjpeg-turbo).
Using these APIs also provides support for static HEIF images.
Run ImageGenSrc in kPlatform_Mode on Android to verify decoding
visually.
Add tests and a grayscale png.
Update some test bots running Android R to specify ndk_api so they will
run the new code.
Change-Id: I4ca07d832dbd6a9d8cff0faea975fd70da00718f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/308185
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
This reverts commit cfef980939.
Reason for revert: Breaking Google3 roll
Original change's description:
> Add an SkImageGenerator that uses NDK APIs
>
> Bug: skia:10369
> Bug: skia:10371
>
> This will allow Skia clients developing for Android 11+ to rely on
> Android's NDK APIs for decoding, which will allow them to decode
> without including their own decoding libraries (e.g. libjpeg-turbo).
> Using these APIs also provides support for static HEIF images.
>
> Run ImageGenSrc in kPlatform_Mode on Android to verify decoding
> visually.
>
> Add tests and a grayscale png.
>
> Update some test bots running Android R to specify ndk_api so they will
> run the new code.
>
> Change-Id: Ica782339b2414d472ede0b61729a127ce41892a5
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305689
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Leon Scroggins <scroggo@google.com>
TBR=djsollen@google.com,mtklein@google.com,scroggo@google.com,brianosman@google.com,reed@google.com
Change-Id: Ifed506a76a0ff5903d101c1bf7330d319b8376a6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10369
Bug: skia:10371
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/308180
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Bug: skia:10369
Bug: skia:10371
This will allow Skia clients developing for Android 11+ to rely on
Android's NDK APIs for decoding, which will allow them to decode
without including their own decoding libraries (e.g. libjpeg-turbo).
Using these APIs also provides support for static HEIF images.
Run ImageGenSrc in kPlatform_Mode on Android to verify decoding
visually.
Add tests and a grayscale png.
Update some test bots running Android R to specify ndk_api so they will
run the new code.
Change-Id: Ica782339b2414d472ede0b61729a127ce41892a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305689
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Bug: skia:10553
Change-Id: I2fd1d5c309b88b0c9e3ce26392ede9fcd2aa6fba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306853
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Bug: chromium:1109705
Change-Id: Ic306ff9a6300e55e841cabde724f192b22be731e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306840
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Bug: skia:10554
Change-Id: I27650520a5fbda0d391b597533dde14ec2bb32a7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306600
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
13.6 requires xcode >11.4.1, which requires MacOS > 10.15.2.
Use new Mac10.15.5 build jobs for iPhone11 tasks, and on those
jobs use chromium's mac_toolchain to compile with xcode 11.4.1.
Change-Id: I988197d7ba4c97b9facfe8b93f87878eba806de8
Cq-Do-Not-Cancel-Tryjobs: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300198
Commit-Queue: Weston Tracey <westont@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Bug: skia:10477
Change-Id: Ibf9bcb1d03a6003d00b124db8d826c7952842fef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300780
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:10371
Change-Id: Iab54b8ae6764b41a010bd81c750d8285869ee58a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/303020
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Adds new builder name schema for "Canary-*".
Bug: skia:10477
Change-Id: I0906c6e2df0af405ae3a2138b0fdeb99a9375853
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300700
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:10371
Change-Id: I3e5c8b34b7b80fff492de11ec769b33e2be3671c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/302577
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
These force SkVM blitters on Windows,
which has always been possible but now
tests the SkVM JIT too.
Change-Id: I11e8a8e2953873f2e4fee6644b6016104a0d2b8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299881
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
on Pixel 4s.
Change-Id: I89a241d75499aad2832a8570901654a2deb2b8cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299873
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Auto-Submit: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Bug: skia: 10349
Change-Id: Id5fdd24749e836806a91b6c40c2abb18f2889e44
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/298414
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
These test the *ooprddl configs
Change-Id: I1eaee1ceaef95ab37ddbefa4a15350cb726a2c02
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/296728
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Bug: skia:9935
Change-Id: I52c7819e8a2899f6fe3e1a1f6551e84ac8c8d60a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295784
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
For each skp in the corpus, we start a fresh instance of
Chromium (via puppeteer), draw the skp and measure that time.
This process is repeated a fixed amount of repetitions
and the median, the average, and the std deviation is reported
to perf (as well as the individual datapoints as an FYI).
Importantly (and something we'll need to change about
SkottieFrames), we measure the average time between frames
after unlocking the framerate. This ensures we account for
the time needed by the GPU to actually draw (flush() returns
after the GPU has all the instructions, but not necessarily
has been able to draw).
This implementation is very similar to the SkottieFrames
code; a notable deviation is the repetitions are handled
outside of the html, i.e. a new chrome window per run.
I explored using content_shell, but noticed that requires
building Chromium, which our infrastructure is not set up
to do well.
Change-Id: I14fdbdc951604d3fdf06e81a4be7e614d0e53c03
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295079
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This reverts commit ad9ac9ae51.
Reason for revert: we _do_ build with -march=skylake.
Original change's description:
> remove -Fast bots
>
> I tried to think of how to structure things so the normal bots
> and the -Fast bots would all get fast, small builds. There're
> a couple ways to do it, but they're all kind of fragile.
>
> Then I remembered no one we know of ships Skia like the -Fast bots;
> I just put them up out of curiosity, and as a performance baseline.
>
> So, simplest thing to do is just toss them.
>
> Change-Id: Id93994695c7612f41c9259aa328f6cf4cfe0f2a8
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295311
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
TBR=mtklein@google.com,bungeman@google.com
Change-Id: Ibaddb616152a9cb03e7a28978478770888d2726a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295500
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
I tried to think of how to structure things so the normal bots
and the -Fast bots would all get fast, small builds. There're
a couple ways to do it, but they're all kind of fragile.
Then I remembered no one we know of ships Skia like the -Fast bots;
I just put them up out of curiosity, and as a performance baseline.
So, simplest thing to do is just toss them.
Change-Id: Id93994695c7612f41c9259aa328f6cf4cfe0f2a8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295311
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Actually duplicate the jobs for now, in a week I'll remove the 4's
if the Perf numbers look comparable.
Bug: skia:10349
Change-Id: Ibbd7af3680b971f18f6a593bb92e57f9e663a5a0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295007
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:10269
Change-Id: Id89fdeee92c23a2e207e7995a2e82d2cdac2365a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/292236
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
We don't have any way to test these, and we do have to
go a little out of our way to maintain these builds.
Change-Id: Ie191ee26753b719f6ee22264d63fbe4252e69bd5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290840
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
- add back recently removed jobs
- cp /vendor/lib64/egl/libGLES_mali.so to /data/local/tmp/libvulkan.so
- use LD_LIBRARY_PATH to prefer libs in /data/local/tmp
Bug: skia:10184
Change-Id: I52524819c60abab1334c04530a7b13f0519db463
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289636
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Bug: skia:10184
Change-Id: I6fd13b8ca36be6b84c816aa4978ec0bf31b399ae
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288910
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
IMPORTANT LESSON: when bringing in node (and possibly other
executables) via CIPD, add them to the path in gen_tasks_logic
so the parent executable (the task driver itself) has the right
PATH set. Otherwise, the subprocesses it spawns might grab the
wrong version because of how golang handles environments of
subprocesses.
This is starting as a fork of Skottie WASM. I hope to have a more unified
system for creating and running benchmarks.
Overall overview:
gen_tasks_logic.go creates a task in task.json that compiles
CanvasKit and the task drivers and then executes our task
(i.e. perf_puppeteer.go)
perf_puppeteer runs a node program (perf-with-puppeteer.js)
that uses puppeteer to execute benchmarking code on an
html page (canvaskit-skottie-frames-load.html).
I needed to update the node package so npm could be updated from
3.x to 6.14.4 so it knew about `npm ci`. This may not have been
entirely necessary, given the problems of executing the correct
npm (see important lesson above), but it hasn't broken things
further, so more up-to-date is probably a good thing.
Suggested Review Order:
- canvaskit-skottie-frames-load.html (note it is similar to
skottie-wasm-perf.html, but it waits for a button click
to start animating and records times from the main JS thread
itself)
- perf-with-puppeteer.js (similar to skottie-wasm-perf.js, but
has some things made optional [e.g. tracing])
- perf_puppeteer_test.go (shows the inputs/outputs of various steps)
- perf_puppeteer.go
- Everything else.
Change-Id: I380e81b825f36682c257664d488267edaf36369e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285783
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
PS 6 trying StartStep/EndStep/FailStep()
PS 7 better usage?
PS 8 goes back to td.Fatal* for top-level failures
Failures seem to be working ok as of PS 8,
but I am puzzled why PS 7 wasn't correct... much prefer it.
Also set max_attempts to 1... this driver will handle flakiness itself.
Change-Id: I7de6809920bfaf1d878d654c9cf5b7861a64d23f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286118
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Change-Id: I7907c440a30f9f85830ac770340f09d77d76faee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285787
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Change-Id: I0f8972b62c938389772872adea2c96acc29ca503
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285665
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Change-Id: I2a668f207101906a7216cbcec302d3c4514af872
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285381
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Use a Debian9 container because the build scripts for Flutter Android require jdk8, which isn't available on Debian10.
-Shell script executes the GN and Ninja commands
-flutter.py executes the script in Debian9 container
--the Flutter build is particular about directory structure and uses various relative paths, so the entire swarming directory is mounted.
-Followup CL will update remove the old Flutter Android job and update the BuildStats job.
Bug: skia:9438
Change-Id: I60c62425f21214b4ae6a810a787418a8975d204e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282616
Commit-Queue: Weston Tracey <westont@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
-Make generated build tasks for Pixelbook use Debian9...Docker and rename those in jobs.json
---Non-Pixelbook ChromeOS build tasks now use regular Debian10, as they seem to handle it fine.
---Removed 2 Build-Debian9-Clang-arm-.*-Chromebook_GLES jobs, since they are now unused.
-Added docker logic to chromebook.py, refactored to handle the differing directory structure (TODO to simplify)
---Added docker-chromeos-compile.sh to run in the container.
---util function to convert to string that can be used in the python or passed to bash (cribbed from docker.py, will consolidate in later CL)
-Prerequisite for upgrading the last 10% of the fleet to Debian10
Bug: skia:9438
Change-Id: I0727aad2d00383e568ddbeea98d56d42bcca26e5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282678
Commit-Queue: Weston Tracey <westont@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
We lost some coverage here when the Shields died.
We've had the ASAN Test jobs, which is good, but there are
a few code paths that go differently when run under ASAN,
particularly the SkVM JIT.
Change-Id: Ia120e55f16ddd4cd12d8bd78d62a53c7542fec13
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282318
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
The bot times out after ~13 hours now, so let's try 16 shards.
Change-Id: I26e350a2e9d1875d01c65f921212277031c92ca3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282296
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
debian10 ones seem mostly ok,
and the "debian9" bots were running on debian 10 anyway.
still may need to follow up to see what's up with the Vk bot.
Change-Id: I558a8cfeb0a66bc691f4494b6c7899916d79b1d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282134
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Control everything with gSkUseSkVMBlitter, and that via --skvm flags.
We aren't skipping sprite blitters on the bots because
they're using the #define instead of the --skvm flag.
Might as well go all-in on the runtime flag now that
we have it... no need for the custom build jobs.
Change-Id: I56e5b1a72fecfc505aee5a26de6ee58666880922
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282124
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
With the debian10 twins failing,
coverage on these bots could slip.
Change-Id: I43b458b6e370f276db1007f17df7b83ddf0ed723
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282119
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
-Rename all Debian9 jobs to Debian10
-Update GCE and Skolo OS names in gen_tasks to Debian10
-Begin using newly minted Debian10 Mesa drivers (for NUC7i5BNK-GPU-IntelIris640 machines)
-Followup CLs will bring remaining branches' tasks (and CQ) up to Debian10, likely once it has been deployed to 90% of the fleet.
-CQ sibling CL https://skia-review.googlesource.com/c/skia/+/281876
TBR: borenet@google.com
Bug: skia:9438
Change-Id: I917e93c2659b29f0bee7041e5a65c641642142a0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/281397
Reviewed-by: Weston Tracey <westont@google.com>