Bug: skia:8560
Change-Id: I9287d8286a49d067c14a4cc560220c08d3c0c040
Reviewed-on: https://skia-review.googlesource.com/c/172865
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Now that we've got Flutter builds I'm not very interested in the old
-Mini bot, which was always a proxy for something like Flutter's build.
The NoDEPS bot shouldn't have to disable effects, I think.
Change-Id: I57abca5935b7da3917eb804cda10967af0a18f41
Reviewed-on: https://skia-review.googlesource.com/c/169221
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
We currently have only one bot for these jobs, so we should treat them
as experimental for now.
Bug: 837351
Change-Id: I1ea9f1bf1635c36895eede80df6709509a85df90
Reviewed-on: https://skia-review.googlesource.com/c/168489
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
The bloaty here was compiled with this patch:
https://github.com/google/bloaty/pull/149
Hopefully that lands upstream and we can track master again.
This adds BuildStats.+Debug because we need symbols
to get sensical data. Bloaty's WASM support is experimental
and currently doesn't support having a stripped (Release)
version be profiled using the symbols of a Debug version.
This means that the buildStats for debug will be higher
than actual, but hopefully the absolute positioning will be
the same and thus the outputs useful.
Bug: skia:
Change-Id: Id7bf721843e8c52a0aae2b7e57ff95397693b3dd
Reviewed-on: https://skia-review.googlesource.com/c/163256
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Of note, the perf results reported are not directly
comparable CPU->GPU because the GPU ones are likely
emulated (no real gpu in the Docker container on an
GCE VM).
Bug: skia:
Change-Id: I52259085f4d9e22c45b67f3e8ce1211a5c6c6d3e
Reviewed-on: https://skia-review.googlesource.com/c/163126
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Also make a CPU only and GPU only build (although
the latter still has a lot of CPU logic).
Bug: skia:
Change-Id: I857c2300021c2adb5344865c28e4ad3e8d332954
Reviewed-on: https://skia-review.googlesource.com/c/162022
Reviewed-by: Kevin Lubick <kjlubick@google.com>
We have a similar ingestion strategy to Gold.
I tried to use something off the shelf like benchmark.js
but passing the PathKit context into the benchmarks was
non-trivial. Plus, making a basic benchmarking tool
ended up being not too hard.
We should be able to re-use the docker container/aggregator
for CanvasKit too.
Bug: skia:
Change-Id: I613dfc58ea57c31cf71566a8ac55f8df9272ad25
Reviewed-on: https://skia-review.googlesource.com/c/161620
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
This creates a nice readable display, since Bloaty
doesn't allow filtering through the CLI.
Additionally, rename the flutter job to accurately
represent what settings it actually is (32 bit ARM built
with clang).
Bug: skia:
Change-Id: Iaed313caf43a31105adc8c85c545cc6cb2bcbe30
Reviewed-on: https://skia-review.googlesource.com/c/160920
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Bug: skia:
Change-Id: Ibb47179315d191af5023039212e4c9b5e784bb75
Reviewed-on: https://skia-review.googlesource.com/c/160765
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Building CanvasKit uses very similar logic to PathKit, so there
was a fair amount of copy/paste/customize.
Fixes the name of skia.js/wasm -> canvaskit.js/wasm and
adds a package.json to formally track versions.
Also move PathKit helper scripts to align better.
Docs-Preview: https://skia.org/?cl=160463
Bug: skia:
Change-Id: Ie75b30592dcc4d520dca41f6f5579006aaa8849b
Reviewed-on: https://skia-review.googlesource.com/c/160463
Reviewed-by: Eric Boren <borenet@google.com>
Uses Docker to compile an APK and then run it on an emulator.
We use a specialized image for build (includes Clang, etc)
And then the 3rd party base image for just the test (which
has the emulator and SDK on it).
Bug: skia:7578, skia:7692
Change-Id: I948e0b091868e7173b00e3affd7c3d59a5cd1ec2
Reviewed-on: https://skia-review.googlesource.com/c/159681
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
This should be extensible to do something similar
for libskia and other outputs.
Bug: skia:
Change-Id: Id9f30a82f4eb0e7ce868a32409b1be429917e7f6
Reviewed-on: https://skia-review.googlesource.com/c/160220
Reviewed-by: Eric Boren <borenet@google.com>
The go_deps asset is almost two months old...
Bug: skia:
Change-Id: I3910d1812a3c8ec4b599e959b76f8d60202b877a
Reviewed-on: https://skia-review.googlesource.com/157425
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Change-Id: Ifcd32b5cf4000c34567a7643dc294d39611d9f42
Reviewed-on: https://skia-review.googlesource.com/155780
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
After discussing with bsalomon, we think QuadroP400 gives us good enough
coverage for NVIDIA Pascal.
No-Try: true
Change-Id: If50a80d872ae9dc2c5987b3e31804a8e16325888
Reviewed-on: https://skia-review.googlesource.com/150908
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Change-Id: Ifc0b0ad39d9a35625691b3fb12e6e6c65166d760
Reviewed-on: https://skia-review.googlesource.com/150903
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Add "PowerVR" to GT7600, GT7800, and GX6450 (iOS jobs).
Add model number G6430 to NexusPlayer.
Change-Id: Id0beb9e25ac793378fcd353836a43b2ea9db1aef
Reviewed-on: https://skia-review.googlesource.com/148668
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
The Braswell (IntelHD405) bots are way over-capacity. The Perf Debug
jobs are responsible for about half of the bot time.
We don't upload any data from Perf Debug jobs, so the only point of
running them is to catch asserts. It seems unlikely that the Braswell
bots would be the only ones to assert, since we also have Sandy Bridge,
Bay Trail, and Kaby Lake bots running the same configs.
No-Try: true
Change-Id: Id71086aade9f143d76fe80c03e41f7f9b52e911b
Reviewed-on: https://skia-review.googlesource.com/148675
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This is a followup to
https://skia-review.googlesource.com/c/skia/+/145431
Also clean up old job names in recipe expectations.
No-Try: true
Change-Id: Ic63a64a98fb39076680941bb2415b7bb64415179
Reviewed-on: https://skia-review.googlesource.com/148671
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Consolidates the karma files into one for docker/asmjs/wasm and all
combinations.
The asm.js build seems to have some small imprecisions that we didn't
see as much as with WASM, probably due to JS limitations/differences
to c++'s floats.
To address these, I've marked some (5) tests in PathOps* as flaky
because they fail on Release, Debug or Test versions of the asm.js build.
Other then that, asm.js seems basically identical to the WASM.
WASM is much smaller, 416k vs 877k and seems to load faster (not
measured).
Note to reviewers:
example.html was copied from npm-wasm version, so doesn't need
further review.
Bug: skia:8216
Change-Id: Ib92b90fa6c598de85a0be319d46b25693ae5aaa4
Reviewed-on: https://skia-review.googlesource.com/148396
Reviewed-by: Stephan Altmueller <stephana@google.com>
From robertphillips:
- not many Android devices use PowerVR chips
- the NexusPlayer is not getting P
- We're also ignoring the NexusPlayer vk gold result bc the driver
doesn't seem to be clearing the color buffer so almost all the
images are incorrect.
Bug: skia:7021 skia:6132 skia:7191 skia:7244 skia:7018 skia:7837 skia:8166
Change-Id: I2a1e9748deeee7f9cab6294b961783182ed5351e
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/148667
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Move all CPU configs except 8888 to new BonusConfigs bots
(and keep them running on the *SAN bots), and turn on the
new rec2020 configs there too.
Change-Id: I0bba4b88c580cb627e2842f136318d98373c0543
Reviewed-on: https://skia-review.googlesource.com/147813
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Because of https://skia-review.googlesource.com/c/skia/+/146165 and
https://skia-review.googlesource.com/c/skia/+/146100 we have a way
to turn PathOps tests into JSON, which has input paths (as Cmd arrays),
combination verb and expected output.
In this CL, we make tests from the JSON, compare them to the expected
output and, optionally, create SVGs to visualize the difference if any.
API changes (nothing breaking on release builds):
- Exposes SkRect as a JS Object. No need to call delete() on this.
- expose path.getBounds() and path.computeTightBounds()
- Remove SkRegion exposure (debug/test only), which was going to be
used for this purpose, but the approach in this CL works fine.
- Add loadCmdsTypedArray(cmd) helper function to JS [see helper.js].
This was previously known as `floatTypedArrayFrom2D` in the
old shell.html, and is now exposed to avoid clients having to
implement this boilerplate by themselves.
- Add set/getFillType - mostly for testing the difference between
a Winding and an EvenOdd path.
Bug: skia:8216
Change-Id: I2cd25ce2e1e7f285c79c596678678e62135963f0
Reviewed-on: https://skia-review.googlesource.com/146524
Reviewed-by: Cary Clark <caryclark@google.com>
This adds a few JS tests (see *.spec.test) and runs them
using Karma and a Docker image containing Karma, node, and
Chrome (currently at 68).
We only add a Debug Test here because the Release version
has some test helpers (e.g. Region) compiled out. If those
end up not mattering for tests, we can add in a Release version.
Bug: skia:8216
Change-Id: Ica6ab3a4f21688cfa175a90d42c2254d38e8fcf1
Reviewed-on: https://skia-review.googlesource.com/145723
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:8185
Change-Id: Id40f288515169a378926d6042cc76a976cdf7513
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/145892
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:8081
Change-Id: Ibcb82389668bd9ea7395e498696417d5701761c0
Reviewed-on: https://skia-review.googlesource.com/140782
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
I'm keeping the Release jobs for a few commits for blame.
There are a few reasons for this change:
- This will free up more Mac VMs for Build jobs.
- The CPU jobs currently run on VMs, which don't provide reliable perf
numbers.
- The two bare-metal MacMini7.1 bots (currently running the GPU TSAN
jobs) are over-capacity.
- Lets us test AVX2 rather than AVX.
I used the MacBookPro11.5 for all of these, but we could spread them
out to other Mac bots if it's too much load for these bots.
No-Try: true
Change-Id: I8c97e194c4f3e0018e7e646b93c3d96db8d0ca82
Reviewed-on: https://skia-review.googlesource.com/145431
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
This contains the Go code dependencies of our infra repo and will be
used to insulate us from upstream changes which break us due to API
changes, etc.
Bug: skia:
Change-Id: I6ce36a4e41b6d7686fe2598ba980640854cd4f11
Reviewed-on: https://skia-review.googlesource.com/145158
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
This adds a job to build it and adds it to the npm
under /bin/debug.
The debug build is useful for clients because it
has all the debug symbols, which makes it possible to
see which WASM calls are taking the longest when using
DevTools' Performance testing.
Bug: skia:8216
Change-Id: I3068cb395f29c1de927508cf15c419f5af284eb7
Reviewed-on: https://skia-review.googlesource.com/145337
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
This creates a new named cache docker for this and future
docker-based jobs to use, to avoid permission snafus with
the normal "work" named cache.
Remove old WASM build, which was using the janky CIPD
emsdk asset and wasn't really exercising what we needed.
Bug: skia:8216
Change-Id: I993bba38b4978ca5eebb97e5b5b21729d55a072d
Reviewed-on: https://skia-review.googlesource.com/145140
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Bug: skia:8185
Change-Id: Idef6ed3d0e886cb89b91e65a3253991136b94186
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/144126
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
It is unused, is becoming a maintainence burden and source of bugs,
and takes up a lot of time on the *SAN bots.
Change-Id: If383eb6e4838ca23140f9e16d518b1bfc655fa12
Reviewed-on: https://skia-review.googlesource.com/143307
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Currently the test bot is set up with a whitelist that only runs one test.
Bug: skia:
Change-Id: Ief6a978a527cf581929cafe0f4cd002c35b24235
Reviewed-on: https://skia-review.googlesource.com/143107
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
All Golo devices except 2 are AWOL. We added 6 to the Skolo, but they
can't keep up.
This CL moves the following jobs off Nexus5x:
- All ASAN jobs to Pixel. Most other devices we have can't be rooted,
so they can't run ASAN.
- Vulkan NoGPUThreads arm64 jobs to NVIDIA_Shield. Of the devices that
support Vulkan, this has the most available capacity.
- I removed the arm32 Vulkan NoGPUThreads jobs because it seems a
bit esoteric.
- Also removed arm32 Vulkan Debug Perf because I can't imagine it
would ever give us info that arm64 doesn't already provide. (We
ignore Perf data from Debug builds.)
- Other arm32 Vulkan jobs stayed on Nexus5x because we don't have
any other Vulkan-capable devices with spare capacity.
- Most arm32 jobs to MotoG4 and de-duplicated. This device has an
ARMv8 processor but runs everything in arm32 mode, which is exactly
what these jobs are trying to test. We have a bunch of MotoG4s in
the Skolo; however, they don't support Vulkan or ASAN.
- NoGPUThreads and NativeFonts arm64 jobs to GalaxyS6. There are only
6 in the Skolo, but for some reason these devices are particularly
fast. They also don't support Vulkan or ASAN.
- Currently GalaxyS6 CPU arm64 jobs fail, possibly due to OOM. I
will try to move those jobs in a future CL.
Sorted jobs.json.
Change-Id: If02584a9c04906f4b9c31b4ba3f1da0289a5b8a9
Reviewed-on: https://skia-review.googlesource.com/141281
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
While we're on the topic of CPU bots whose performance I don't care much
about, Perf-Debian9-GCC-GCE-CPU-AVX2-x86_64-Release-All is another.
Once again, we've got Clang bots covering this configuration.
Change-Id: Ia96f28f8adaf675ec7cf63320e001641054e23cb
Reviewed-on: https://skia-review.googlesource.com/140574
Auto-Submit: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
I'm not super interested in CPU perf numbers when compiled by MSVC.
We've got existing bots that cover the same with Clang.
Change-Id: I23cdb91d50bda12a82578c5ddb78cde2fab80c9a
Reviewed-on: https://skia-review.googlesource.com/140568
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
Add NEO driver to opencl_linux asset.
Bug: skia:8081
Change-Id: Ic36c670f3cabd73119845e94fcb2f54525e83443
Reviewed-on: https://skia-review.googlesource.com/138264
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Bug: skia:8081
Change-Id: I8b2a88cc25970398511aa078d456ca8a1182792b
Reviewed-on: https://skia-review.googlesource.com/136594
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
I don't think we're using the Galaxy S6 for any other reason than we had
a bunch of them. If we can test more stably on another device, I think
it's fine to move.
Change-Id: I9d30f6d64d299074ea30442e50d6cb07d66018b1
Reviewed-on: https://skia-review.googlesource.com/138260
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
We updated them to use Clang a while ago but forgot to rename the bots.
Change-Id: I01c353b48d5aff7a30d63d382bdf6bdfb3e0b196
Reviewed-on: https://skia-review.googlesource.com/137887
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>