Change-Id: I00a00e62dfb2021a2c380ef4217c1acec1f07672
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/303258
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@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>
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>
This makes batch texture ops consistent with singleton texture ops, and
images drawn through a texture producer.
Bug: chromium:1102578
Change-Id: I490b20940ef6f1899396b786369271ce7130e8a9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/301540
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
This should fix the Test.+LottieWeb jobs (which live in
the lottie-ci repo) by including the lottie folder which
is brought in via DEPS and gclient sync.
Change-Id: Iffcd333e4113d95cfa2c9d92bc87aec527cb3f8c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300637
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Change-Id: I2498bd8fd41c5ffa47e3b58a74044c0a8784a666
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300638
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This reverts commit 1caf3789f8.
Makes the image GMs detect an abandoned context just like the surface
GMs.
Bug: skia:10431
Change-Id: I56a3631a75e6b0383f96a73f461cfa314ee29afa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299379
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
This reverts commit 7ac9b5fdb6.
Reason for revert: abandon context bots breaking
Original change's description:
> Add async rescale and read APIs to SkImage.
>
> These function the same as the already existing
> SkSurface APIs.
>
> Bug: skia:10431
>
> Change-Id: I4f1e842d8d4b72ee27bae5f8a85e499e130d420c
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299281
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
TBR=egdaniel@google.com,bsalomon@google.com,brianosman@google.com
Change-Id: I351795274245fc9f553cd210d82178f497f22660
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10431
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299376
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@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>
These function the same as the already existing
SkSurface APIs.
Bug: skia:10431
Change-Id: I4f1e842d8d4b72ee27bae5f8a85e499e130d420c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299281
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Test now passes.
Change-Id: Iddc4cf3c34655fcc5b25ff3e168f9d637ea3079e
Bug: skia:9123
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/298747
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Bug: skia:9935
Change-Id: Ibbe25c629988f134b02f337c333a9cfc5c75a7a1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/298677
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
With recent fixes many of these tests can be re-enabled, and one is
failing on both GPUs now.
Bug: skia:9935
Change-Id: I75b2b0802a73e326998846285b343e9d3d6980af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/298411
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This is a reland of 4e37751693
Original change's description:
> Make it easier to test rectangle textures by using createBackendTexture.
>
> Also allows internal creation of rectangle textures, only used by unit
> tests currently.
>
> Previously GrContext::createBackendTexture() would ignore the request
> for RECTANGLE or EXTERNAL and always make 2D. Now it makes RECTANGLE if
> supported and always fails for EXTERNAL.
>
> Change-Id: Iafbb3f5acddb37bfb8d39740f2590177a07dae78
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/297472
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
Change-Id: Ibf6921c97278c9f0f71c46883cfbaa04f229affa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/297865
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@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>
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>
This is a variation of the 'strict_constraint_batch_no_red_allowed' test
that renders using 'experimental_DrawEdgeAAImageSet' instead of
'drawImageRect'.
In practice this GM shows slightly different errors compared to the
original strict test.
Change-Id: Ibdd3f80d99a49529205bdb9462103a637c51cef3
Bug: skia:10277, skia:10278
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/291462
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
This should make triaging easier since it should be more obvious whether
red pixels or just (filtered) black/white checkerboard is acceptable.
And make that plainly obvious in the GM name.
Change-Id: Ie56dd518f43f01bf6d671eddffcf41c06a039f02
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290639
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Bug: skia:10247
Change-Id: I127509e8370f84e4fc40003232a93bb079e85576
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289630
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
It appears https://skia-review.googlesource.com/c/skia/+/288262 uncovered a driver bug.
Change-Id: I6aa27b68510c1b01fc140d0ff991e11bca6e6d86
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288905
Commit-Queue: Weston Tracey <westont@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Weston Tracey <westont@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
These are flaky on the Quadro bots, leading to errors in the cache
configs (that expect pixel-perfect replays).
Bug: skia:8534
Change-Id: I1ac06f5abbb13955951be9c9a8aad18fe1f00aa6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287382
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
The previous settings used the ddl-via - which doesn't use threads as effectively.
Change-Id: I82a0632d99c772421afc645f53bb749420275460
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285812
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Robert Phillips <robertphillips@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: 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>
This reverts commit 73b86c1ade.
Reason for revert: wasn't the problem, relanding
Original change's description:
> Revert "Rename GrShape to GrStyledShape"
>
> This reverts commit f3f08af010.
>
> Reason for revert: maybe this is breaking the ios perf bot; it is the first CL that caused the bot to fail, but I can't really say why this would break them.
>
> Original change's description:
> > Rename GrShape to GrStyledShape
> >
> > Change-Id: Ic457e634b4b95356f5615cff3fce1ca7d7677c26
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284036
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
>
> TBR=bsalomon@google.com,robertphillips@google.com,michaelludwig@google.com
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Change-Id: I2e5adbfc820811fbbde9cb57af28f86a7ba40bd9
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284231
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
TBR=bsalomon@google.com,robertphillips@google.com,michaelludwig@google.com
Change-Id: Ifdd52f8bacb5d66a7bf58efd328675c4c443ac8a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284376
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
This reverts commit f3f08af010.
Reason for revert: maybe this is breaking the ios perf bot; it is the first CL that caused the bot to fail, but I can't really say why this would break them.
Original change's description:
> Rename GrShape to GrStyledShape
>
> Change-Id: Ic457e634b4b95356f5615cff3fce1ca7d7677c26
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284036
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
TBR=bsalomon@google.com,robertphillips@google.com,michaelludwig@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I2e5adbfc820811fbbde9cb57af28f86a7ba40bd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284231
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Bug: skia:10149
Change-Id: Ia9b0bf2ed2042ba75088409612f6b091c5052ea9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284220
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Change-Id: Ic457e634b4b95356f5615cff3fce1ca7d7677c26
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284036
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@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>
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>
-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>
Bug: skia:10096
Change-Id: I7c5a004b2bee76d7b3d262734b8cce32d1b5a098
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/280818
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Like the Programs test, these fail randomly.
Bug: skia:9814
Change-Id: I4f3b6f2fc07db2cdc9ac580c224560bba4162788
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/279616
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>